【发布时间】:2015-09-25 03:13:56
【问题描述】:
此方法将传递一个整数并返回字符串“完美”、“不足”或“丰富”。 完美数是等于不包括自身的因子之和。 如果一个数字不包括它自己的因素之和小于该数字,则该数字被认为是有缺陷的。 如果一个数不包括它自己的因素之和大于该数,则该数是丰富的。 例如,分类(6)“完美”。分类(12)“丰富” 我几乎已经写了代码,只是它只会打印“丰富。我在哪里搞砸了?
public static boolean isFactor(int a, int b){
if(b%a==0)
return true;
return false;
}
public static String classify(int n){
int sum=0;
for(int i=1; i<n; i++){
if(isFactor(i,n));
sum=sum+i;
}
if(sum==n)
return "perfect";
else if(sum<n)
return "deficient";
else return "abundant";
}
【问题讨论】:
标签: java loops for-loop primes