24小时热门版块排行榜    

查看: 290  |  回复: 0

minhao2015

新虫 (初入文坛)

[求助] matlab 代码找错

function [D,path,min1,path1]=floyd(a,start,terminal)
D=a;n=size(D,1);path=zeros(n,n);
for i=1:n
for j=1:n
if D(i,j)~=inf
path(i,j)=j;
end, end, end
for k=1:n
for i=1:n
for j=1:n
if D(i,k)+D(k,j)<D(i,j)
D(i,j)=D(i,k)+D(k,j);
path(i,j)=path(i,k);
end, end, end,end
if nargin==3
min1=D(start,terminal);
m(1)=start;
i=1;
path1=[ ];
while path(m(i),terminal)~=terminal
k=i+1;
m(k)=path(m(i),terminal);
i=i+1;
end
m(i+1)=terminal;
path1=m;
end  
运行脚本文件
a=[
0 4.5 inf 12.4 12.7 13.2 inf inf inf inf inf;
4.5 0 12.6 inf inf inf inf inf inf inf inf;
inf 12.6 0 5.1 inf inf inf inf inf inf 10.7;
12.4 inf 5.1 0 4.3 inf inf inf inf inf inf;
12.7 inf inf 0 0 5.2 inf inf inf inf inf;
13.2 inf inf 4.3 5.2 0 9.8 inf inf inf inf;
inf inf inf inf inf 9.8 0 2.5 infinfinf;
inf inf inf inf inf inf 2.5 0 inf inf inf;
inf inf inf inf inf inf inf inf 0 3.1 inf ;
inf inf inf inf inf inf inf inf 3.1 0 3.2;
inf inf 10.7 inf inf inf inf inf inf 3.2 0;
];
[D, path]=floyd(a)                                 运行不了,请各位大神找一下,错误代码的地方!!!三克油啦
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 minhao2015 的主题更新
信息提示
请填处理意见