首页 > 开发 > Java > 正文

Java找出1000以内的所有完数

2024-07-13 10:04:29
字体:
来源:转载
供稿:网友

完全数:(Perfect Number)又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。
需求:判断并输出1000以内的所有完全数。

题目:一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程 找出1000以内的所有完数。

public class Wanshu { public static void main(String[] args) {   int s;   for(int i=1;i<=1000;i++)   {    s=0;    for(int j=1;j<i;j++)      if(i % j==0)        s=s+j;      if(s==i)       System.out.print(i+" ");   }   System.out.println(); }}

方法二

public class PerfectNumber {    public static void main(String[] args) {     System.out.println("1000以内的所有完数有:");     for (int i = 2; i < 1000; i++) {// 遍历1000以内的所有整数       int sum = 0;// 定义和变量       for (int j = 1; j < i; j++) {         if (i % j == 0) {// 满足是i的因子,就累加           sum += j;         }       }       if (sum == i) {// 满足因子之和等于i就打印该完数         System.out.print(i + " ");       }     }   } } 

 

 

注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表