[問題]陣列運算問題

看板MATLAB作者 (Phil)時間11年前 (2014/01/08 09:35), 編輯推噓1(104)
留言5則, 4人參與, 最新討論串1/2 (看更多)
各位大大好, 我輸入 [x,y]=meshgrid(1:1:5,1:1:5) 之後 可以得到x,y兩個5x5的矩陣 (共25個格子點) 現在我想要進行運算,對應的格子點若 x+y> 10,z=1,其餘z=0, 最後的z也是一個對應x,y的5x5矩陣, 請問怎麼表示才能直接用陣列進行運算? 我輸入 if x(:,:)+y(:,:)>10 z(:,:)=1 else z(:,:)=0 end 但是跑不出答案... 請高手幫我解惑,非常感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.1.136

01/08 10:32, , 1F
z=x+y; z(z>10)=1; z(z~=1)=0;
01/08 10:32, 1F

01/08 10:34, , 2F
抱歉,應該先設0才對 z(z<=10)=0; z(z~=0)=1;
01/08 10:34, 2F

01/08 10:44, , 3F
z=double(x+y>10) 不過你舉的例子x+y不會大於10喔
01/08 10:44, 3F

01/08 10:53, , 4F
e大這招好用!
01/08 10:53, 4F

01/08 13:27, , 5F
太神了XD 感謝各位高手!
01/08 13:27, 5F
文章代碼(AID): #1IpAjm98 (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1IpAjm98 (MATLAB)