Правильно ли работает программа по выводу нулевых строк? - Pascal ABC

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

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

Нужно найти номера строк, элементы которых равны нулю в двумерном массиве. Будет ли данная программа выводить номера этих строк?

Решение задачи: «Правильно ли работает программа по выводу нулевых строк?»

textual
Листинг программы
Var A:array[1..20,1..20] of integer;
    n,m,i,j,k,s:integer;
begin
Randomize;
write('Введите кол-во строк: ');
readln(n);
write('Введите кол-во столбцов: ');
readln(m);
For i:=1 to n do
 Begin
  For j:=1 to m do
   Begin
    A[i,j]:=random(10);
    write(A[i,j]:4);
   End;
  writeln;
 End;
 writeln('Номера строк из 0');
 k:=0;
 For i:=1 to n do
  Begin
   s:=0;
   For j:=1 to m do
   if a[i,j]=0 then s:=s+1;
   if s=m then
    begin
     write(i:3);
     k:=1;
    end;
  end;
if k=0 then writeln('Таких строк нет ')
end.

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

  1. Создается переменная A типа array[1..20,1..20] of integer. Это массив размером 20x20, который будет использоваться для хранения целых чисел.
  2. Задаются переменные n, m, i, j, k, s типа integer. Они будут использоваться в цикле.
  3. Вызывается функция Randomize, чтобы инициализировать генератор случайных чисел.
  4. Выводится сообщение Введите кол-во строк: и считывается значение переменной n.
  5. Выводится сообщение Введите кол-во столбцов: и считывается значение переменной m.
  6. В цикле for i:=1 до n (n - количество строк) выполняется следующий блок кода:
    • В цикле for j:=1 до m (m - количество столбцов) выполняется следующий блок кода:
      • Значение переменной A[i,j] присваивается случайное число от 0 до 9 (так как write(A[i,j]:4) выводит четвертое цифровое значение числа).
    • Выводится значение A[i,j].
    • Выводится символ новой строки (writeln).
  7. После завершения цикла i выводится сообщение Номера строк из 0.
  8. Переменная k инициализируется значением 0. Она будет использоваться для отслеживания первой строки, у которой все ячейки равны 0.
  9. В цикле for i:=1 до n (n - количество строк) выполняется следующий блок кода:
    • Переменная s инициализируется значением 0. Она будет использоваться для отслеживания количества строк, у которых все ячейки равны 0.
    • В цикле for j:=1 до m (m - количество столбцов) проверяется, равна ли ячейка A[i,j] нулю. Если да, то значение переменной s увеличивается на 1.
    • Если значение переменной s равно m (количество столбцов), то выполняется блок кода внутри if:
      • Выводится номер строки (i:3).
      • Значение переменной k устанавливается равным 1. Это означает, что мы нашли строку, у которой все ячейки равны 0.
  10. Если значение переменной k равно 0, то выводится сообщение Таких строк нет.
  11. Программа заканчивается.

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


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

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

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