Прошу помогите( Дана действительная квадратная матрица порядка А(n*n).Определить что...

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

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


Информатика (47 баллов) | 32 просмотров
0

как дана матрица и в чём программа нужна?

0

delphi

Дано ответов: 2
0 голосов
Правильный ответ
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      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.
(150k баллов)
0

Благодарю тебя, счастья тебе и всего хорошего)

0 голосов

Самое простое решение 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 iif 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.



(4.4k баллов)
0

Программу не тестил, но должна работать.

0

Спасибо большое тебе.