Se citeste un vector cu n elemente intregi. Sa se ordoneze crescator prima jumatate a vectorului si descrescator cealalta jumatate.
Răspunsuri la întrebare
Răspuns de
8
// Nu ai specificat daca lungimea vectorului este para sau impara. In mod normal daca spui jumatatea vectorului am considerat ca n este par si am considerat jumatatea lui k = n / 2. Succes!
#include <iostream>
using namespace std;
int n,k,v[1005],aux,i;
bool ok;
int main()
{
cin >> n;
k = n / 2;
for(i=1;i<=n;i++) cin>>v[i];
do
{
ok=true;
for(i=1;i<k;i++)
if(v[i]>v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
do
{
ok=true;
for(i=k+1;i<n;i++)
if(v[i]<v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
for(i=1;i<=n;i++) cout<<v[i]<<" ";
return 0;
}
#include <iostream>
using namespace std;
int n,k,v[1005],aux,i;
bool ok;
int main()
{
cin >> n;
k = n / 2;
for(i=1;i<=n;i++) cin>>v[i];
do
{
ok=true;
for(i=1;i<k;i++)
if(v[i]>v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
do
{
ok=true;
for(i=k+1;i<n;i++)
if(v[i]<v[i+1])
{
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
ok=false;
}
} while (!ok);
for(i=1;i<=n;i++) cout<<v[i]<<" ";
return 0;
}
Qubicon:
O poți face, te rog, la un nivel mai scăzut?
Alte întrebări interesante
Geografie,
8 ani în urmă
Ed. muzicală,
8 ani în urmă
Biologie,
8 ani în urmă
Istorie,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă