Найти сумму элементов в тех строках которые содержат хотя бы один отрицательный элемент - Pascal ABC
Формулировка задачи:
Дано матрицу размером 4х4. Найти сумму элементов в тех строках которые содержат хотя бы один отрицательный элемент
Решение задачи: «Найти сумму элементов в тех строках которые содержат хотя бы один отрицательный элемент»
textual
Листинг программы
const
n = 4;
var a:array[1..n,1..n] of integer;
i, sum, j, abssum: integer;
begin
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=-9 + random(18);
write(a[i,j]:3);
end;
writeln;
end;
for i:=1 to n do
begin
sum:=0;
abssum:=0;
for j:=1 to n do
begin
sum:=sum+a[i,j];
abssum:=abssum + abs(a[i,j]);
end;
if sum <> abssum then
writeln(' Сумма элементов строки ', i,' = ', sum);
end;
end.
Объяснение кода листинга программы
- В начале кода объявляются все необходимые переменные: n (количество строк), a (массив для хранения чисел), i (индекс строки), sum (сумма чисел в текущей строке), j (индекс элемента в строке), abssum (абсолютное значение числа в текущей строке).
- Затем идет вывод исходного массива, который заполняется случайными числами от -9 до 9.
- Далее происходит цикл по каждой строке массива.
- Внутри этого цикла инициализируются две переменные: sum и abssum. Первая переменная инициализируется как 0, а вторая как 0.
- Затем начинается внутренний цикл, который проходит по каждому элементу в текущей строке.
- Внутри этого внутреннего цикла к переменной sum прибавляется значение текущего элемента, а к переменной abssum добавляется абсолютное значение текущего элемента.
- После окончания внутреннего цикла проверяется условие: если сумма чисел в строке отличается от абсолютного значения хотя бы одного числа, то выводится сообщение с номером строки и значениями переменных sum и abssum.
- После завершения цикла по строкам выводится сообщение о том, что сумма элементов строки равна абсолютному значению хотя бы одного числа.