java例题_03 水仙花数

 1 /*3 【程序 3 水仙花数】 
 2 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。
 3 例如:153 是一个"水仙花数",因为 153=1 的三次方+5 的三次方+3 的三次方。  
 4 程序分析:利用 for循环控制 100-999 个数,每个数分解出个位,十位,百位。 
 5 */
 6 
 7 /*分析
 8  * 用for循环遍历所有的三位数,再通过“/” “%”将三位数分离为三个数字再倒置组合为新的三位数,判断新的三位数是否等于原三位数,
 9  * 如果相等,则是水仙花数
10 */
11 
12 
13 package homework;
14 
15 public class _03 {
16 
17     public static void main(String[] args) {
18         // TODO Auto-generated method stub
19         //定义三个形参a,b,c分布用来表示三位数的三个组成数字
20         int a,b,c;
21         //定义两个参数分别表示原三维数和新的三位数;、
22         int n,x;
23         //利用for循环遍历所有的三位数
24         for (int i=100; i<=999; i++) {
25             n=i;  //得到原三位数
26             a=n%10; //提取个位
27             n=n/10;
28             b=n%10; //提取十位
29             c=n/10; //提取百位
30             x=a*a*a+b*b*b+c*c*c;  //组成新的三位数
31             //判断新的三位数是否等于原三位数
32             if(x==i) {
33                 System.out.print(i+"  ");
34             }
35         }
36         
37     }
38 
39 }

猜你喜欢

转载自www.cnblogs.com/scwyqin/p/12291751.html
今日推荐