Informatică, întrebare adresată de cosriad54, 8 ani în urmă

Se citeste un vector v cu n elemente intregi.
- Faceti ordonarea crescatoare a elementelor de pe pozitii pare (i=0,2,4..).
Afisati vectorul ordonat.
- Faceti ordonarea descrescatoare a elementelor impare, cele pare raman pe pozitiile
initiale.
- Sa se verifice daca in v elementele sunt ordonate crescator. Afisati da sau nu.

Răspunsuri la întrebare

Răspuns de razvan989878
1

Sper ca ti am fost de ajutor , nu ezita sa intrebi unde nu intelegi

Explicație:

#include <iostream>

using namespace std;

int par(int n,int v[101]) ///ordonarea crescatoare a elementelor de pe pozitii pare

{int i,j;

for(i=0;i<n-1;i+=2)

   for(j=i+2;j<n;j+=2)

     if(v[i]<v[j])

       swap(v[i],v[j]);

for(i=0;i<n;i++)

    cout<<v[i]<<" ";

}

int imp(int n,int v[101]) ///ordonarea descrescatoare a elementelor impare

{

   int i,j;

       for(i=0;i<n-1;i++)

             for(j=i+1;j<n;j++)

                  if(v[i]%2!=0 && v[j]%2!=0 && v[i]<v[j])

                      swap(v[j],v[i]);

             for(i=0;i<n;i++)

              cout<<v[i]<<" ";

}

int crs(int n,int v[101]) /// verificare daca in v elementele sunt ordonate crescator

{

   int i,ok=0;

   for(i=0;i<n-1;i++)

       if(v[i+1]<v[i])

       ok=1;

   if(ok==0)

       cout<<"DA";

   else

       cout<<"NU";

}

int main() /// aici le am testat pe rand sa vad daca functioneaza , mai sus ti am facut cate un subprogram pentru fiecare cerinta

{

int n,v[101],i;

cin>>n;

for(i=0;i<n;i++)

   cin>>v[i];

    par(n,v);

   imp(n,v);

   crs(n,v);

    return 0;

}

Alte întrebări interesante