В матрице найти строку с наибольшей суммой элементов - Pascal ABC
Формулировка задачи:
Дан целочисленный квадратный массив 7х7. Найти строку с наибольшей суммой элементов.
Решение задачи: «В матрице найти строку с наибольшей суммой элементов»
textual
Листинг программы
- const n = 7;
- Var a:array[1..n,1..n] of integer; i,j,ts,smax,nmax:integer;
- Begin
- Randomize;
- smax:=0;
- For i:=1 to n do
- Begin
- For j:=1 to n do
- a[i,j]:=random(100)-50;
- End;
- For i:=1 to n do
- Begin
- For j:=1 to n do
- begin
- write( a[i,j], ' ');
- end;
- writeln;
- End;
- smax := -1000;
- nmax:=0;
- For i:=1 to n do
- Begin
- ts:=0;
- For j:=1 to n do
- begin
- ts := ts + a[i,j];
- end;
- if smax < ts then
- begin
- smax := ts;
- nmax := i;
- end;
- End;
- Writeln('max stroka: ',nmax,' summa:',smax);
- End.
Объяснение кода листинга программы
- Переменная n инициализируется значением 7.
- Создается переменная a типа array[1..n,1..n] of integer.
- Инициализируются три переменные: i, j и ts.
- Инициализируется переменная smax значением 0.
- Запускается цикл For i:=1 до n do, внутри которого запускается вложенный цикл For j:=1 до n do. Внутри вложенного цикла каждому элементу a[i,j] присваивается случайное значение от 0 до 100.
- После окончания вложенного цикла выводится информация о каждом элементе матрицы a[i,j].
- Переменная smax обновляется, если текущая сумма элементов a[i,j] больше предыдущей.
- Переменная nmax инициализируется значением 0.
- Запускается цикл For i:=1 до n do, внутри которого запускается вложенный цикл For j:=1 до n do. Внутри вложенного цикла переменная ts инициализируется значением 0.
- Внутри вложенного цикла переменная ts увеличивается на сумму a[i,j].
- Если текущая сумма a[i,j] больше предыдущей, то обновляется переменная smax и переменной nmax присваивается значение i.
- По окончании внешнего цикла выводится информация о максимальной строке и ее сумме.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д