package myjava;
//2016-8-22题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完数。
public class WanShu {
public static void main(String[] args) {
wanshuji(1000);
}
//判断一个数是否是完数
public static void wanshu(int count){
int shu = 0;
if(count == 1){
System.out.println("1不是完数哦");
}
for(int i = 1 ;i <count;i++ ){
if(count % i == 0){
System.out.println(i);
shu = shu +i;
}
}
if(count == shu ){
System.out.println(count+"是完数");
}else{
System.out.println(count+"不是完数");
}
}
//判断1000以内的完数
public static void wanshuji(int count){
int shu = 0;
if(count == 1){
System.out.println("1不是完数哦");
}
for(int i = 2;i<=count;i++ ){
shu = 0;
for(int j = 1;j<i;j++){
if(i%j==0){
shu = shu +j;
}
}
if(i == shu ){
System.out.println(i+"是完数");
}
}
}
}
算法每日练习之判断完数
最新推荐文章于 2022-02-01 21:21:43 发布