дана действительная квадратная матрица порядка а(n*n).определить что больше: сумма элементов, находящихся под главной диагональю, или сумма элементов, находящихся над главной диагональю.

ravengan ravengan    2   26.09.2019 06:40    0

Ответы
илья1974 илья1974  08.10.2020 20:08
PascalABC.NET 3.4, сборка 1670 от 23.05.2018
Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк/столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var (su,sl):=(0,0);
  for var i:=0 to n-1 do
    for var j:=0 to n-1 do
      if i<j then su+=a[i,j]
      else if i>j then sl+=a[i,j];
  var sgn:=Sign(su-sl);
  case sgn of
    -1:Writeln('Сумма элементов над диагональю меньше');
    0:Writeln('Суммы элементов над и под диагональю равны');
    1:Writeln('Сумма элементов над диагональю больше')
    end
end.
ПОКАЗАТЬ ОТВЕТЫ
raisabarsegyan raisabarsegyan  08.10.2020 20:08
Самое простое решение program znanijatop;
const n = 100;
var
k,i,j:byte;
s1,s2:real;
a:array[1..n,1..n] of real;
begin
writeln('vvedite poryadok matrice');
readln(k);
s1:=0;s2:=0;for i:=1 to k do begin
for j:=1 to k do begin
writeln('vvedite a[',i,',',j,']');
readln(a[i,j]);
end;
end;
for i:=1 to k do begin
for j:=1 to k do begin
if i<j then  s1:=s1+a[i,j];
if i>j then  s2:=s2+a[i,j];
end;
end;
if s1 > s2 then writeln('nad glavnoy diagonali summa bolshe');
if s1 < s2 then writeln('pod glavnoy diagonali summa bolshe');
if s1 = s2 then writeln('ravni');
end.

дана действительная квадратная матрица порядка а(n*n).определить что больше: сумма элементов, находя
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика