本文共 1092 字,大约阅读时间需要 3 分钟。
题目背景
所谓完数,就是其因子(不含本身)之和与本身相等的数。例如,6的因数包括1、2、3,它们的和是1+2+3=6,所以6是一個完數。
题目描述
要求找到不大於1000的完數,完數是指其所有真因子的和等於本身的數。例如,6的真因子之和正好等於6,因此它是完數。
程序示例
以下是一個示例程序,用用C++語言示意如何找出完數:
#include #include #include using namespace std;int main() { for(int i=1; i<=1000; i++) { int sum = 0; for(int j=1; j < i; j++) { if(i % j == 0) { sum += j; } } if(i == sum) { cout << i << " "; } } return 0;}Java題解
public class Main { public static void main(String[] args) { for(int i=1; i<=1000; i++) { if(fun(i)) { System.out.print(i + " "); } } } static boolean fun(int n) { int m = 0; for(int i=1; i < n; i++) { if(n % i == 0) { m += i; } } return (m == n); }}
特別注意:
转载地址:http://emuez.baihongyu.com/