Информатика 10-11. Книга 2. Практика алгоритмизации и программирования. Шауцукова Л.З. - 23 стр.

UptoLike

Составители: 

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.
Блок-схема
(фрагмент)
Задачи для самостоятельного решения
2.1. Подсчитайте число и сумму положительных, число и произведение отрицательных
элементов заданного массива A(N).
2.2. Заданные векторы X(N) и Y(N) преобразуйте по правилу: большее из x
i
и y
i
примите в
качестве нового значения x
i
, а меньшеев качестве нового значения y
i
.
2.3. Элементы заданного массива B(N) перепишите в новый массив A(N) в обратном
порядке.
2.4. Из заданного вектора A(3N) получите вектор B(N), очередная компонента которого
равна среднему арифметическому очередной тройки компонент вектора А.
2.5. В заданном массиве Х(N) замените нулями все отрицательные компоненты,
непосредственно предшествующие его максимальной компоненте (первой по порядку,
если их несколько).
                                                                      Блок-схема
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.




                         Задачи для самостоятельного решения

2.1. Подсчитайте число и сумму положительных, число и произведение отрицательных
элементов заданного массива A(N).

2.2. Заданные векторы X(N) и Y(N) преобразуйте по правилу: большее из xi и yi примите в
качестве нового значения xi , а меньшее — в качестве нового значения yi .

2.3. Элементы заданного массива B(N) перепишите в новый массив A(N) в обратном
порядке.

2.4. Из заданного вектора A(3N) получите вектор B(N), очередная компонента которого
равна среднему арифметическому очередной тройки компонент вектора А.

2.5. В заданном массиве Х(N) замените нулями все отрицательные компоненты,
непосредственно предшествующие его максимальной компоненте (первой по порядку,
если их несколько).