Se citesc de la tastatura 2 numere naturale n și k apoi n numere naturale. Să se afișeze primele k
elemente în ordine crescătoare, iar ultimele n-k elemente în ordine descrescătoare (Indicație:
ordonați crescător primele k elemente, adică aplicați algoritmul de sortare de la 1 la k si apoi
ordonați descrescător ultimele n-k elemente, adică aplicați algoritmul de sortare de la k+1 la n)
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
{
int n,i,k;
cout<<"n=";
cin>>n;
cout<<"k=";
cin>>k;
int a[n];
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
int aux,sortat;
do
{
sortat=1;
for(i=0;i<k;i++)
if(a[i]>a[i+1])
{
aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
sortat=0;
}
}while(!sortat);
do
{
sortat=1;
for(i=k;i<n-1;i++)
if(a[i]<a[i+1])
{
aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
sortat=0;
}
}while(!sortat);
for(i=0;i<n;i++)
cout<<a[i]<<" ";
return 0;
}
Explicație:
Multumesc+5 stele+cel mai inteligent raspuns?
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Fizică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă