首页 > 技术文章 > 用Java编程计算出所有的"水仙花数"

qihuan 2014-03-06 03:42 原文

题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方

程序分析:

    利用for循环控制100-999个数,每个数分解出个位,十位,百位。

   b3 = m/100;                — —  百位
   b2 = m%100/10;         — —  十位
   b1 = m%10;                — —  个位

   b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m

 

 

用java实现,代码如下:

public class test3 {

 public static void main(String[] args) {
  
  int b1,b2,b3;
  for(int m = 101; m < 1000; m++){
   b3 = m/100;
   b2 = m%100/10;
   b1 = m%10;
   
   if((b3*b3*b3 + b2*b2*b2 + b1*b1*b1) == m) {
         System.out.println(m+"是一个水仙花数"); }
  }

 }

}

 

推荐阅读