Найти и напечатать номера столбцов матрицы, сумма элементов которых попадает в заданный интервал - 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;
- Конец выполнения программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д