21xrx.com
2024-11-22 07:15:02 Friday
登录
文章检索 我的文章 写文章
C++程序:判断一个数是否是完数
2023-07-07 05:37:36 深夜i     --     --
C++ 完数 判断

在数学中,完数是指一个数恰好等于其所有因子(除本身以外)之和的数字。比如,6是一个完数,因为6的因子是1、2、3,而1+2+3=6。那么在C++语言中,如何判断一个数是否是完数呢?

首先,我们需要明确一个概念——因子。因子指的是能够整除一个数的数。例如,6的因子就是1、2、3和6本身。因此,我们可以使用一个循环语句来遍历一个数的所有因子,并将它们的和累加起来,然后再判断这个和是否等于这个数本身。

下面是完数的判定程序的代码实现:


#include <iostream>

using namespace std;

int main()

{

  int num, sum = 0;

  cout << "请输入一个正整数:" << endl;

  cin >> num;

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

  {

    if (num % i == 0)

    {

      sum += i;

    }

  }

  if (sum == num)

  

    cout << num << "是完数。" << endl;

  

  else

  

    cout << num << "不是完数。" << endl;

  

  return 0;

}

以上代码首先要求用户输入一个正整数,然后使用循环语句遍历该数的所有因子,并将它们的和累加到变量sum中。如果最终sum的值等于该数本身,就说明这个数是完数,否则不是完数。

通过以上代码,我们可以用C++语言判断一个数是否是完数。这种算法虽然简单,但其实也是非常实用的,特别是在计算机系统中,它可以被广泛应用到各种算法设计中。

  
  

评论区

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