登录论坛

查看完整版本 : 一个问题的几种解法(matlab),希望给初学者一些帮助


wmch85
2008-05-19, 17:09
问题:求和1+2+4+...+2的n次方

一、迭代法

function s=findsum(k)
if k==0
s=1;
else s=1+2*findsum(k-1);
end

二、构造等比数列

function result=dengbi_sum(q,startind,endind)
a1 =q^startind;
t=1-q^(endind-startind+1);
result= 1 * t;
result=result/(1-q);
end

三、循环法

s=0;a=0;
>> for i=0:63
a=2^i;
s=s+a;
end

都经过验证。第二种方法要感谢论坛里的一位朋友,我只是作了下修改。

说明:一般情况下,循环法和迭代等其他方法是显示不出来优劣的,但是当矩阵大时,循环法明显的要慢。