информатика

Pascal ABC В двумерном числовом массиве разномерности N*N посчитать количество единиц в квадрате со стороной длины K с правым нижним углом в строке R и столбце CПример ввода:5 2 4 22 1 1 1 11 0 1 1 01 0 0 0 37 0 0 0 11 1 4 1 1Пример вывода:4

Оставить ответ
1

Ответ №1

Program aaa;
var A: array[1..100,1..100] of integer; n,k,r,c,x: integer; i,j: byte;
begin 
 randomize;
 writeln ('Введите N, K, R, C');
 readln (n,k,c,r);
 x:=0;
 for i:=1 to n do begin
    for j:=1 to n do begin
        writeln ('Введите ',j,'-е число ',i,'-ой строки');
        readln (A[i,j]);
        //или можно ввести рандомно: A[i,j]:=random(0,1);
        if ((i>(r-k)) and (i<=r) and (j>(c-k)) and (j<=c) and (A[i,j]=1))
            then x:=x+1
    end
  end;
writeln;
// в следующем цикле выводится весь массив для наглядности
// его можно просто убрать если не нужен
      for i:=1 to n do begin
          for j:=1 to n do begin
              write (A[i,j]:3);
          end;
          writeln
      end;  
  writeln;
  writeln (x)
end.    

Знаете ответ?