Работа с элементами выше/ниже/на главной/побочной диагоналях

code: #pascal
var a:array[1..100,1..100]of integer;
N, M, i, j :integer;
 
begin
 write('N, M -> ');
 readln(N, M); {считываем размер матрицы}
 write('Input matrix -> ');
 for i:=1 to N do for j:=1 to M do
 begin
  write('A[',i,',',j,'] -> ');
  readln(a[i, j]);
 end; {считываем саму матрицу}
 readln;
 
 writeln('Главная диагональ');
 for i:=1 to N do
 begin
  write(a[i,i],' '); {вы можете не только просто выводить элементы, но и работать с ними. Достаточно знать индексацию нужных элементов}
 end;
 writeln;
 
 writeln('Побочная диагональ');
 for i:=1 to N do
 begin
  write(a[i,N-i+1],' ');
 end;
 writeln;
 
 writeln('Ниже главной');
 for i:=2 to N do
 for j:=1 to i-1 do
 begin
  write(a[i,j],' ');
 end;
 writeln;
 
 writeln('Выше главной');
 for i:=1 to N-1 do
 for j:=i+1 to N do
 begin
  write(a[i,j],' ');
 end;
 writeln;
 
 writeln('Выше побочной');
 for i:=1 to N-1 do
 for j:=1 to N-i do
 begin
  write(a[i,j],' ');
 end;
 writeln;
 
 writeln('Ниже побочной');
 for i:=2 to N do
 for j:=N-i+2 to N do
 begin
  write(a[i,j],' ');
 end;
 writeln;
 readln;
end.

автор: yanyk1n

Поделиться:

Похожие статьи: