Написать программу - в двумерном массиве заменить нулями элементы главной диагонали...

0 голосов
45 просмотров

Написать программу - в двумерном массиве заменить нулями элементы главной диагонали (главная диагональ идет из левого верхнего угла в правый нижний).С выводом исходной и полученной матриц.


Информатика (27 баллов) | 45 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Const
  n = 10;
var
  a: array[1..n, 1..n] of integer;
  i, j: integer;

begin
  Randomize;
  Writeln('Исходная матрица');
  for i := 1 to n do
  begin
    for j := 1 to n do
    begin
      a[i, j] := Random(101) - 50;
      Write(a[i, j]:4)
    end;
    Writeln
  end;
  for i:=1 to n do a[i,i]:=0;
  Writeln('Результирующая матрица');
  for i := 1 to n do
  begin
    for j := 1 to n do Write(a[i, j]:4);
    Writeln
  end
end.

Тестовое решение:
Исходная матрица
 -19  15  42  44  32  41 -11 -21  14 -29
  33  -8 -21 -33 -38  28  21  43  39 -46
  -1  33  13  23 -38  32 -25 -26  43  41
   7   6  39  14  48  37  -3  -3  -2 -41
 -26  40 -38 -24  16  43 -17   3   7   7
  37  20  17  44  28  -2 -49 -32  32 -50
  16 -35 -14  23  14 -23   3  15 -31 -24
 -19 -26  -5  30  30   9  20 -13 -43 -30
  -2  22  17 -15 -46  38  39  46  37  -1
  36 -22  15  -2  -7 -41   3 -10  12 -12
Результирующая матрица
   0  15  42  44  32  41 -11 -21  14 -29
  33   0 -21 -33 -38  28  21  43  39 -46
  -1  33   0  23 -38  32 -25 -26  43  41
   7   6  39   0  48  37  -3  -3  -2 -41
 -26  40 -38 -24   0  43 -17   3   7   7
  37  20  17  44  28   0 -49 -32  32 -50
  16 -35 -14  23  14 -23   0  15 -31 -24
 -19 -26  -5  30  30   9  20   0 -43 -30
  -2  22  17 -15 -46  38  39  46   0  -1
  36 -22  15  -2  -7 -41   3 -10  12   0



(142k баллов)
0 голосов

В паскале
const
    n = 3;
    k = 3;
var
  i,j:integer;
  a:array[1..n,1..k] of integer;
begin
    for i:=1 to n do
      for j:=1 to k do
    begin
     Writeln('Введите a[',i,',',j,']:');
     readln(a[i,j]);
    end;
  writeln('Исходный массив:');
  for i:=1 to n do
   begin
     for j:=1 to k do
   write('a[':4,i,',',j,']=',a[i,j]);
   writeln;
   end;
  for i:=1 to n do
    for j:=1 to k do
    if i=j then a[i,j]:=0;
  writeln('Полученный массив:');
  for i:=1 to n do
   begin     for j:=1 to k do
   write('a[':4,i,',',j,']=',a[i,j]);
   writeln;
   end;
end.

(2.0k баллов)