Найти и напечатать номера столбцов матрицы, сумма элементов которых попадает в заданный интервал - PascalABC.NET
Формулировка задачи:
в целочисленной матрице найти и напечатать номера столбцов сумма элементов которых попадает в заданный отрезок [a,b]
Решение задачи: «Найти и напечатать номера столбцов матрицы, сумма элементов которых попадает в заданный интервал»
textual
Листинг программы
Var h,w:integer; i,j:integer; min,max:integer; s:integer; a:array [1..100,1..100] of integer; Begin writeln('Введите высоту и ширину матрицы: '); readln(h,w); writeln('Введите [a,b]: '); readln(min,max); //Заполнение For i:=1 to h do For j:=1 to w do a[i,j]:=Random(10); write('Номера столбцов: '); For i:=1 to w do begin s:=0; For j:=1 to h do s:=s+a[j,i]; if (s>=min) and (s<=max) then write(i,', '); end; For i:=1 to h do begin writeln; For j:=1 to w do write(a[i,j]:2); end; End.
Объяснение кода листинга программы
В данном коде на языке PascalABC.Net:
- Var h, w: integer; i, j: integer; min, max: integer; s: integer; a: array [1..100,1..100] of integer;
- Объявляются переменные для высоты и ширины матрицы (h, w), для индексов (i, j), для минимального и максимального значения (min, max) и для суммы элементов (s).
- Объявляется двумерный массив a размером 100x100 для хранения целочисленных значений.
- Begin
- Начало выполнения программы.
- writeln('Введите высоту и ширину матрицы: ');
- Пользователю предлагается ввести высоту и ширину матрицы.
- readln(h, w);
- Считываем значения переменных h и w с помощью функции readln().
- writeln('Введите [a,b]: ');
- Пользователю предлагается ввести минимальное и максимальное значение.
- readln(min, max);
- Считываем значения переменных min и max с помощью функции readln().
- For i:=1 to h do
- Заполнение матрицы случайными значениями от 0 до 9.
- For j:=1 to w do a[i,j]:=Random(10);
- Два вложенных цикла заполняют матрицу случайными значениями от 0 до 9.
- write('Номера столбцов: ');
- Выводим заголовок для списка номеров столбцов.
- For i:=1 to w do begin
- Начинаем цикл для каждого столбца.
- s:=0;
- Инициализируем переменную s для хранения суммы элементов текущего столбца.
- For j:=1 to h do s:=s+a[j,i];
- Суммируем элементы текущего столбца.
- if (s>=min) and (s<=max) then write(i,', ');
- Проверяем условие, если сумма элементов попадает в заданный интервал, выводим номер столбца.
- For i:=1 to h do begin
- Выводим список всех элементов матрицы, читая каждую строку.
- writeln;
- Переход на новую строку.
- For j:=1 to w do write(a[i,j]:2);
- Выводим значения элементов матрицы в формате двузначного числа.
- End;
- Конец выполнения программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д