ГН
Гаврила Навозный

Подскажите пожалуйста, в чем проблема? НЕ правильно вьіводит. C++

Условие: вьівести нечетньіе числа (по 10 в строке в виде столбцов) , отсортировать по убьіванию.
Проблема вот в чем - вьіводить начинает с нечетного елемента так, что самого первого нет (Пример 3 7 6 9 8 -1, вьіводит 7 3 -1) и еще одно - не всегда вьіводит по 10 чисел в строку, иногда бьівает что по 5-6 чисел и перескакивает на новую и продолжает вьівод.

#include "stdafx.h"

#include "conio.h"

#include

#include "stdio.h"

#include "math.h"

using namespace std;

void sort_insert(int a[], int n);

int _tmain(int argc, _TCHAR* argv[])

{

int i;

int a[50] = { 0 }, n;

i = 0;

cout << "Vvedite massiv:\n";

cin >> a[0];

do

{

i++;

cin >> a[i];

} while (a[i] != 0);

cout << endl;

n = i;

for (i = 0; i
printf("%d ", a[i]);

cout << endl;

cout << "Sort masiva\n";

sort_insert(a, n);

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

if ((a[i] % 2) != 0) // отсеиваем чётные числа

{

if (i == 0)

cout << a[i] << " ";

else if (a[i] == a[i - 1])

{

for (int j = i; j
a[j] = a[j + 1];

n--; i--;

}

else {

cout << a[i];

if (i<10 && i % 9 == 0 || i % 10 == 9 || i == n - 1)

cout << '\n';

else cout << " ";

}

}

_getche();

return 0;

}

void sort_insert(int a[], int n)

{

int i, j, x;

for (i = 0; i
{

x = a[i]; j = i;

while (x>a[j - 1])

{

a[j] = a[j - 1]; j = j - 1;

if (j >= 0)continue;

}

a[j] = x;

}

}

AV
Anton V. Merkulov

0. В #include-ах в кавычки берутся файлы из проекта, в <> - из общей библиотеки. У тебя - смесь.
1. Не смешивай cout и printf, это некультурно. Используй что-то одно.
2. Проблема в сортировке, причем не одна: нигде не проверяется, что a[j-1] попадает в массив, кроме того, оператор continue переходит на начало цикла, пропуская ту часть тела цикла, которая идет после него - а после continue у тебя ничего нет, т. е. он бессмысленный. Надо так:

while (j>= 1 && x>a[j - 1])
{
a[j] = a[j - 1];

j--;
}

3. Вообще очень много лишних движений, но ты не привел полностью задание, и сложно сказать, нужны ли они.

4. Здесь код невозможно читать. Выкладывай его на pastebin.com или ideone.com, а сюда ссылку клади.

Похожие вопросы
Проблема с рандомайзером C#
Проблема с строками в C++
Метод Ньютона C++. Прога работает не правильно, в чем проблема??
проблема c нетбукам!
C++ проблемы с кодом
проблемы с кодом на c#. помогите пожалуйста!
Проблема с кодом C++
проблема с RichTextBox на C#
У меня проблема с компилированием на c++
Проблема с кириллицей в C++