|
Модераторы: bsa |
|
Dididid |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 24.5.2020 Репутация: нет Всего: нет |
Здравствуйте, нужно сделать быструю сортировку положительных четных элементов массива, а отрицательные и нечетные проигнорировать
было: 0 -3 4 2 -6 стало: 0 -3 2 4 -6 Я написала такую программу, но она не работает, что нужно исправить? int sort(int *B, int k) { if (k < 2) return k; int p,vv,i,j,n; n=k/2; if (B[n]!=0 || B[n]%2!=0) { while (B[n]<=0 || B[n]%2!=0) { n++; } } p=B[n]; for (i = 0, j = k - 1; ; i++, j--) { while (B[j] >= p && B[j] > 0 && B[j]%2==0) { j--; } while (B[i] <= p && B[i]>0 && B[i]%2==0 ) { i++; } if (i >= j) break; else { vv = B[i]; B[i] = B[j]; B[j] = vv; } } if ( j > 0 ) sort(B, i); if ( k > i ) sort(B + i, k - i); return 1; } |
|||
|
||||
Oldshelf |
|
||||
Бывалый Профиль Группа: Участник Сообщений: 157 Регистрация: 22.4.2018 Репутация: нет Всего: 4 |
|
||||
|
|||||
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |