Перед вами часть кода программы ** языке Pascal. sum:=0; for i:=1 to n do for j:=1 to n...

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

Перед вами часть кода программы на языке Pascal. sum:=0; for i:=1 to n do for j:=1 to n do if (i<=j) and (i+j<=n+1) then sum:=sum+x[i,j]; writeln(sum); Результатом выполнения этого кода является: 1) сумма элементов ниже и на главной диагонали, ниже и на побочной диагонали; 2) сумма элементов выше и на главной диагонали, ниже и на побочной диагонали; 3) сумма элементов ниже и на главной диагонали, выше и на побочной диагонали; 4) сумма элементов выше и на главной диагонали, выше и на побочной диагонали.


Информатика (17 баллов) | 51 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Берётся i-й столбец и пробегается по j-й строке.
Суммирование начинается, когда j ≥ i, т.е с главной диагонали.
Суммирование в строке заканчивается, когда j ≤ (n + 1 - i), т.е заканчивается ровно на побочной диагонали. Отнимите от правого края i и увидите.

Итак, Суммируются только те элементы матрицы, которые выше и на главной диагонали, и выше и на побочной диагонали.

Ответ: 4)

(43.0k баллов)