服务器之家

服务器之家 > 正文

Java找出1000以内的所有完数

时间:2020-08-17 14:46     来源/作者:Java教程网

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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();
 }
}

方法二

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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 + " ");
      }
    }
  }
}
标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
返回顶部