В какой из половин матрицы (верхней или нижней) больше нулевых элементов - Pascal ABC

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

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

Для матрицы А(4 строк, 5 столбцов) определить, в какой из ее половин (верхней или нижней) больше нулевых элементов (вывести одно из сообщений: "больше в верхней", "больше в нижней" или "одинаково". Для подсчета количества нулевых элементов в произвольной части матрицы использовать процедуру.

Решение задачи: «В какой из половин матрицы (верхней или нижней) больше нулевых элементов»

textual
Листинг программы
const m=4;
      n=5;
type mtr=array[1..m,1..n] of integer;
procedure zero(a:mtr;i1,i2:integer;var k:integer);
var i,j:integer;
begin
k:=0;
for i:=i1 to i2 do
for j:=1 to n do
if a[i,j]=0 then inc(k);
end;
var a:mtr;
    i,j,k1,k2:integer;
begin
randomize;
writeln('Матрица');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=-2+random(5);
    write(a[i,j]:4);
   end;
  writeln;
 end;
zero(a,1,m div 2,k1);
zero(a,m div 2+1,m,k2);
writeln('Количество нолей в верхней половине=',k1);
writeln('Количество нолей в нижней половине=',k2);
if k1>k2 then write('больше в верхней')
else if k1<k2 then write('больше в нижней')
else write('Поровну')
end.

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

  1. const m=4;
    1. const n=5;
    2. type mtr=array[1..m,1..n] of integer;
    3. procedure zero(a:mtr;i1,i2:integer;var k:integer);
    4. var i,j:integer;
    5. begin k:=0; for i:=i1 to i2 do for j:=1 to n do if a[i,j]=0 then inc(k); end;
    6. var a:mtr;
    7. i,j,k1,k2:integer;
    8. begin randomize; writeln('Матрица'); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=-2+random(5); write(a[i,j]:4); end; writeln; end; zero(a,1,m div 2,k1); zero(a,m div 2+1,m,k2); writeln('Количество нолей в верхней половине=',k1); writeln('Количество нолей в нижней половине=',k2); end.
    9. if k1>k2 then write('больше в верхней')
    10. else if k1<k2 then write('больше в нижней')
    11. else write('Поровну')
    12. end.

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


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

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

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