21xrx.com
2024-12-27 20:04:59 Friday
登录
文章检索 我的文章 写文章
C++编程实现阶乘求和
2023-07-03 01:16:20 深夜i     --     --
C++ 编程 阶乘 求和 实现

在数学中,阶乘的概念是非常基础的。阶乘就是一个正整数与其所有小于等于它的正整数的积。如:4!=4*3*2*1=24。那么如何通过C++程序来实现阶乘的求和呢?

首先,我们需要使用C++编写一个阶乘函数。对于一个正整数n,其阶乘可以通过递归算法来求解。代码如下:


int factorial(int n)

{

  if (n == 1)

    return 1;

  else

    return n * factorial(n - 1);

}

接下来,我们需要编写一个函数,将n的阶乘和求出来。代码如下:


int sumFactorial(int n)

{

  int sum = 0;

  for (int i = 1; i <= n; i++)

  {

    sum += factorial(i);

  }

  return sum;

}

以上代码中,我们使用for循环来遍历1到n的所有正整数,调用阶乘函数,将每次阶乘的结果累加到sum中。最后返回sum即可。

最后,我们只需要在主函数中调用sumFactorial函数,将想要求和的阶乘数量传入即可。代码如下:


#include<iostream>

using namespace std;

int factorial(int n)

{

  if (n == 1)

    return 1;

  else

    return n * factorial(n - 1);

}

int sumFactorial(int n)

{

  int sum = 0;

  for (int i = 1; i <= n; i++)

  {

    sum += factorial(i);

  }

  return sum;

}

int main()

{

  int n = 5;//求前5个数的阶乘和

  int result = sumFactorial(n);

  cout << result << endl;

  return 0;

}

以上程序执行后,将输出前5个正整数的阶乘和:1+2+6+24+120=153。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复