【发布时间】:2013-12-02 23:41:45
【问题描述】:
我需要使用混合和递归方法计算无限级数的总和。这两种方法有什么区别?
下面的代码显示了我是如何做到的。我使用哪种方法?
例如,计算序列
总和 = -X -(X^2/2) -(X^3/3) -(X^4/4)....等
我会使用这个代码
sum := -x;
numerator:= x;
n := 2;
current := -x;
repeat
numerator := numerator * x;
previous := current;
current := numerator/n;
n := n + 1;
sum := sum - current;
until ( abs(previous-current) < eps )
【问题讨论】:
-
我从您的描述中假设“行”是单调递减的?如果是这种情况,请明确说明(并注意这对于系列
a_i = 1/i可能不够。关于“行”的更多细节?是geometric series? -
就个人而言,我不知道您使用的是什么方法。为什么不发布一些伪代码来帮助我们帮助您。
-
无穷大的和就是无穷大。与无穷大 + 1 = 无穷大相同。 ;-)。请改写您的问题。
-
@Vash:
1/2^i总和不是无穷大 -
@phil13131 这是一个帕斯卡代码。你有什么不能理解的?将“:=”更改为“=”,将“repeat-until”更改为“do-while”,您将获得 C 上的代码。 sum、numerator、n、current - 是浮点变量。如果对您有帮助,我当然可以将完整的代码放在这里,但我相信我将添加的只是从键盘输入变量,并向变量添加类型。