Определить, сколько места занимает в динамической памяти данный массив - PascalABC.NET
Формулировка задачи:
Даны квадратная матрица A. Элементы вектора и матрицы задаются случайным образом. Размерность матрицы не ограничена (в рамках динамической памяти), задается с клавиатуры. Определить, сколько места занимает в динамической памяти данный массив, а так же определить:
1) сумму элементов по периметру матрицы и под побочной диагональю.
2) наибольшее из значений элементов первой строки и последнего столбца.
Решение задачи: «Определить, сколько места занимает в динамической памяти данный массив»
textual
Листинг программы
var a:array[,] of integer; n,i,j,sp,sd,mx:integer; begin randomize; writeln('Введите размер матрицы'); readln(n); setlength(a,n,n); writeln('Объем памяти под матрицу=',sizeof(integer)*n*n,' байт'); sd:=0; writeln('Исходная матрица'); mx:=a[0,0]; for i:=0 to n-1 do begin for j:=0 to n-1 do begin a[i,j]:=1+random(10); write(a[i,j]:3); if j>n-i-1 then sd:=sd+a[i,j];//ниже побочной диагонали if ((i=0)or(j=n-1))and(a[i,j]>mx) then mx:=a[i,j];//максимум end; writeln end; sp:=0; for i:=0 to n-2 do sp:=sp+a[0,i]+a[i,n-1]+a[i+1,0]+a[n-1,i+1];//периметр writeln('Сумма элементов периметра=',sp); writeln('Сумма элементов ниже побочной диагонали=',sd); writeln('Максимальный элемент первой строки и последнего столбца=',mx) end.
Объяснение кода листинга программы
- Объявляются переменные:
- a: массив размером n на n, заполненный случайными числами от 1 до 10
- n: размер матрицы
- i, j: индексы для обхода матрицы
- sp: сумма элементов периметра
- sd: сумма элементов ниже побочной диагонали
- mx: максимальный элемент первой строки и последнего столбца
- Задается размер матрицы
- Выводится объем памяти под матрицу
- Выводится исходная матрица
- Вычисляется сумма элементов ниже побочной диагонали
- Вычисляется максимальный элемент первой строки и последнего столбца
- Вычисляется сумма элементов периметра
- Выводится сумма элементов периметра
- Выводится сумма элементов ниже побочной диагонали
- Выводится максимальный элемент первой строки и последнего столбца
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д