我有以下金额:
我在 MATLAB 中计算这个总和,如下所示:
k = 100;
count = 1;
for i1 = 0 : k
for i2 = 0 : k - i1
for i3 = 0 : k - i1 - i2
for i4 = 0 : k - i1 - i2 - i3
count = count + 1;
end
end
end
end
我的问题是如何以更自动的方式执行此操作,而无需每次使用索引手动添加 for 循环?例如,有没有办法向量化这个问题?
我想应用相同的概念,但直到
i100
,我当然不会手动添加 100 个 for 循环!那么我如何编写此 MATLAB 代码的另一个版本来帮助我对上述代码进行矢量化?
提前谢谢您!
功能
cumsum
可以重复应用:
c = 1:k+1;
for i = 1:k-2
c = cumsum(c);
end
count = sum(c) + 1;