1 问题

水仙花数是指一个3位数,它的每位上的数字的三次幂之和等于它本身,那么如何求出所有水仙花数呢?

2 方法

public class WaterFlower {
   public static void main(String[] args) {
       for (int i = 100; i < 1000; i++) {//循环所有的三位数进行判断
           int h = i / 100; //求取百位
           int t = i % 100 / 10; //求取十位
           int s = i % 10; //求取个位
           if(h*h*h+t*t*t+s*s*s==i){ //根据定义判断该数是否是水仙花数
               System.out.println(i+"是水仙花数"); //是的话输出该数
           }
       }
   }
}

3 结语

针对求取所有水仙花数问题,提出循环判断方法,通过实验,证明该方法是有效的,并且求出水仙花数共有四个,分别是153、370、371、407.

Logo

更多推荐