Все положительные элементы расположить в начале
массиве, а все отрицательные - в конце не используя сортировки элементов
массива.
Другие языки программирования и технологии
Как записать в Паскале?
Вот так:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L := 1; R := ArrSize;
while L < R do
if A[L] > 0 then Inc(L)
else if A[R] < 0 then Dec(R)
else begin Tmp := A[L]; A[L] := A[R]; A[R] := Tmp; end;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Но! Так как происходит некоторое упорядочивание элементов массива, то по определению это уже сортировка! !
ЗЫ Я не учитывал нулевые элементы массива. Данный код будет зацикливаться, если встретит больше одного 0.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Вот так выглядит работа вышеприведённого кода:
8 -7 -1 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 6 2
8 2 -1 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 6 -7
8 2 6 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 -1 -7
8 2 6 5 3 -4 -2 4 9 -5 0 -9 1 7 -8 -6 -3 -1 -7
8 2 6 5 3 7 -2 4 9 -5 0 -9 1 -4 -8 -6 -3 -1 -7
8 2 6 5 3 7 1 4 9 -5 0 -9 -2 -4 -8 -6 -3 -1 -7
8 2 6 5 3 7 1 4 9 0 -5 -9 -2 -4 -8 -6 -3 -1 -7
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L := 1; R := ArrSize;
while L < R do
if A[L] > 0 then Inc(L)
else if A[R] < 0 then Dec(R)
else begin Tmp := A[L]; A[L] := A[R]; A[R] := Tmp; end;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Но! Так как происходит некоторое упорядочивание элементов массива, то по определению это уже сортировка! !
ЗЫ Я не учитывал нулевые элементы массива. Данный код будет зацикливаться, если встретит больше одного 0.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Вот так выглядит работа вышеприведённого кода:
8 -7 -1 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 6 2
8 2 -1 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 6 -7
8 2 6 5 -8 -4 -2 4 9 -5 0 -9 1 7 3 -6 -3 -1 -7
8 2 6 5 3 -4 -2 4 9 -5 0 -9 1 7 -8 -6 -3 -1 -7
8 2 6 5 3 7 -2 4 9 -5 0 -9 1 -4 -8 -6 -3 -1 -7
8 2 6 5 3 7 1 4 9 -5 0 -9 -2 -4 -8 -6 -3 -1 -7
8 2 6 5 3 7 1 4 9 0 -5 -9 -2 -4 -8 -6 -3 -1 -7
Вообще-то элементарно методом "Пузырьков". Но это тоже сортировка... .
Первое, что приходит на ум без сортировки - перебором всех элементов массива раскидывать их на ДВА массива - положительный и отрицательный. А потом соединить эти массивы. Смысл понятен?
Первое, что приходит на ум без сортировки - перебором всех элементов массива раскидывать их на ДВА массива - положительный и отрицательный. А потом соединить эти массивы. Смысл понятен?
чувак тебе надо отсортировать массив без его сортировки- убей автора задания головой об стену.
сортировка это упорядочивание элементов по какому-то критерию. . то что тебе нужно сделать и есть сортировка, т. о. без нее не обойтись. Уточняй условие
Похожие вопросы
- Как ответ на эту задачу записать в паскале, либо просто в алгоритм?
- Помогите пожалуйста! Необходимо записать в паскале как можно проще для школьника. Срочно!!!
- Помогите записать в паскале !
- Помогите записать на языке паскаля.
- Как записать на языке Паскаля выражение: деление на ноль невозможно
- Аналог ассоциативного массива в Паскале.
- Я внутри написал, что я знаю про паскаль не то что решать и все такое а так теоретический в общем, смысл проги, я прав?
- ПАСКАЛЬ и ГРАФИКА
- Как можно записать это условие на Паскале???
- Товарищи программисты на Delphi и Pascal помогите девушке!!!)) вопрос глупый..насчет паскаля..