Помощь - Поиск - Пользователи - Календарь
Полная версия: Сортировка массива
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
FENIX
Попросили помочь в написании программы. Но из-за катастрофической нехватки времени (своих прог писать тонну + они гораздо серьезнее) не могу сосредоточиться. прошу помощи smile.gif

Задание: дан массив n=20.
Отсортировать отрицательные числа по убыванию, положительные числа перенести в конец и отсортировать по возрастанию.
Метод сортировки - на выбор.
Заранее спасибо.
FreeMan
тысячи раз было решено. пользуй поиск.
FENIX
Цитата(FreeMan @ 17.03.05 17:57)
тысячи раз было решено. пользуй поиск.


Не подскажешь, как лучше сформулировать запрос?
klem4
вот так : http://forum.pascal.net.ru/index.php?showtopic=3065 angry.gif
volvo
Ищи слово "перенести".
FENIX
Всем спасибо, злиться не надо ;)
virt
;)
эта прога пишется за 7-12 минут ,я думаю на написание поста ушло не многим меньше ,что же это за гораздо серьезные проги такие?
FENIX
Как только нашлось время, сделал smile.gif
Выкладываю код - может, кому пригодится.
:low:

Код
Program Sort_Move;
Uses Crt;

var
A : array [1..20] of integer;
i, j, n, t : integer;

BEGIN

  ClrScr;
  write('Vvedite N = ');
  readln(n);
  writeln;
  Writeln('Vvedite isxodnyi massiv:');

  For i := 1 to n do
  begin
     write('A[',i,']=');
     readln(A[i]);
  end;

  For i := 1 to n do
     If A[i] > 0 then
     For j := n downto i+1 do
     If A[j] < 0 then
     begin
        T := A[i];
        A[i] := A[j];
        A[j] := T;
        break;
     end;

  For i := 1 To n Do
  If A[i] < 0 then
  For j := n DownTo i+1 Do
  If A[j] < 0 then
  If A[i] < A[j] Then
  begin
     T := A[i];
     A[i] := A[j];
     A[j] := T;
  end;

  For i := 1 To n Do
  If A[i] > 0 then
  For j := n DownTo i+1 Do
  If A[j] > 0 then
  If A[i] > A[j] Then
  begin
     T := A[i];
     A[i] := A[j];
     A[j] := T;
  end;

writeln;
Writeln('Massiv posle izmenenya:');
writeln;
For i := 1 to n do
writeln('A[',i,']=',a[i]);
writeln;
readln;

END.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.