1

長さ n の配列があります。この配列の最初の m 個の要素 ( m<=n ) の部分和を計算できる関数はありますか?

私はこのようなことを考えました

sum(X,1:10) %returns the sum of the 10 first elements of the array

しかし、それはうまくいきません。Sum は、列全体、行全体、またはそれ以上の次元の等価物のみを計算するようです。

編集:これを行うmatlab関数があるかどうか疑問に思っていたこと-自分でプログラムすることはできますが、遅くなり、奇妙なことをする可能性があります:)

私の関数は次のようになります。

function[sum] = partialSum(X,m)
sum = 0;
for i = 1:m
    sum = sum + X(i);
end
4

1 に答える 1

7

何が欲しいのかはっきりしていません。mそれが最初の要素の合計である場合、それはこれです:

result = sum(X(1:m));

部分和のシーケンスが必要な場合は、のcumsum()代わりにを使用しsum()ます。

于 2013-03-19T21:36:43.750 に答える