matlab里多个for循环的嵌套循环语句怎么写 5
clearA=dir(fullfile('E:\2007\','*.dat'));Leng=length(A);B=zeros(1,Leng);fori=1:LengSB...
clear
A = dir(fullfile('E:\2007\','*.dat'));
Leng=length(A);
B=zeros(1,Leng);
for i=1:Leng
SB=strcat('E:\2007\',A(i).name)
file_name{i} =SB;
temp=load (file_name{i});
hei=file_name{i}(:,3);
ph=file_name{i}(:,4);
nn=length(hei);
for i=2:nn
x=(hei(i)-hei(i-1))/(ph(i)-ph(i-1))
if(x<-157)
csvwrite('E:\2007\b.txt',x)
end
end
end
为什么我的代码只执行了第一个循环 只能输出文件名 展开
A = dir(fullfile('E:\2007\','*.dat'));
Leng=length(A);
B=zeros(1,Leng);
for i=1:Leng
SB=strcat('E:\2007\',A(i).name)
file_name{i} =SB;
temp=load (file_name{i});
hei=file_name{i}(:,3);
ph=file_name{i}(:,4);
nn=length(hei);
for i=2:nn
x=(hei(i)-hei(i-1))/(ph(i)-ph(i-1))
if(x<-157)
csvwrite('E:\2007\b.txt',x)
end
end
end
为什么我的代码只执行了第一个循环 只能输出文件名 展开
4个回答
2015-04-06 · 知道合伙人互联网行家
关注
展开全部
不知道参数具体数值无法运行,这里给你指出编程错误。
1
2
3
4
5
6
7
8
9
10
if s1>s2
for i=150:15:0;%应修改为i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
%这里你是否只需画一幅图?根据你的表达退出所有循环这里要加个break
end
end%最后仍缺个end
修改程序如下:
1
2
3
4
5
6
7
8
9
10
11
if s1>s2
for i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
break
end
end
end
1
2
3
4
5
6
7
8
9
10
if s1>s2
for i=150:15:0;%应修改为i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
%这里你是否只需画一幅图?根据你的表达退出所有循环这里要加个break
end
end%最后仍缺个end
修改程序如下:
1
2
3
4
5
6
7
8
9
10
11
if s1>s2
for i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
break
end
end
end
2017-08-31
展开全部
内嵌循环用break还不行最后做个判断吧flag=1;whileflagfori=1:10ifi>9flag=0%跳出while循环break;%跳出for循环endendend
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for i=0:10 iend
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道参数具体数值无法运行,这里给你指出编程错误。
1
2
3
4
5
6
7
8
9
10
if
s1>s2
for
i=150:15:0;%应修改为i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if
abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
%这里你是否只需画一幅图?根据你的表达退出所有循环这里要加个break
end
end%最后仍缺个end
修改程序如下:
1
2
3
4
5
6
7
8
9
10
11
if
s1>s2
for
i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if
abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
break
end
end
end
1
2
3
4
5
6
7
8
9
10
if
s1>s2
for
i=150:15:0;%应修改为i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if
abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
%这里你是否只需画一幅图?根据你的表达退出所有循环这里要加个break
end
end%最后仍缺个end
修改程序如下:
1
2
3
4
5
6
7
8
9
10
11
if
s1>s2
for
i=150:-15:0
new1=AFFT(im1,i);
s10=AS(new1);
if
abs(s10-s2)<0.01
subplot(1,2,1),imshow(new1,[])
subplot(1,2,2),imshow(im2,[])
break
end
end
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询