Слайд 1Ввод и вывод двумерных массивов
Слайд 2Задача 1 (вариант 1):
Заполнить и вывести на печать двумерный массив размером
7х7 следующим образом:
Слайд 3const
n = 7;
var
a: array[1..n, 1..n] of integer;
i, j:
integer;
begin
for i := 1 to n do
for j := 1 to n do
a[i, j] := 0;
for i := 1 to n do
begin
for j := 1 to n do
begin
if (i = j) or (i = n + 1 - j) then
a[i, j] := 1;
write(a[i, j]:3);
end;
writeln;
end;
end.
Слайд 4Задача 1 (вариант 2):
Заполнить и вывести на печать двумерный массив размером
7х7 следующим образом:
Слайд 5const
n = 7;
var
a: array[1..n, 1..n] of integer;
i, j:
integer;
begin
for i := 1 to n do
for j := 1 to n do
a[i, j] := 0;
for i := 1 to (n div 2) do
for j := i to n + 1 - i do
a[i, j] := 1;
for i := n downto (n div 2) do
for j := n + 1 - i to i do
a[i, j] := 1;
{ Вывод элементов массива на экран }
end.
Слайд 6Задача 1 (вариант 3):
Заполнить и вывести на печать двумерный массив размером
7х7 следующим образом:
Слайд 7var
a: array[1..7, 1..7] of integer;
i, j: integer;
begin
for i
:= 1 to 7 do
for j := 1 to 7 do
a[i, j] := 0;
for i := 1 to 7 do
begin
for j := 1 to 7 do
begin
if (i = j) or (i = 8 - j) or
(i = 4) or (j = 4) then
a[i, j] := 1;
write(a[i, j]:3);
end;
writeln;
end;
end.
Слайд 8Задача 1 (вариант 4):
Заполнить и вывести на печать двумерный массив размером
8х8 следующим образом:
Слайд 9var
a: array[1..8, 1..8] of integer;
i, j: integer;
begin
for i
:= 1 to 8 do
for j := 1 to 8 do
a[i, j] := 0;
for i := 1 to 8 do
begin
for j := 1 to 8 do
begin
if (i mod 2 <> 0) and (j mod 2 <> 0) or
(i mod 2 = 0) and (j mod 2 = 0) then
a[i, j] := 1;
write(a[i, j]:3);
end;
writeln;
end;
end.
Слайд 10Задача 2 (вариант 1):
Заполнить и вывести на печать двумерный массив следующим
образом:
Слайд 11Задача 2 (вариант 1) Блок-схема алгоритма
Слайд 12const
n = 10; m = 12;
var
a: array[1..n, 1..m] of
integer;
i, j, k: integer;
begin
k := 1;
for i := 1 to n do
if i mod 2 <> 0 then //номер строки
for j := 1 to m do //нечётный?
begin
a[i, j] := k;
k := k + 1;
end
else
for j := m downto 1 do
begin
a[i, j] := k;
k := k + 1;
end;
{ Вывод элементов массива на экран }
end.
Слайд 13Задача 2 (вариант 2):
Заполнить и вывести на печать двумерный массив следующим
образом:
Слайд 14Задача 2 (вариант 2) Блок-схема алгоритма
Слайд 15const
n = 12; m = 10;
var
a: array[1..n, 1..m] of
integer;
i, j, k: integer;
begin
k := 1;
for j := 1 to m do
if j mod 2 <> 0 then //номер столбца
for i := 1 to n do //нечётный?
begin
a[i, j] := k;
k := k + 1;
end
else
for i := n downto 1 do
begin
a[i, j] := k;
k := k + 1;
end;
{ Вывод элементов массива на экран }
end.
Слайд 16Задача 2 (вариант 3):
Заполнить и вывести на печать двумерный массив следующим
образом:
Слайд 17Задача 2 (вариант 3) Блок-схема алгоритма
Слайд 18const
n = 12; m = 10;
var
a: array[1..n, 1..m] of
integer;
i, j, k: integer;
begin
k := 1;
for i := 1 to n do
if i mod 2 = 0 then //номер строки чётный?
for j := 1 to m do
begin
a[i, j] := k;
k := k + 1;
end
else
for j := m downto 1 do
begin
a[i, j] := k;
k := k + 1;
end;
{ Вывод элементов массива на экран }
end.
Слайд 19Задача 2 (вариант 4):
Заполнить и вывести на печать двумерный массив следующим
образом:
Слайд 20Задача 2 (вариант 4) Алгоритм
Заполнить первую строку единицами
Заполнить первый столбец единицами
Остальные
ячейки массива, начиная со 2-й строки и 2-го столбца, последовательно слева направо, а затем сверху вниз заполнить по формуле:
a[i,j] := a[i-1,j] + a[i,j-1]
Вывести заполненный массив на экран в виде прямоугольной таблицы
Слайд 21const
n = 6;
var
a: array[1..n, 1..n] of integer;
i, j:
integer;
begin
for i := 1 to n do a[i, 1] := 1;
for j := 1 to n do a[1, j] := 1;
for i := 2 to n do
for j := 2 to n do
a[i, j] := a[i - 1, j] + a[i, j - 1];
for i := 1 to n do
begin
for j := 1 to n do
write(a[i, j]:5);
writeln;
end;
end.