21xrx.com
2025-03-24 06:16:40 Monday
文章检索 我的文章 写文章
C++输出完数
2023-06-23 07:50:45 深夜i     --     --
C++ 输出 完数

完数,又称为完全数,指一个数的所有因子(除该数本身外的其它因子)之和恰好等于该数本身。比如,6是一个完数,因为6=1+2+3,而28也是一个完数,因为28=1+2+4+7+14。

C++是一种通用的编程语言,经常被用于编写计算机程序。在C++中,我们可以编写程序来找出完数。

为了找出完数,我们需要先编写一个函数来计算每个数字的因子之和。以下是一个实现这个功能的函数:

int sum_of_factors(int n)
{
  int sum = 0;
  for (int i = 1; i < n; i++)
  {
    if (n % i == 0)
    {
      sum += i;
    }
  }
  return sum;
}

这个函数接受一个整数作为参数,并返回该整数的因子之和。

接下来,我们需要编写一个主函数来找出所有的完数。以下是一个实现这个功能的主函数:

int main()
{
  for (int i = 1; i <= 1000; i++)
  {
    if (i == sum_of_factors(i))
    
      cout << i << " ";
    
  }
  cout << endl;
  return 0;
}

这个主函数从1到1000遍历所有数字,并检查每个数字是否是完数。如果数字是完数,则将其打印出来。

在这个主函数中,我们使用了之前编写的计算因子之和的函数。如果这个函数返回的结果等于当前遍历的数字,那么说明这个数字是完数。

通过这样的方式,我们可以找出从1到1000之间的所有完数。其结果为:

6 28 496

这个程序可以扩展到更大的数字范围,甚至是在生产环境中使用。它向我们展示了如何在C++中实现一种基本的算法,并用非常简单的代码找到所有的完数。

  
  

评论区