[討論] 迴圈的問題

看板MATLAB作者 (SHOW HAND)時間12年前 (2012/03/25 21:36), 編輯推噓3(305)
留言8則, 4人參與, 最新討論串1/1
for jj=1:4 if(jj==2) jj=jj+10; %我想讓jj=2時執行完fprintf的動作就跳出迴圈 end fprintf('%d\n',jj); end disp('end'); 我的想法是應該會跑出 1 2 end 但是在matlab裡它卻跑出 他硬是把迴圈跑完 1 12 3 4 end 請問我跟matlab之間是有什麼誤解嗎orz... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.32.17

03/25 22:17, , 1F
誤解有好幾個 不知道該如何說起了
03/25 22:17, 1F

03/25 22:17, , 2F
首先 你的if不會有跳出迴圈的功能
03/25 22:17, 2F

03/25 22:18, , 3F
再來 你如果需要跳出迴圈 你可能需要help break
03/25 22:18, 3F

03/25 22:19, , 4F
fprintf或許可以放在if內 不過這樣不會印出1
03/25 22:19, 4F

03/25 22:21, , 5F
用來跑for的變數並無法被改變,這是matlab比較特別的地方。
03/25 22:21, 5F

03/25 22:27, , 6F
請問一下這是不是跟c的語法不太一樣?
03/25 22:27, 6F

03/25 22:49, , 7F
感謝^^ 了解問題在哪了
03/25 22:49, 7F

03/26 10:19, , 8F
何不食 while?
03/26 10:19, 8F
文章代碼(AID): #1FRnzBGS (MATLAB)