21xrx.com
2025-06-26 11:12:34 Thursday
登录
文章检索 我的文章 写文章
C++代码:如何判断一个数是否为完全数
2023-07-03 16:21:05 深夜i     74     0
C++ 完全数 判断

完全数是指一个正整数的所有因子(除了它自己以外)之和等于它本身的数。如果一个数是完全数,那么也被称为完美数,它的因子之和属于数论中的一个重要研究课题。

在C++中,判断一个数是否为完全数可以使用以下代码:

#include <iostream>
using namespace std;
int main()
{
  int num, sum = 0;
  cout << "请输入一个正整数:" << endl;
  cin >> num;
  for (int i = 1; i <= num / 2; i++) {
    if (num % i == 0) {
      sum += i;
    }
  }
  if (sum == num)
    cout << num << "是一个完全数!" << endl;
   else
    cout << num << "不是一个完全数!" << endl;
  
  return 0;
}

这段代码的实现比较简单,首先输入一个正整数num,然后使用for循环找到num的所有因子并计算它们的和,最后判断和是否等于num,如果相等则输出“是一个完全数”,否则输出“不是一个完全数”。

例如,输入数字6,该程序的输出将是“6是一个完全数!”,因为数字6的因子为1、2、3,它们的和为6。而对于数字12,输出将是“12不是一个完全数!”,因为它的因子为1、2、3、4、6和它本身,和为28,不等于12。

总之,使用C++代码判断一个数是否为完全数非常简单,上述程序只需几行就能实现。如果您对数论有更深入的了解,那么您也可以尝试写出更复杂的算法来实现这个功能。

  
  

评论区