четверг, 12 сентября 2013 г.

Определение седловой точки матрицы pascal

const n=3;
type mas=array[1..n,1..n] of integer;

procedure Vvod(var v:mas);
var i,j:integer;
begin
for j:=1 to n do
for i:=1 to n do
v[i,j]:=random(100)-50;
end;

procedure Vyvod(var v:mas);
var i,j:integer;
begin
for j:=1 to n do begin
for i:=1 to n do begin
write(v[i,j]:4);
end;
writeln;
end;
writeln;
writeln;
end;

procedure sil(var a:mas);
var f, i, j, x, strmin, r, k :integer;
begin
i:=1;
f:=0;
while (i<=n)and(f=0) do
begin
strmin:=a[i,1];
j:=2; x:=1;
while (j<=n)and(f=0) do
begin
if a[i,j]<strmin then begin strmin:=a[i,j]; x:=j; end;
inc(j);
end;
r:=0; k:=1;
while (k<=n)and(r=0) do begin
if a[k,x]>strmin then r:=1;
inc(k);
end;
if r=0 then begin writeln ('seldowaja tochta: a[',x,';',i,']=',strmin); f:=1; end;
inc(i);
end;

if f=0 then writeln('sedlowyh tochek net!');





end;

var a,b:mas;
begin
Vvod(a);
Vyvod(a);
sil(a);
end.