Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/12: Рейтинг темы: голосов - 12, средняя оценка - 4.50
Ириска5
0 / 0 / 0
Регистрация: 08.05.2011
Сообщений: 40
1

Все положительные элементы массива поставить в начало, а отрицательные - в конец

22.10.2011, 07:20. Просмотров 2310. Ответов 2
Метки нет (Все метки)

Помогите решить такую задачу пжл:
дан одномерный массив "а" (состоящий из вещественных чисел). Необходимо пройдя по массиву один раз все его положительные элементы поставить в начало а отрицательные в конец, при этом использовать переменные - i и j, но они будут являются счетчиками, то есть им нельзя присваивать значения констант или элементы массива
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2011, 07:20
Ответы с готовыми решениями:

Необходимо, пройдя по массиву один раз, все его положительные элементы поставить в начало а отрицательные в конец
Помогите решить такую задачу пжл: дан одномерный массив "а" (состоящий из...

Для каждого из массивов все отрицательные элементы переместить в начало массива, а все положительные — в конец
Составить программу, которая превращает массивы А и В следующим образом: для...

Перестановить положительные элементы в начало массива, отрицательные — в конец
Помогите написать задачи: 1. Перестановить положительные элементы в начало ...

Все отрицательные цифры поместить в начало массива, а положительные в конец
4. Дан массив положительных и отрицательных чисел. Переписать массив так, чтобы...

Данный массив A (n). Все положительные его элементы поместить в начало массива B (n), а все отрицательные - в начало массива C (n). Подсчитать количес
Данный массив A (n). Все положительные его элементы поместить в начало массива...

2
Thinker
Эксперт С++
4233 / 2207 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
22.10.2011, 09:36 2
Лучший ответ Сообщение было отмечено Ириска5 как решение

Решение

Если за один проход, то правильно сформулировать надо так: все неотрицательные в начало, а все отрицательные в конец.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void Transform(double *a, int n)
{
   int i = 0, j = n - 1;
   double buf;
   while(i < j)
   {
      while(i < j && a[i] >= 0)
         i++;
      while(i < j && a[j] < 0)
         j--;
      if (i < j)
      {
          buf = a[i]; a[i] = a[j]; a[j] = buf;
          i++; j--;
      }
   }
}
2
Ириска5
0 / 0 / 0
Регистрация: 08.05.2011
Сообщений: 40
22.10.2011, 22:12  [ТС] 3
Thinker, извините я забыла указать что в программе нельзя больше использовать никаких переменных кроме i и j
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2011, 22:12

Отсортировать элементы массива: отрицательные – в начало массива, положительные – в конец
написать две проги...Желательно в Microsoft Visual Studio. Исходный массив...

Все положительные элементы поместить в начало массива В(n), а отрицательные элементы — в начало массива С(n)
Ребята. Помогите с задачей пожалуйста. Дан массив А(n). Все положительные...

Сдвинуть все отрицательные элементы с в начало массива,сохраняя их порядок между собой, а все положительные элементы
Дан целочисленный список с количеством элементов 2n, не содержащий нулей....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru