Найти сумму элементов левого треугольника матрицы - Pascal ABC
Формулировка задачи:
Квадратная матрица n x n, Найти сумму элементов левого треуголника(т.е 1 столбец и 2 число 2-ого столбца)
Решение задачи: «Найти сумму элементов левого треугольника матрицы»
textual
Листинг программы
uses crt; const nmax = 20; var a: array[1..nmax, 1..nmax] of byte; n, i, j, k, p: byte; sum: integer; begin textbackground(0); textcolor(15); clrscr; randomize; repeat write('Введите размерность массива, ', nmax, ' n = '); readln(n); until n in [1..nmax]; for i := 1 to n do for j := 1 to n do a[i, j] := random(100); writeln('?б室**п ¬*ваЁж*:'); sum := 0; for i := 1 to n do begin for j := 1 to n do begin if ((j <= i) and (j <= n - i + 1)) {or ((j >= n - i + 1) and (j >= i))} then begin textcolor(10); sum := sum + a[i, j]; end else textcolor(15); write(a[i, j]:4); end; writeln; end; textcolor(15); writeln('Sum = ', sum); readln end.
Объяснение кода листинга программы
- Создается окружение для работы с графическим интерфейсом пользователя (GUI), используя библиотеку crt.
- Задаются константы и переменные:
- nmax - максимальное значение для переменной n, которое равно 20.
- n - переменная для хранения введенного пользователем размера массива.
- i, j, k, p - переменные для хранения чисел от 1 до n.
- sum - переменная для хранения суммы элементов левого треугольника матрицы.
- Пользователю предлагается ввести размерность массива от 1 до nmax.
- Генерируется случайное заполнение массива a[i, j] от 0 до 99.
- Выводится вопрос и сумма элементов левого треугольника матрицы.
- Заполняется левый треугольник матрицы sum += a[i, j].
- Выводится каждый элемент массива a[i, j] при условии, что он принадлежит левому треугольнику.
- Выводится сообщение о том, что элемент не принадлежит левому треугольнику.
- Выводится итоговая сумма всех элементов левого треугольника матрицы.