1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses crt;
const nmax=20;
var a:array[1..nmax,1..nmax]ofinteger;
m,n,i,j,kp,ko:byte;
f:boolean;
begin
clrscr;
randomize;
repeatwrite('Количество строк до ',nmax,' n=');
readln(n);
until n in[1..nmax];
repeatwrite('Количество столбцов до ',nmax,' m=');
readln(m);
until m in[1..nmax];
writeln('Исходная матрица:');
for i:=1to n do
begin
for j:=1to m do
begin
a[i,j]:=random(20)-9;
write(a[i,j]:4);
end;
writeln;
end;
writeln;
f:=false;
j:=1;
while(j<<span>=m)andnot f do
begin
kp:=0;ko:=0;
for i:=1to n do
if a[i,j]>0then inc(kp)
elseif a[i,j]<<span>0then inc(ko);
if ko=kp then f:=true
else inc(j);
end;
writeln('Есть ли в матрице столбец с равным числом');
writeln('положительных и отрицательных элементов?');
write(f);
readlnend.