Комментарии к программе - Pascal ABC
Формулировка задачи:
Решение задачи: «Комментарии к программе»
textual
Листинг программы
Program tub; // Заголовок программы
const t=20; //Объявляем константу t=20
var a:array[1..t,1..t] of integer; //Объявляем двумерный массив а[1..20,1..20] из целых чисел
m,n,i,j,k,mx,imx : integer; // Объявляем переменные
begin
randomize; //Инициализируем генератор случайных чисел
repeat //Оператор цикла для проверки условия ввода данных
write('Количество строк от 2 до ',t,' m=');
readln(m); //Вводим m
until m in [2..t]; //если m входит в диапазон [2..t=20], то программа
// переходит к следующей строке программы, иначе обратно
// возвращается в начало цикла
repeat // Аналогичная ситуация, что и предыдущем цикле
write('Количество столбцов от 2 до ',t,' n=');
readln(n);
until n in [2..t];
//заполняем массив а[m,n]
for i:=1 to m do // строки
begin
for j:=1 to n do // столбцы
begin
a[i,j]:=random(50); //случайными целыми числами из интервал 0..(50-1)
write(a[i,j]:4); // и тут же выводим на печать
end;
writeln; //напечатав строку массива, переходим на новую строку экрана для печати
end;
//Находим в какой строке находится максимальное количество нечетных элементов
mx:=0;
for i:=1 to m do
begin
k:=0;
for j:=1 to n do
if odd(a[i,j]) then inc(k); //если элемент в строке нечетный,
//то k увеличиваем на 1
if k>mx then //Если количество нечетных элементов в последней считанной
begin //строке больше, чем в предыдущей, то
mx:=k; // присваиваем последнее значение k переменной mx
imx:=i; //а также номер строки
end;
end;
write('Максимальное количество нечетных=',mx,' в стороке ',imx)
end.
Объяснение кода листинга программы
- Объявляем программу tub и заголовок программы.
- Объявляем константу t=20.
- Объявляем двумерный массив а[1..20,1..20] из целых чисел.
- Объявляем переменные m,n,i,j,k,mx,imx.
- Используем оператор цикла repeat для проверки условия ввода данных.
- Вводим m и проверяем, входит ли m в диапазон [2..t].
- Повторяем шаг 6, пока m удовлетворяет условию.
- Используем оператор цикла repeat для повторения предыдущего шага.
- Вводим n и проверяем, входит ли n в диапазон [2..t].
- Повторяем шаг 9, пока n удовлетворяет условию.
- Заполняем массив а[m,n] случайными целыми числами из интервал 0..(50-1).
- Находим в какой строке находится максимальное количество нечетных элементов.
- Если количество нечетных элементов в последней считанной строке больше, чем в предыдущей, то присваиваем последнее значение k переменной mx.
- Выводим на печать максимальное количество нечетных элементов и номер строки.