Pagini recente » Cod sursa (job #2778850) | Cod sursa (job #133586) | Cod sursa (job #2291016) | Cod sursa (job #2224021) | Cod sursa (job #266468)
Cod sursa(job #266468)
var i,j,k,n:byte;
a:array[1..100,1..100] of integer;
f,g:text;
procedure citire;
begin
assign(f,'royfloyd.in');
reset(f);
readln(f,n);
for i:=1 to n do begin
for j:=1 to n do read(f,a[i,j]);
readln(f);
end;
end;
procedure roy;
begin
for k:=1 to n do
for i:=1 to n do
for j:=1 to n do
if (a[i,k]<>0) and (a[k,j]<>0) and ((a[i,j]>a[i,k]+a[k,j]) or ((a[i,j]=0) and (i<>j))) then
a[i,j]:=a[i,k]+a[k,j];
end;
procedure afis;
begin
assign(g,'royfloyd.out');
rewrite(g);
for i:=1 to n do begin
for j:=1 to n do write(g,a[i,j],' ');
writeln(g);
end;
close(g);
close(f);
end;
begin
citire;
roy;
afis;
end.