Сформировать двумерный массив - Pascal (84904)
Формулировка задачи:
сформировать двумерный массив по такому правилу
12345
51234
45123
34512
23451
Решение задачи: «Сформировать двумерный массив»
textual
Листинг программы
uses crt; const nmax=20; var a:array[1..nmax,1..nmax] of integer; n,i,j:integer; begin clrscr; randomize; repeat write('Размер матрицы до ',nmax,' n='); readln(n); until n in [1..nmax]; writeln('Исходная матрица:'); for i:=1 to n do begin for j:=1 to n do begin if j>=i then a[i,j]:=j-i+1 else a[i,j]:=n-i+j+1; write(a[i,j]:3); end; writeln; end; readln end.
Объяснение кода листинга программы
- Объявляются переменные:
n
,i
,j
для цикла,a
двумерный массив. - Задается размер матрицы с помощью переменной
n
. - Условие цикла
repeat
считывает размер матрицы до тех пор, пока он не будет в допустимом диапазоне [1..nmax]. - Выводится сообщение
Исходная матрица:
и в циклеfor i:=1 to n do
выводятся элементы матрицыa
. - В условии
if j>=i
проверяется, что индексj
больше или равенi
, иначеa[i,j]:=n-i+j+1
присваивается значение элемента матрицыa
. - Каждое значение элемента матрицы выводится с помощью
write(a[i,j]:3)
. - В конце программы ожидается нажатие клавиши с помощью
readln
.