用matlab求两点之间的最短距离,变量要明确给出

[复制链接]
查看11 | 回复1 | 2011-5-14 12:33:40 | 显示全部楼层 |阅读模式
function [d,r1]=floyd1(vx,vy)
b=inf;
a=[ 0 2 8 1 b b b b

2 0 6 b 1 b b b

8 6 0 7 5 1 2 b

1 b 7 0 b b 9 b

b 1 5 b 0 3 b 8

b b 1 b 3 0 4 6

b b 2 9 b 4 0 3

b b b b 8 6 3 0 ];
d=a;
vx=vx+1;
vy=vy+1;
global r;
r=a;
for i=1:8

for j=1:8

d(i,j)=a(i,j);

r(i,j)=j;

k=1;

end
end
for k=1:8
for i=1:8

for j=1:8

if d(i,k)+d(k,j)<d(i,j)

d(i,j)=d(i,k)+d(k,j);

r(i,j)=k;

end



end
end
end
r1=r-1;
fun3(vx,vy);
诸位谁能帮忙解释一下这个程序,错的修改到他可以运行

回复

使用道具 举报

千问 | 2011-5-14 12:33:40 | 显示全部楼层
请说明程序的输入输出变量,vx,vy貌似并没用用到,fun3也不是系统函数吧,另外这个函数没有return...你想实现什么功能...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行