Задана матрица Z(5,5). Если есть отрицательный элемент в строке, просуммировать все последующие элементы в этой строке, и этой суммой заменить элемент на главной диагонали — Pascal(Паскаль)

Элементы главной диагонали (заменяемые) вывести в массив В.

program PascalGuru;

uses crt;

var
  Z: array [1 .. 5, 1 .. 5] of integer;
  i, j, k, summa: integer;

begin

  for i := 1 to 5 do
    for j := 1 to 5 do
      Z[i, j] := -8 + random(26); { begin
    write ('A[',i,',',j,']='); readln (Z[i,j]); end; }

  write('Vot vvedennaya vami matrica A:');
  for i := 1 to 5 do
  begin
    writeln;
    for j := 1 to 5 do
      write(Z[i, j]:8, ' ');
  end;

  writeln;
  writeln;
  write('Zamenennye el-ty diagonali: ');
  for i := 1 to 5 do
  begin
    k := 0;
    for j := 1 to 5 do
      if Z[i, j] < 0 then
      begin
        k := j;
        break
      end;

    if k <> 0 then
    begin
      summa := 0;
      for j := k to 5 do
        summa := summa + Z[i, j];
      Z[i, i] := summa;
      write(summa:5);
    end;

  end;

  writeln;
  writeln;
  write('Preobrazovannaya matrica A:');
  for i := 1 to 5 do
  begin
    writeln;
    for j := 1 to 5 do
      write(Z[i, j]:8, ' ');
  end;

  readln;

end.

Leave a Comment

5 + 2 =