打印1到10000范围内的水仙花数。水仙花数是指一个三位数,各位数的立方和等于这个数。如153,1的立方加5的立方加3的立方等于153。这个做了很久还是没做出来。

解决方案 »

  1.   


        public static void main(String[] args) {
          
         String s;
         int temp = 0;
         for(int i=100;i<1000;i++){
         s=String.valueOf(i);
         for(int j=0;j<s.length();j++){
         temp+=(int)Math.pow(Double.parseDouble(String.valueOf(s.charAt(j))), 3);
         }
         if(i==temp){
         System.out.println(i);
         }
         temp=0;
         }
        }
      

  2.   

    最笨的方法就是用循环了。没做出来?
    for(int i=100;i<1000;i++){
    int x=i%10;//取个位数
    int y=i/100;//取百位数
    int z=(i-y*100-x)/10;
    if(x*x*x+y*y*y+z*z*z==i)
    System.out.println(i);
    }