我目前正在使用Matlab函數進行實驗。基本上我試圖執行上以矩陣中發現的每個值的函數,如下面的簡單示例:對每個矩陣值執行一個函數
k = [1:100];
p = [45 60 98 100; 46 65 98 20; 47 65 96 50];
p(find(p)) = getSum(k, find(p), find(p) + 1);
function x = getSum(k, f, g, h)
x = sum(k(f:g));
end
爲什麼對應的輸出矩陣值是所有3個,在爲什麼所有索引取決於第一換句話說計算的總和?
的輸出是下面的:
p =
3 3 3 3
3 3 3 3
3 3 3 3
您正在爲你的'p'矩陣中的所有元素分配一個標量('getSum'函數的輸出)的標量。 – 2014-11-03 19:59:17
你想計算什麼?看起來,你有一個4x4的k(1:100)。你想總結什麼? – chappjc 2014-11-03 20:16:18
這只是一個例子來說明爲索引任意數組的主要目的而將參數傳遞給函數的問題。我的主要目標不是執行總和,而是要實際找到一種合適的方式,通過這種方式我可以根據函數參數對數組進行索引,然後應用相應的結果(每次索引後獲得的結果(在此情況下爲總和)到每個矩陣單元。 – Bran 2014-11-03 20:30:24