1.307与系列1 + 1/2 + 1/3 + 1/4 ... + 1 / n有什么关系

时间:2018-07-16 05:47:57

标签: c# math

我目前正在研究Nakov书,《 C#计算机编程基础》。在第4章中,问题12指出:

  

编写一个程序,该程序计算以下序列的和(精度为0.001):1 + 1/2-1/3 + 1/4-1/5 +…

在我看来,这是一个相对简单的问题。该级数是递减的,没有渐近线。由于值变化减小而在特定点停止环路符合AFAIC的精度要求。但是,该书的匈牙利语和英语版本中给出的解决方案均引用了1.307的模糊值(对我而言)。如下:

  

在while循环内的变量中累加序列的总和(请参见“循环”一章)。在每个步骤中,将旧总和与新总和进行比较。如果两个和Math.Abs​​(current_sum – old_sum)之差小于所需的精度(0.001),则计算应结束,因为在循环的每个步骤中,差值一直在减小并且精度在不断增加。预期结果是1.307。

有人可以解释这可能意味着什么吗?

3 个答案:

答案 0 :(得分:1)

请注意,标头包含没有限制的“谐音序列”。

但是问题正文显示了交替的符号序列,这些符号序列趋向于值2 - ln(2)

答案 1 :(得分:0)

  

预期结果为1.307。

我认为他们只是在说计算的结果是什么,所以您可以检查一下答案。

答案 2 :(得分:0)

您拥有的顺序

  

1 + 1/2-1/3 + 1/4 + ...

与Wikipedia上的Alternating Harmonic Series相同,只不过从1/2开始的符号被翻转了:

  

1-1/2 + 1/3-1/4 + ... = ln 2

,自然对数2,ln 2 = 0.693。因此,这里的1.307 = 2-ln 2。