作者suzihao (ISMY)
看板MATLAB
标题[问题]for回圈的条件式变数可否改变?
时间Mon May 13 02:20:01 2013
例如
k=0;
for i=1:100
k(i)=i+1;
if (k/5)==0
i=i+3;
end
end
也就是说我希望if条件发生後i会自动往後跳3
然後下一个进入for回圈的i是i+3
可是我试过不会动 他还是乖乖地每次跳i+1
请问我该怎麽改写?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 112.105.169.104
1F:→ jatj:因为你K/5==0根本没有成立过 你应该想用mod(k,5)或rem(k,5)吧 05/13 02:27
2F:→ suzihao:Sorry 我那个k/5那个只是举例,我只是想要当那个if成立後 05/13 02:32
3F:→ suzihao:下面的i值能改变for回圈的i 05/13 02:32
4F:推 sunev:matlab 的for loop index是无法被改变的,这是feature 05/13 03:05
5F:→ jatj:真的要改可以用while loop 05/13 05:14
6F:推 profyang:或用break跳出 05/13 23:11
7F:推 TETZ:可以for i=1:3:100 等於每次加3一直到100 但就是break 05/14 13:19
8F:→ TETZ:再用另一个for跑吧 05/14 13:19
9F:→ jatj:通常是不建议改for loop 的counter的... 05/14 14:38
10F:推 samcheery:用continue跟mod应该可以完成 05/18 14:01