2014-03-27 54 views

回答

1

如果可以用單一功能做g用於返回標量x累積總和:

g = @(x) cumsum(cellfun(@(y) y(x), f)) 

實施例:

f{1} = @(x) x; 
f{2} = @(x) x^2; 
f{3} = @(x) x^3; 
g = @(x) cumsum(cellfun(@(y) y(x), f)) 
g(3) 
ans = 
    3 12 39 

說明:cellfun需要每個組件功能f{1}f{2}等,並返回在評估該函數的結果。每個函數的結果應該是標量。然後計算所有這些值的累計和。

+0

它沒有給我正確的答案。你能詳細說明嗎?謝謝。我發現了一個麻煩的解決方法:g = @(x)cellfun(@(f)f(x),f); gg = @(x)cumsum(g(x)給我我想要的東西。有沒有更聰明的方法來做到這一點? – Void

+0

@Void對不起,有一個錯誤。請看現在 –