Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
oneshotgame
0 / 0 / 0
Регистрация: 17.04.2012
Сообщений: 5
#1

Переместить элементы массива так, чтобы в конце массива были все отрицательные числа - Delphi

08.10.2012, 23:44. Просмотров 1106. Ответов 2
Метки нет (Все метки)

Дан массив. Переместить его элементы таким образом, чтобы в конце массива были все отрицательные числа, сохранив при этом начальный порядок следования отдельно для и отрицательных и отдельно для нулевых и положительных элементов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2012, 23:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Переместить элементы массива так, чтобы в конце массива были все отрицательные числа (Delphi):

Как сделать, чтобы элементы динамического массива, которые равны 0, были размещены в конце массива? - Delphi
Нужно упорядочить массив по возрастанию и сделать, чтобы элементы, которые равны 0, были в конце. a:array of integer; i,n:integer. ...

Массив: переставить элементы таким образом, чтобы сначала были записаны все положительные, затем все отрицательные, а потом все нули. - Delphi
Здравствуйте! помогите пожалуйста с задачей по информатике. Буду очень благодарна) В массиве из вещественных чисел переставить...

*. В файле из вещественных чисел переставить элементы таким образом, чтобы сначала были записаны все положительные, затем все отрицательные, а потом - Delphi
Помогите с задачей! Видел подобное решение в нижестоящей теме но оно слишком сложное желательно решить БЕЗ использование процедур и...

TabControl - сделать так, чтобы на первой странице были одни элементы, а на другой были другие элементы - Delphi
Есть tabControl. Хочу сделать так, чтобы на первой странице были одни элементы, а на другой были другие элементы.

Заполните одномерный массив так, чтобы все его элементы были различны - Delphi
Помогите решить задачу пожалуста. На Turbo Delphi Заполните одномерный массив так, чтобы все его элементы были различны. Размеры массива...

Заполнить одномерный массив так, чтобы все его элементы были различны и выбраны случайным образом - Delphi
В Delphi создать консольные приложения (File-New-Console Application) для решения следующих задач. Каждую задачу необходимо решить с...

2
vetal20600
19 / 20 / 1
Регистрация: 19.04.2012
Сообщений: 181
09.10.2012, 00:07 #2
oneshotgame, идеш по массиву, находиш отрицательный элемент - записываешь его в первый дополнительный массив, находиш положительный элемент - записываешь его во второй дополнительный массив. Потом сливаешь в основной массив данные с первого и второго дополнительных массивов...
1
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
25535 / 17088 / 5416
Регистрация: 22.10.2011
Сообщений: 30,257
Записей в блоге: 7
09.10.2012, 17:25 #3
vetal20600, это еще зачем? Два доп. массива, чтобы только лишний раз не думать. Это ж элементарная пузырьковая сортировка. Только условие, при котором элементы будут меняться местами - не Aj-1 < Aj, а (Aj-1 < 0) and (Aj >= 0), тогда после окончания цикла элементы массива будут упорядочены именно так, как требуется: в конце - все отрицательные, причем их порядок сохраняется, поскольку между собой они местами не меняются, только с неотрицательными. А в начале - все неотрицательные, тоже в изначальном порядке друг относительно друга.

Вот так:
Delphi
1
2
3
4
5
6
  for i := 1 to n do
    for j := n downto i + 1 do
      if (ar[j - 1] < 0) and (ar[j] >= 0) then
      begin
        T := ar[j - 1]; ar[j - 1] := ar[j]; ar[j] := T
      end;
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2012, 17:25
Привет! Вот еще темы с ответами:

Записать во второй массив сначала все положительные элементы, затем нули и в конце — отрицательные элементы - Delphi
Дан массив из 10 элементов. Записать во второй массив сначала все положительные элементы, затем нули и в конце — отрицательные элементы

Все отрицательные элементы массива X перенести в его начало, а все остальные — в конец - Delphi
Нужна помощь в доработке программы. Delphi формы: После того как я ввел числа в колонках нажимаю пуск и ничего не происходит, препод...

Все отрицательные элементы массива X перенести в его начало, а все остальные - в конец - Delphi
преобразовать массив x по следующему правилу(воспользовавшись массивом y как вспомогательным): Все отрицательные элементы массива x...

Вывести сначала все положительные числа массива, затем – все отрицательные - Delphi
Помогите пожалуйста с 2-мя задачками. и если можно объяснить примерно как сделали 1)Дан массив из 20 чисел. Вывести на экран...


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

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

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