C++程序:求1 + 1/2 + 1/3 + 1/4 + .. + 1/n的和


在这个问题中,我们给定一个数字n。我们的任务是创建一个 *C++程序来计算1 + 1/2 + 1/3 + 1/4 + .. + 1/n的和*。

**代码描述** − 在这里,我们将计算级数1 + 1/2 + 1/3 + 1/4 + .. + 1/n直到第n项的和。这个级数是调和级数。

**调和级数** 是一个级数,其倒数是一个等差级数。即,如果对于一个调和级数A1,A2,A3... An,存在一个等差级数1/A1,1/A2,1/A3。

首先,让我们举个例子来理解这个问题:

输入

n = 5

输出

2.59286

解释

和 = 1 + ½ + ⅓ + ¼ + ⅕ + ⅙ + 1/7 = 2.59286

解决方案方法

为了解决这个问题,我们将简单地使用循环,因为没有针对HP和的特定公式。

算法

**初始化** − sumVal = 0;

  • **步骤1** − 循环 i -> 1 到 n。
    • **步骤1.1** − 更新 sumVal,sumVal += 1/i。
  • **步骤2** − 打印 sumVal。

程序说明了我们解决方案的工作原理

示例

 在线演示

#include <iostream>
using namespace std;
float calcSeriesSum(int n){
   float sumVar = 0.00;
   for(float i = 1; i <= n; i++){
      sumVar += (1/i);
   }
   return sumVar;
}
int main(){
   int n = 7;
   cout<<"The sum of series till "<<n<<" is "<<calcSeriesSum(n);
   return 0;
}

输出

The sum of series till 7 is 2.59286

更新于:2020年9月16日

4K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告