В матрице найти сумму элементов, расположенных выше главной диагонали. Исправить программу - Free Pascal
Формулировка задачи:
Дан двумерный массив вещественных чисел.Найти сумму элементов,расположенных выше главной диагонали. Она вроде рабочая но не правильно считает.
Program 67;
uses crt;
var s:real;
b,j,i:word;
x:array [1..5,1..5] of real;
Begin
Clrscr;
Writeln(‘Dan massiv’);
S:=0;
For i:=1 to 5 do begin
For j:=1 to 5 do begin
X[i,j]:=(50-random(100))/10;
Write(x[i,j]:8:2);
End;
Writeln(‘summa elementov’);
For i:=1 to 5 do begin
For j:=1 to 5 do begin
If j>i then s:=s+x[i,j];
End;
End;
Writeln(s:8:2);
readkey;
End.Решение задачи: «В матрице найти сумму элементов, расположенных выше главной диагонали. Исправить программу»
textual
Листинг программы
Program p67;
uses crt;
const n=5;
var s:real;
j,i:byte;
x:array [1..n,1..n] of real;
Begin
Clrscr;
Writeln('Dan massiv');
S:=0;
For i:=1 to n do
begin
For j:=1 to n do
begin
X[i,j]:=(50-random(100))/10;
Write(x[i,j]:8:2);
if j>i then s:=s+x[i,j];
End;
Writeln
end;
Writeln('summa elementov vyshe gl.diagonali=',s:0:2);
readkey;
End.
Объяснение кода листинга программы
- Объявлены переменные: s:real; j,i:byte; x:array [1..n,1..n] of real;
- Задано значение константы n=5.
- Заполняется массив x случайными числами в диапазоне от 0 до 50 с шагом 10.
- С помощью двух вложенных циклов ищется сумма элементов, расположенных выше главной диагонали.
- Выводится массив x.
- Выводится сумма элементов, расположенных выше главной диагонали.
- Программа ожидает нажатия клавиши для завершения работы.