码迷,mamicode.com
首页 > 编程语言 > 详细

java例题_09 1000以内的完全数

时间:2020-02-11 17:38:05      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:个数   约数   class   java   判断   它的   就是   ash   int   

 1 /*9 【程序 9 求完数】 
 2 题目:一个数如果恰好等于它的所有因子之和,这个数就称为"完数"。
 3 例如 6=1+2+3.编程找出 1000 以内的所有完数。
 4  */
 5 
 6 /*分析
 7  * 1、完数:各个小于它的约数(真约数,列出某数的约数,去掉该数本身,剩下的就是它的真约数)的和等于它本身的自然数叫做完全数
 8  * 2、怎么找到一个数的所有因子---——-从1到n对n取余
 9  * 3、遍历1~1000,找出每个数的所有因子再求和
10  * */
11 
12 
13 
14 package homework;
15 
16 public class _09 {
17 
18     public static void main(String[] args) {
19         //声明和s,因子a
20         int s=0,a=1;
21         //遍历1~1000
22         for (int i = 1; i <=1000; i++) {
23             //遍历1~i
24             for (int j = 1; j <i; j++) {
25                 //用取余判断j是否为i的因子,如果是,将其加到和s;
26                 a=i%j;  
27                 if(a==0) {
28                     s=s+j;
29 //                    System.out.println(j+" "+a+" "+s+" "+i);
30                 }                
31             }
32             //这个i所有的因子的和是否等于i,相等则是完数
33             if(s==i) {
34                 System.out.print(i+" ");
35             }
36             s=0;  //将和s复位
37         }
38 
39     }
40 
41 }

 

java例题_09 1000以内的完全数

标签:个数   约数   class   java   判断   它的   就是   ash   int   

原文地址:https://www.cnblogs.com/scwyqin/p/12295841.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!