面试算法题5
做这些题只是为了爱好,收集供所有找工作的学生和爱好者共享。
package mymethod;
import java.util.HashSet;
import java.util.Set;
/**
* 请设计一个字符界面的程序,用来找出1-500以内的完整数,所谓完整数是指其所有因子和(包括1而不包括自身)等于自身
* 的整数,例如28=1+2+4+7+14,1,2,4,7,14都是28的因子,所以28是个完整数.
* @author acer
*/
public class Method1 {
public static void main(String[] args){
for(int i=1;i<=500;i++){
if(isFullNumber(i))
System.out.print(i+"/t");
}
}
public static boolean isFullNumber(int n){
//判断完整数
boolean boo=false;
int total=0;
for(int i=1;i<n;i++)
if(isFactor(n,i))
total+=i;
if(total==n)
boo=true;
return boo;
}
public static boolean isFactor(int n,int factor){
//判断因数
boolean boo=false;
if(n%factor==0) boo=true;
return boo;
}
}