→→→↓
→→↓↓
↑. ← ↓
↑←←←
Выполнить обход матрицы А(4, 4) и В(7, 7).
Написать надо используя метод струтурного програмирования.
Программа:
Код: Выделить всё
Юнита
Unit obxod;
Interface
const m=4;
const n=7;
procedure Spiral(a:array of integer);
procedure Spiral2(b:array of integer);
Implementation
var p,i,j:integer;
procedure Spiral(a:array of integer);
var f:array[1..m,1..m] of integer;
Begin
writeln('massiv:');
begin
for i := 1 to m do
begin
for j := 1 to m do Write (f[i,j]:7);
Writeln;
end;
Writeln;
for p := 1 to (m+1) div 2 do
begin
for j := p to m-p+1 do Write (f[p,j] : 8);
for i := p+1 to m-p+1 do Write (f[i,m-p+1] : 8);
for j := m-p downto p do Write (f[m-p+1,j] : 8);
for i := m-p downto p+1 do Write (f[i,p] : 8);
end;
end;
end;
procedure Spiral2(b:array of integer);
var s:array[1..n,1..n] of integer;
Begin
writeln('massiv:');
begin
for i := 1 to n do
begin
for j := 1 to n do Write (s[i,j]:7);
Writeln;
end;
Writeln;
for p := 1 to (n+1) div 2 do
begin
for j := p to n-p+1 do Write (s[p,j] : 8);
for i := p+1 to n-p+1 do Write (s[i,n-p+1] : 8);
for j := n-p downto p do Write (s[n-p+1,j] : 8);
for i := n-p downto p+1 do Write (s[i,p] : 8);
end;
end;
end;
end.
Основная программа
Program Pr_1;
uses OBXOD;
Var z:integer;
y:integer;
i,j:integer;
begin
Spiral(z);
Spiral2(y);
Readln;
end.
P.S.Учителю не понравилось, то что у меня 2 процедуры и непонятно как заполняется массив.