Java50道经典习题-程序3 打印水仙花数

题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 
分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。

 1 public class Prog3 {
 2     public static void main(String[] args) {
 3         System.out.println("100-999之间的水仙花数有:");
 4         for(int i=100;i<=999;i++) {
 5             int bai=i/100;        //提取百位
 6             int shi=(i/10)%10;    //提取十位
 7             int ge=i%10;        //提取个位
 8             if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai){
 9                 System.out.print(i+" ");
10             }
11         }
12     }
13 }
14 /*运行结果
15 100-999之间的水仙花数有:
16 153 370 371 407 
17 */

 

posted @ 2019-04-30 16:48  parkour高手  阅读(458)  评论(0编辑  收藏  举报