看板 MATLAB 關於我們 聯絡資訊
※ 引述《mike6352713z (麥克非漢堡)》之銘言: : 問題是這樣的 : 我把它簡化 : a=(1 2 3;4 5 6;7 8 9);%%我已經知道大於5的有4個 : b=zeros(4,1); %%所以我創了一個0矩陣,試圖把6789這四個大於5的數抓出來 : %%以下是我的方法 但是 是失敗的 : for i=1:3; : for j=1:3; : for k=1:4 : if a(i,j)>5; : b(k,1)=a(i,j); : end : end : end : end : 這樣跑出來的結果 : 就是b裡面有4個9 雖然我知道為什麼這樣 : 可是有辦法可以把6789都抓出來嗎?? : 我應該怎麼改呢?? : 麻煩大家幫幫我! 不太懂你的問題 所以你是要把大於5的數字印出來? [i,j]=find(a>5) for k=1:length(i) a(i(k),j(k)) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.116.106 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1416111411.A.04C.html
s4300026: 不需要有K迴圈,當if成立,K=K+1;,K=0放最外面 11/16 14:04