procedure MatInput(M:array[,] of integer); begin var nr:=Length(M,0); var nc:=Length(M,1); WritelnFormat('Введите построчно массив размером {0}x{1}',nr,nc); for var i:=0 to nr-1 do for var j:=0 to nc-1 do Read(M[i,j]); end;
function S(M:array[,] of integer):integer; begin Result:=0; var Zero:integer; for var i:=0 to Length(M,0)-1 do begin Zero:=1; for var j:=0 to Length(M,1)-1 do if M[i,j]=0 then begin Zero:=0; Break end; Result+=Zero; if Result=1 then begin Result:=0; Exit end end; Result:=1 end;
begin var A:=new integer[3,4]; MatInput(A); var B:=new integer[3,3]; MatInput(B); Writeln(S(A)); Writeln(S(B)); end.
#include <iostream>
using namespace std;
int main(){
long long x1,x2,y,y2;
cout<<"Enter x1:";
cin>>x1; // вводим начальную координату по горизонтали
cout<<"Enter y1:";
cin>>y; // вводим начальную координату по вертикали
cout<<"Enter x2:";
cin>>x2; // вводим конечную координату по горизонтали
cout<<"Enter y2:";
cin>>y2; // вводим координату координату по вертикали
if(x1 - y == x2 - y2 || x1 + y == x2 + y2){
cout << "YES";
}
else{
cout << "NO";
}
}
else{
cout << "NO";
}
}
procedure MatInput(M:array[,] of integer);
begin
var nr:=Length(M,0);
var nc:=Length(M,1);
WritelnFormat('Введите построчно массив размером {0}x{1}',nr,nc);
for var i:=0 to nr-1 do
for var j:=0 to nc-1 do
Read(M[i,j]);
end;
function S(M:array[,] of integer):integer;
begin
Result:=0;
var Zero:integer;
for var i:=0 to Length(M,0)-1 do begin
Zero:=1;
for var j:=0 to Length(M,1)-1 do
if M[i,j]=0 then begin Zero:=0; Break end;
Result+=Zero;
if Result=1 then begin Result:=0; Exit end
end;
Result:=1
end;
begin
var A:=new integer[3,4]; MatInput(A);
var B:=new integer[3,3]; MatInput(B);
Writeln(S(A));
Writeln(S(B));
end.
Тестовое решение:
Введите построчно массив размером 3x4
1 2 3 4
5 6 7 8
9 0 1 2
Введите построчно массив размером 3x3
1 2 0
2 0 1
0 1 0
0
1