Informatică, întrebare adresată de andreiciopec69oyfpui, 9 ani în urmă

Sa se sorteze doar elementele impare dintr-un vector, in ordine crescatoare...
ex: n=6 x=(7,11,2-8,-3,10) programul va afisa (-3,7,2,-8,11,10)
REPEDE VA ROG!!!!

Răspunsuri la întrebare

Răspuns de S0unds
1
#include <iostream>
using namespace std;

int main()
{
int x[100],n,poz[100],k=0,aux[100];
int a;
cin>>n;
for(int i=0;i<n;i++)
cin>>x[i];
for(int i=0;i<n;i++)
{
if(x[i]%2!=0)
{
aux[k]=x[i];
poz[k]=i;
k++;
}
}
for(int t=0;t<k;t++)
for(int i=0;i<k;i++)
if(aux[i]>aux[i+1]&&i+1<k)
{
a=aux[i];
aux[i]=aux[i+1];
aux[i+1]=a;
}
for(int i=0;i<k;i++)
x[poz[i]]=aux[i];
for(int i=0;i<n;i++)
cout<<x[i]<<' ';
}
Alte întrebări interesante