21xrx.com
2024-09-19 23:56:14 Thursday
登录
文章检索 我的文章 写文章
C++编程求解完数
2023-07-05 08:40:59 深夜i     --     --
C++ 编程 求解 完数 算法

完数(Perfect Number)是指一个正整数的所有因子(包括1但不包括自身)之和等于该数本身的数。

比如6是一个完数,因为6的因子为1、2、3,而1+2+3=6。

那么如何编程来求解完数呢?我们可以用C++来实现。

首先,我们需要定义一个函数来判断一个数是否为完数。该函数需要接收一个正整数作为参数,并返回一个布尔值表示该数是否为完数。实现代码如下:

bool isPerfect(int num) {

  int sum = 0;

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

    if (num % i == 0) {

      sum += i;

    }

  }

  return sum == num;

}

接下来,我们需要编写代码来输出一定范围内的完数。例如,输出 1 ~ 1000 之间的完数。实现代码如下:

int main() {

  for (int i = 1; i <= 1000; i++) {

    if (isPerfect(i))

      cout << i << " ";

  }

  return 0;

}

运行上述代码,将输出以下结果:

6 28 496

因此,我们成功求解了1 ~ 1000之间的完数。

总的来说,使用C++编程求解完数并不难。只需要定义一个函数来判断一个数是否为完数,然后编写代码来输出一定范围内的完数即可。

  
  

评论区

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