Другие языки программирования и технологии

Помогите написать прогу в турбопаскале.

Вычислить сумму т среднее арифметическое элементов матрицы, расположенных над главной диагональю и на ней. О (М. М) М<=20
Вот только для паскаль АВС.
================================
const
n = 5; // Количество строк.
m = 4; // Количество строк.
a = 1; // Диапазон случайных значений. От а
b = 9; // до б.
var
mat : array[1..n,1..m] of integer;
i,j,sum1,sum2,num1,num2 :integer;
av1,av2:real;
begin
sum1 := 0;
sum2 := 0;
av1 := 0;
av2 := 0;
num1 := 0;
num2 := 0;
for i := 1 to n do begin
for j := 1 to m do begin
mat[i][j] := random(b - a + 1) + a;
write(mat[i][j]:2);
if(i = j) then begin sum1 := sum1 + mat[i][j]; // Сумма элементов главной диагонали.
inc(num1);
end;
if(j > i) then begin sum2 := sum2 + mat[i][j]; // Сумма элементов выше главной диагонали.
inc(num2);
end;
end;
writeln();
end;

av1 := sum1 / num1;
av2 := sum2 / num2;

writeln('sum1 = ', sum1);
writeln('sum2 = ', sum2);
writeln('av1 = ', av1);
writeln('av2 = ', av2);

end.
КЛ
Канат Лесбеков
2 782
Лучший ответ
s:=0; k:=0;
for i:=1 to n do
for j:=j to n do begin
s:=s+1; k:=k+1 end;
writeln(s,s/k:6:2);
Izet Nader
Izet Nader
95 951
uses
  crt;

const
  M = 3;

type
  MATRIX = array [1..M, 1..M] of integer;

var
  O : MATRIX;
  RowCount, ColCount, ElementCount : byte;
  Sum : integer;
  Average : real;
begin
  Randomize;

  writeln('Матрица: ');
  for RowCount := 1 to M do
  begin
    for ColCount := 1 to M do
    begin
      O[RowCount, ColCount] := Random(101) - 50;
      write(O[RowCount, ColCount]:5);
    end;
    writeln;
  end;

  Sum := 0;
  ElementCount := 0;

  for RowCount := 1 to M do
    for ColCount := RowCount to M do
    begin
      Sum := Sum + O[RowCount, ColCount];
      Inc(ElementCount);
    end;

  Average := Sum / ElementCount;

  writeln(#13#10'Сумма: ', sum);
  writeln('Среднее арифметическое: ', Average);

  readkey;

end.
Дмитрий _Dims
Дмитрий _Dims
1 648