作者paladin499 (芭乐丁)
看板MATLAB
标题Re: [问题]for回圈中 加入if判断式 想把值取出来
时间Sun Nov 16 12:16:49 2014
※ 引述《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://webptt.com/cn.aspx?n=bbs/MATLAB/M.1416111411.A.04C.html
1F:→ s4300026: 不需要有K回圈,当if成立,K=K+1;,K=0放最外面 11/16 14:04