Найти номер строки двумерного массива - Pascal
Формулировка задачи:
Люди добрые! Помогите пожалуйста! Я в Паскале СИЛЬНЫЙ новичек. Все до чего сам дошел - вот:
Найти номер строки двумерного массива A(N,M), среднее арифметическое которой (строки) минимально.
Решение задачи: «Найти номер строки двумерного массива»
textual
Листинг программы
uses crt;
var a:array[1..100,1..100] of integer;
b:array[1..100] of real;
i,j,n,m,tempi:integer;
min:real;
begin
ClrScr;
Randomize;
repeat
Write('n=');
Readln(n);
Write('m=');
Readln(m);
until (n>1) and (m>1);
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=-10+random(20);
Write(a[i,j]:4);
end;
Writeln;
end;
b[i]:=0;
for i:=1 to n do
for j:=1 to m do
b[i]:=b[i]+a[i,j];
min:=1;
for i:=1 to n do
begin
Write(b[i]/m:6:1);
if (b[i]/m)<min then
begin
min:=(b[i]/m);
tempi:=i;
end;
end;
Writeln;
Writeln('Минимальный ',min:3:1);
Writeln('Строка ',tempi);
Readln;
end.
Объяснение кода листинга программы
- Объявлены переменные:
- a: двумерный массив (100x100) целочисленного типа с инициализацией значением -10;
- b: одномерный массив (100) вещественного типа с инициализацией значением 0;
- i, j, n, m, tempi: целочисленные переменные для управления циклами.
- Циклы для заполнения массива a случайными числами от -10 до 10.
- Циклы для вычисления суммы элементов массива b.
- Цикл для поиска минимального значения в массиве b и сохранения индекса строки.
- Вывод минимального значения и индекса строки на экран.
- Ввод с клавиатуры подтверждения окончания работы программы.