
Другие языки программирования и технологии
Задача на Паскале
Нужно сделать обход вот такой матрицы.


const
N = 5;
var
A: array[1..N, 1..N] of integer;
i, j, q, size: integer;
begin
i := 1; j := N;
A[i][j] := 1;
q := 2; size := 3 * N;
while q <= size do
begin
if (j > 1) then
begin
dec(j);
A[i][j] := q;
inc(q);
end;
while (i < N) and (j < N) do
begin
inc(i);
inc(j);
A[i][j] := q;
inc(q);
end;
if i < N then
begin
inc(i);
A[i][j] := q;
inc(q);
end;
while (i > 1) and (j > 1) do
begin
dec(i);
dec(j);
A[i][j] := q;
inc(q);
end;
end;
size := N * N;
while q <= size do
begin
if((i < N) and (q <= size)) then
begin
inc(i);
A[i][j] := q;
inc(q);
end;
while((i < N) and (j < N) and (q <= size)) do
begin
inc(i);
inc(j);
A[i][j] := q;
inc(q);
end;
if((j > 1) and (q <= size)) then
begin
dec(j);
A[i][j] := q;
inc(q);
end;
while((i > 1) and (j > 1) and (q <= size)) do
begin
dec(i);
dec(j);
A[i][j] := q;
inc(q);
end;
end;
for i := 1 to N do
begin
for j := 1 to N do
write(A[i, j]:3);
writeln;
end; writeln;
write('Press Enter key for continue...');
readln;
end.
N = 5;
var
A: array[1..N, 1..N] of integer;
i, j, q, size: integer;
begin
i := 1; j := N;
A[i][j] := 1;
q := 2; size := 3 * N;
while q <= size do
begin
if (j > 1) then
begin
dec(j);
A[i][j] := q;
inc(q);
end;
while (i < N) and (j < N) do
begin
inc(i);
inc(j);
A[i][j] := q;
inc(q);
end;
if i < N then
begin
inc(i);
A[i][j] := q;
inc(q);
end;
while (i > 1) and (j > 1) do
begin
dec(i);
dec(j);
A[i][j] := q;
inc(q);
end;
end;
size := N * N;
while q <= size do
begin
if((i < N) and (q <= size)) then
begin
inc(i);
A[i][j] := q;
inc(q);
end;
while((i < N) and (j < N) and (q <= size)) do
begin
inc(i);
inc(j);
A[i][j] := q;
inc(q);
end;
if((j > 1) and (q <= size)) then
begin
dec(j);
A[i][j] := q;
inc(q);
end;
while((i > 1) and (j > 1) and (q <= size)) do
begin
dec(i);
dec(j);
A[i][j] := q;
inc(q);
end;
end;
for i := 1 to N do
begin
for j := 1 to N do
write(A[i, j]:3);
writeln;
end; writeln;
write('Press Enter key for continue...');
readln;
end.
Ринат Махмудов
спасибо большое
Похожие вопросы
- Pascal. Помогите пожалуйста решить задачу в паскале !
- ПОМОГИТЕ С ЗАДАЧАМИ В ПАСКАЛЕ
- Помогите, пожалуйста с задачей :( Сижу, туплю уже какой день, вообще не соображу - чтокуда. Задача на Паскале
- Решение задач по паскалю
- Помогите до решать задачу на паскале
- Составьте задачу в паскале!!
- Помогите решить задачи по Паскалю
- Задача по Паскалю (1 курс)
- помогите решить задачу на паскале: напечатать "столбиком" значения sin2, sin3, ..sin 20.
- ПОМОГИТЕ НАПИСАТЬ ЗАДАЧИ НА ПАСКАЛЕ