
Coinius
6 год назад
Pascal ABC
В двумерном числовом массиве разномерности N*N посчитать количество единиц в квадрате со стороной длины K с правым нижним углом в строке R и столбце C
Пример ввода:
5 2 4 2
2 1 1 1 1
1 0 1 1 0
1 0 0 0 3
7 0 0 0 1
1 1 4 1 1
Пример вывода:
4
ОТВЕТЫ

Авсеевич
Jul 25, 2019
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 ((igt;(r-k)) and (ilt;=r) and (jgt;(c-k)) and (jlt;=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.
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 ((igt;(r-k)) and (ilt;=r) and (jgt;(c-k)) and (jlt;=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.
172
Смежные вопросы: