pascal马鞍数
答案:1 悬赏:10 手机版
解决时间 2021-12-03 22:31
- 提问者网友:末路
- 2021-12-03 08:03
pascal马鞍数
最佳答案
- 五星知识达人网友:行路难
- 2021-12-03 08:47
我看了一下你的程序,发现有许多问题,以下是我改的
var i,j,n,m,l,k,s:longint;
pd,pp:boolean;
a:array[1..100,1..100] of integer;
begin
read(n);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]); //读入
for i:=1 to n do //判断马鞍数
begin
l:=0; m:=a[i,1]; pd:=true; //初始赋值
for j:=2 to n do
if m>a[i,j] then //判断一行最小的数
begin
m:=a[i,j]; l:=j; 赋值
pp:=true; //pp用来看是否进入l赋值
end;
if pp then 当l被赋值
begin
for j:=1 to n do
if mif pd=true then begin writeln(i,' ',l,' ',a[i,l]); inc(s); end;//是则输出,累加方案
end;
end;
if s=0 then writeln('no');//当方案为0,则输出no
end.追问你这个不行的 输入
5
5 6 7 8 9
4 5 6 7 8
3 4 5 2 1
2 3 4 9 0
1 2 5 4 8
输出的不是1 1 5追答对不起,搞忘了,我重新修改了一下,因该没问题了(其实你的没错,我看错了,帮你加上判断没有马鞍数的语句了)
var i,j,n,m,l,k,s:longint;
pd,pp:boolean;
a:array[1..100,1..100] of integer;
begin
read(n);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]); //读入
for i:=1 to n do //判断马鞍数
begin
l:=1; m:=a[i,1]; pd:=true; //初始赋值
for j:=2 to n do
if m>a[i,j] then //判断一行最小的数
begin
m:=a[i,j]; l:=j; //赋值
end
begin
for j:=1 to n do
if mif pd=true then begin writeln(i,' ',l,' ',a[i,l]); inc(s); end;//是则输出,累加方案
end;
end;
if s=0 then writeln('no');//当方案为0,则输出no
end.
var i,j,n,m,l,k,s:longint;
pd,pp:boolean;
a:array[1..100,1..100] of integer;
begin
read(n);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]); //读入
for i:=1 to n do //判断马鞍数
begin
l:=0; m:=a[i,1]; pd:=true; //初始赋值
for j:=2 to n do
if m>a[i,j] then //判断一行最小的数
begin
m:=a[i,j]; l:=j; 赋值
pp:=true; //pp用来看是否进入l赋值
end;
if pp then 当l被赋值
begin
for j:=1 to n do
if mif pd=true then begin writeln(i,' ',l,' ',a[i,l]); inc(s); end;//是则输出,累加方案
end;
end;
if s=0 then writeln('no');//当方案为0,则输出no
end.追问你这个不行的 输入
5
5 6 7 8 9
4 5 6 7 8
3 4 5 2 1
2 3 4 9 0
1 2 5 4 8
输出的不是1 1 5追答对不起,搞忘了,我重新修改了一下,因该没问题了(其实你的没错,我看错了,帮你加上判断没有马鞍数的语句了)
var i,j,n,m,l,k,s:longint;
pd,pp:boolean;
a:array[1..100,1..100] of integer;
begin
read(n);
for i:=1 to n do
for j:=1 to n do
read(a[i,j]); //读入
for i:=1 to n do //判断马鞍数
begin
l:=1; m:=a[i,1]; pd:=true; //初始赋值
for j:=2 to n do
if m>a[i,j] then //判断一行最小的数
begin
m:=a[i,j]; l:=j; //赋值
end
begin
for j:=1 to n do
if mif pd=true then begin writeln(i,' ',l,' ',a[i,l]); inc(s); end;//是则输出,累加方案
end;
end;
if s=0 then writeln('no');//当方案为0,则输出no
end.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯