Сортировка одномерных массивов.
Пример 10.1 Найти произведение элементов массива
Program Pr_10_1;
const n=5;
var
a:array[1..n] of real;
i:integer;
P:real;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
readln;
P:=1;
for i:=1 to n do
P:=P*a[i];
writeln('P=',P:10:2)
end.
Пример 10.1 (Продолжение).
1) Объяснить работу программы.
Как описывается массив?
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
(1, 2, 3, 4, 5).
Пример 10.2 В массиве найти максимальный элемент и его номер.
Program Pr_10_2;
const n=5;
var
a:array[1..n] of real;
i,k:integer;
max:real;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
readln;
max:=a[1]; k:=1;
for i:=2 to n do
if a[i]>max then
begin
max:=a[i]; k:=i;
end;
writeln('max=',max:8:2);
writeln('k=',k:3)
end.
Пример 10.2 (Продолжение).
1) Объяснить работу программы.
Как описывается и вводится массив?
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
(1, 5, 3, 4,2).
Пример 10.3 В массиве (1,3,2,4,5) поменять местами 2-ой и 3-ий
элементы.
Program Pr_10_3;
const n=5;
var
a:array[1..n] of integer;
i,b:integer;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
b:=a[2]; a[2]:=a[3]; a[3]:=b;
for i:=1 to n do
write(a[i]:3);
writeln
end.
Пример 10.3 (Продолжение).
1) Объяснить работу программы.
Как описывается массив?
Как вводится и выводится массив? (Строка, столбец).
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
(1, 3, 2, 4, 5).
Пример 10.4 Сдвинуть все элементы массива (1,2,3,4,5) на одну
позицию.
Program Pr_10_4;
const n=5;
var
a:array[1..n] of integer;
i,b:integer;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
b:=a[1];
for i:=1 to (n-1) do
a[i]:=a[i+1];
a[n]:=b;
for i:=1 to n do
write(a[i]:3);
writeln
end.
Пример 10.4 (Продолжение).
1) Объяснить работу программы.
Как описывается массив?
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
(1, 2, 3, 4, 5).
Пример 10.5Сдвинуть все элементы массива (1,2,3,4,5) на три
позиции.
Program Pr_10_5;
const n=5;
var
a:array[1..n] of integer;
i,j,b:integer;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
for j:=1 to 3 do
begin
b:=a[1];
for i:=1 to (n-1) do
a[i]:=a[i+1];
a[n]:=b;
end;
for i:=1 to n do
write(a[i]:3);
writeln
end.
Пример 10.5 (Продолжение).
1) Объяснить работу программы.
Как описывается массив?
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
(1, 2, 3, 4, 5).
Пример 10.6Расположить элементы массива А[5] в порядке
возрастания.
Program PR_10_6;
const n=5;
var
a:array[1..n] of integer;
i,j,b:integer;
begin
writeln('vvedite massiv');
for i:=1 to n do
read(a[i]);
for j:=1 to (n-1) do
for i:=1 to (n-1) do
if a[i]>a[i+1] then
begin
b:=a[i];
a[i]:=a[i+1];
a[i+1]:=b;
end;
for i:=1 to n do
write(a[i]:4);
writeln
end.
Пример 10.6 (Продолжение).
1) Объяснить работу программы.
Как описывается массив?
2) Нарисовать блок-схему и объяснить назначение бло-ков.
3) Провести вычисление по про-грамме для массива n = 5
А[5] = (5, 4, 3, 2, 1).