ВН
Виктория Наезжая

Объясните пожалуйста программу C++

Дан целочисленный одномерный массив из n элементов (1<=n<=100). Задание: Не нарушая порядка следования, расположить в начале массива все четные числа, а затем - нечетные
#include
#include
void main( )
{
int a[100];
int n;
int i,j;
int k;
cout<< "n? ";
cin>> n;
cout<<"a:"< for (i=0; i cin>>a[i];
for (j=1; j for (i=0; i if (a[i]%2==1)
{k=a[i];
a[i]=a[i+1];
a[i+1]=k; }
for (i=0;i<=n-1; i++)
cout < getch();
}
Если есть ошибки, помогите исправить, пожалуйста

Юлия Семёнова
Юлия Семёнова

ну введу я в
cin>> n;
100 или аж 1010101.

и хряпнется
for (i=0; i < n; i++)cin >>a[ i];
на вылете за пределы массива.

(сам алгоритм копать вообще страшно - вроде бы попытка применить нечто типа метода пузырька, но настолько кривая и не относящаяся к делу. что ужасть. и вспоминается недавнее аналогичное на паскале)) )

Ольга
Ольга

А что компилятора нету? Скомпонуйте и проверьте правильно ли работает или нет.

Фа
Фарид

И порядок следования нарушился. Простая замена не годится.
Нада начиная с конца перебирать элементы, если чётный - ставим в начало, и сдвигаем элементы на одно место. Как-то так.

Похожие вопросы
скомпилируйте пожалуйста 3 программы на "C"
Объясните пожалуйста код программы
Помогите с программой в C или C++. Полную программу пожалуйста.
ПОЖАЛУЙСТА напишите программу на C + +
Программа в C или C++
Программа на C#, помогите пожалуйста
Напишите программу на C# пожалуйста:
объясните пожалуйста эту программу на С# 2
объясните пожалуйста. объясните пожалуйста как пользоваться программой Synthesia?
Объясните пожалуйста как работает эта программа c# Не пойму после Console.WriteLine