Определить количество столбцов матрицы, содержащих хотя бы один нулевой элемент - Pascal ABC (16805)

Узнай цену своей работы

Формулировка задачи:

Дана целочисленная прямоугольная матрица. Определить: 1) Количество столбцов, содержащих хотя бы один нулевой элемент; 2) Номер строки, в которой находится самая длинная серия одинаковых элементов. Спасибо за помощь

Решение задачи: «Определить количество столбцов матрицы, содержащих хотя бы один нулевой элемент»

textual
Листинг программы
program pr;
const n=5;
      m=10;
type mas = array [1..n, 1..m] of integer;
var a : mas;
    i,j, kol, length, maxLength, num : integer;
    flag : boolean;
begin
     writeln();
     randomize;
     for i:=1 to n do
     begin
         for j:= 1 to m do
         begin
             a[i,j]:=random(10)-5;
             write(a[i,j]:4);
         end;
         writeln();
     end;
     
     kol:=0;
     for j:=1 to m do
     begin
          flag:=false;
          for i:= 1 to n do
              if a[i,j]=0
              then flag:=true;
          if flag
          then kol:=kol+1;
     end;
     writeln();
     writeln('Кол-во столбцов, содержащих нулевой эл-т ', kol);
 
     num:=0;
     maxLength:=0;
     for i:=1 to n do
     begin
          length:=1;
          for j:=2 to m do
               if (a[i,j]=a[i,j-1]) then
               begin
                    length:=length+1;
                    if (length > maxLength) then
                    begin
                         maxLength:=length;
                         num:=i;
                    end;
               end
               else length:=1;
     end;
     writeln('Номер строки c самой дл. серией одинаковых эл-тов (', maxLength, ' шт) ', num);
end.

Объяснение кода листинга программы

  1. Создается программа на языке Pascal ABC с именем pr.
  2. В программе объявляются следующие константы: n=5 и m=10.
  3. Затем объявляется тип данных mas, который представляет собой массив целых чисел размером от 1 до n строк и от 1 до m столбцов.
  4. Переменная a присваивается значение типа mas.
  5. Далее объявляются переменные i, j, kol, length и maxLength, которые будут использоваться в цикле.
  6. Переменная flag инициализируется значением false. Она будет использоваться для отслеживания наличия хотя бы одного нулевого элемента в текущем столбце.
  7. Затем начинается цикл, который выполняется для каждого столбца матрицы.
  8. Внутри цикла проверяется каждый элемент матрицы. Если элемент равен 0, то переменная flag устанавливается в true.
  9. После проверки всех элементов столбца, если переменная flag имеет значение true, то переменная kol увеличивается на 1. Это происходит, если в столбце есть хотя бы один нулевой элемент.
  10. После завершения внутреннего цикла, переменная num присваивается значению i, так как это номер строки с самой длинной серией одинаковых элементов.
  11. Завершается программа выводом на экран количества столбцов, содержащих хотя бы один нулевой элемент, и номера строки с самой длинной серией одинаковых элементов.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5
Похожие ответы