推 profyang:你這樣其實只是一個index... 06/02 14:19
→ profyang:i = 1:5 , j = 6:10; for k=1:5 06/02 14:20
→ profyang:X(i(k),j(k)-5) = i(k) + j(k); 06/02 14:20
→ prouno:兩個變數維度都一樣的話 diag(i+j) 就好了 06/02 16:59
推 aramilcat:X = []; 06/02 17:58
→ aramilcat:for i = [1:5;6:10] 06/02 17:59
→ aramilcat: X = [ X sum(i)]; 06/02 17:59
→ aramilcat:end 06/02 17:59
→ aramilcat:diag(X) 06/02 17:59
→ aramilcat:我這樣寫會不會很多餘...QQ 我也剛初學 06/02 18:01
推 aramilcat:X = zeros(5) 06/02 18:31
→ aramilcat:for i = [1:5;6:10] 06/02 18:31
→ aramilcat: X(i(1),i(1)) = i(1) + i(2) 06/02 18:32
→ aramilcat:end 06/02 18:32
→ aramilcat:恩...這樣寫比較接近原po想要問的感覺? 06/02 18:32
推 aramilcat:因為for迴圈是依序取用變數的行向量,所以寫成矩陣形式 06/02 19:12
→ aramilcat:就可以做到你想要做的東西 06/02 19:12
→ x5825108:我大概懂我原本code的問題了 06/02 19:30
→ x5825108:我那樣寫的話 matlab 只會認第一個變數i 06/02 19:31
→ x5825108:j就會變成另一個矩陣 然後跑進迴圈和每一個i 做運算 06/02 19:32
→ x5825108:所以才會跑出那些我預期之外的數 06/02 19:32
→ x5825108:其實我只是想確認matlab可不可以這樣用才舉這個例子哈哈 06/02 19:33
→ x5825108:不過看了大家的回應我也大概懂了,感謝各位費心指導T_T 06/02 19:35