TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

[ следующий ] [ начало главы ] [ предыдущий ] [ содержание ]

Пример 2.5. Дан массив X(N). Получить новый массив Y(N) такой, что в нем сначала идут положительные числа, затем нулевые, и затем отрицательные из X.  
Тест
 
Данные Результат
N=7  X=(-1, 2, 0, 4, -3,-2,0)  Y=(2, 4, 0, 0, -1, -3, -2)
 
Демонстрация
Школьный АЯ
алг Новый Порядок (арг цел N, арг вещ таб Х[1:N], рез вещ таб Y[1:N])
нач цел i, k   | k - индекс массива Y
  k := 0
  нц для i от 1 до N | Занесение в Y положительных чисел из X
    если X[i] > 0
       то k := k+1; Y[k] := X[i]
    все
  кц
  нц для i от 1 до N | Занесение в Y чисел, равных нулю, из X
    если X[i] = 0
      то k := k+1; Y[k] := X[i]
    все
  кц
  нц для i от 1 до N | Занесение в Y отрицательных чисел из X
    если X[i] < 0
      то k := k+1; Y[k] := X[i]
    все
  кц
кон
Turbo Pascal 
Program NewOrder;
  Uses Crt;
  Var N, i, k : Integer;
      X, Y    : Array [1..20] of Real;
BEGIN
  ClrScr;
  Write('Введите N = '); ReadLn(N);
  For i := 1 to N do
    begin
      Write('X[ ', i, ' ] = '); ReadLn(X[i])
    end;
  k:=0;
  For i := 1 to N do
    If X[i]>0 then
      begin k:=k+1; Y[k]:=X[i]
      end;
  For i := 1 to N do
    If X[i]=0 then
      begin k:=k+1; Y[k]:=X[i]
      end;
  For i := 1 to N do
    If X[i]<0 then
      begin k:=k+1; Y[k]:=X[i]
      end;
  Write('О т в е т : полученный массив');
  For i := 1 to N do Write(Y[i] : 5 : 1);
  WriteLn; ReadLn
END.
Блок-схема
(фрагмент)
 

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz