在C ++中使用递归的序列之和1 ^ 1 + 2 ^ 2 + 3 ^ 3 + ... + n ^ n

在这个问题中,我们得到一个数字n,它定义系列1 ^ 1 + 2 ^ 2 + 3 ^ 3 +…+ n ^ n的第n个项。我们的任务是创建一个程序,将找到序列的总和。

让我们举个例子来了解这个问题,

输入项 

n = 4

输出结果

30

解释-sum =(1 ^ 1)+(2 ^ 2)+(3 ^ 3)+(4 ^ 4)= 1 + 4 + 9 + 16 = 30。

为了解决这个问题,我们将循环从1到n。找出每个数字的平方。并将每个加到sum变量中。

算法

Initialize sum = 0
Step 1: Iterate from i = 1 to n. And follow :
   Step 1.1: Update sum, sum += i*i
Step 2: Print sum.

示例

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

#include <iostream>
using namespace std;
long long calcSeriesSum(int n) {
   long long sum = 0;
   for( int i = 1; i <= n; i++ )
   sum += (i*i);
   return sum;
}
int main() {
   int n = 7;
   cout<<"Sum of the series 1^1 + 2^2 + 3^3 + ... + "<<n<<"^"<<n<<" is "<<calcSeriesSum(n);
   return 0;
}

输出结果

Sum of the series 1^1 + 2^2 + 3^3 + ... + 7^7 is 140
猜你喜欢