Найти сумму элементов матрицы, расположенных выше побочной диагонали - Pascal ABC
Формулировка задачи:
Задан двухмерный массив целых чисел А размером М на N. Найти сумму элементов, расположенных выше побочной диагонали.
дякую
Решение задачи: «Найти сумму элементов матрицы, расположенных выше побочной диагонали»
textual
Листинг программы
var
A: array[1..25, 1..25] of integer;
i, j, N, S: integer;
begin
write(' N = ');
readln(N);
writeln;
S := 0;
randomize;
for i := 1 to N do
begin
for j := 1 to N do
begin
a[i, j] := -100 + random(200);
write(a[i, j]:4);
{ У элементов выше побочной диагонали
сумма индексов меньше N + 1: }
if i + j < N + 1 then S := S + a[i, j]
end;
writeln;
end;
writeln;
write('Сумма элементов выше побочной диагонали: ', S)
end.
Объяснение кода листинга программы
- Создается переменная A типа array[1..25, 1..25] of integer, которая представляет собой матрицу размером 25x25.
- Задаются три переменные: i, j и N. Переменная i и j используются для прохода по строкам и столбцам матрицы, а переменная N используется для определения количества элементов в матрице.
- Инициализируется переменная S значением 0, которая будет использоваться для хранения суммы элементов выше побочной диагонали.
- Используется функция randomize для инициализации генератора случайных чисел.
- Запускается цикл for i := 1 до N do, который будет выполняться N раз (количество строк в матрице).
- Внутри цикла запускается вложенный цикл for j := 1 до N do, который будет выполняться N раз (количество столбцов в матрице).
- В каждой итерации вложенного цикла присваивается значение a[i, j] элементу матрицы, расположенному на пересечении строки i и столбца j. Значение a[i, j] генерируется случайным образом от -100 до 200.
- Выводится значение a[i, j] с помощью команды write(a[i, j]:4), где
:4указывает, что число должно быть выведено в формате с четырьмя знаками после запятой. - Если i + j < N + 1, то сумма индексов меньше N + 1, и к переменной S прибавляется значение a[i, j].
- После завершения вложенного цикла выводится значение переменной S с помощью команды write('Сумма элементов выше побочной диагонали: ', S).