public class PerfectNumber { public static void main(String[] args) {
for(int i = 1; i< 1000; i++) {
int k=0;
for(int j=1; j<i; j++) {

if(i/j ==0) {
    k +=j;
}
if(k==i){
System.out.print(i + String.valueOf('\t')); }

}
}
}}

解决方案 »

  1.   

    应该是这样的public class PerfectNumber { public static void main(String[] args) {
    for (int i = 1; i < 1000; i++) {
    int k = 0;
    for (int j = 1; j < i; j++) {

    float fi = i;
    float fj = j;//得到i 和j的float型
    float f = fi/fj;
    int r = (int)f;//去掉f的小数部分
    float fr = r; if (f == fr) {
    k += j;
    }
    }
    if (k == i) {
    System.out.print(i + String.valueOf('\t'));

    }
    }
    }}