[問題]尋找某個變數並且改變其值

看板MATLAB作者 (地獄小麥草)時間14年前 (2011/11/23 18:56), 編輯推噓1(104)
留言5則, 3人參與, 最新討論串1/1
假設我有多個矩陣 a=[1 9 3 4];b=[2 8 7 5];c=[1.5 1.5 1.5 1.5];....... c=[min(a) min(b) min(c) ........] [C1,I1]=max(d) [C2,I2]=min(d) d(I1)=C1-1 d(I2)=C2+1 因此結果如下 d=[1 2 1.5 .....] d=[2 1 1.5 .....] 只有d(1,1)跟d(1,2)有被抓出來做動作 那請問有甚麼方法可以自動改變原矩陣的所有值呢? 意思是我的c(1,1)來自a矩陣,經過運算之後1+1=2 所以我希望原本的矩陣a可以變成 a=[2 10 4 5] 而 b=[1 7 6 4] 就是我可以找到原a矩陣,並且把a矩陣其他值,跟min(a)做相同的運算 拜託各位高手了~ -- To larry1030: 又是LARRY [09/29/2008 22:57:31] 33;46m★larry1030;45m 不是 我是小柚 [09/29/2008 22:57:56] To larry1030: 我拿去當簽名檔囉 [09/29/2008 22:58:19] -- 好人四不一沒有: ╭那報告就交 ╭哇!好正! ▄←燈 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.150.94

11/23 19:16, , 1F
If min(a)>min(b),a=a-1;b=b+1;else,a=a+1;b=b-1;
11/23 19:16, 1F
謝謝你的回答~ 可能我表達的不夠清楚 你的方法可以用在兩個矩陣,但我的矩陣可能是10*10 沒辦法用if指令兩個值做比較,我需要多個值裡抓一個值出來運算,再回頭修正原本的 矩陣值 ※ 編輯: pilime 來自: 140.113.150.94 (11/23 19:39) ※ 編輯: pilime 來自: 140.113.150.94 (11/23 19:45)

11/23 21:23, , 2F
把各矩陣弄成cell array去存應該會比較方便
11/23 21:23, 2F

11/23 21:23, , 3F
a改成data{1}=[1 9 3 4]; b改成data{2}=[2 8 7 5]; ......
11/23 21:23, 3F

11/23 21:24, , 4F
d=[min(data{1}), min(data{2}), ...];
11/23 21:24, 4F

11/24 10:19, , 5F
謝謝DK大 問題解決了~
11/24 10:19, 5F
文章代碼(AID): #1EpD5w6K (MATLAB)