题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
package Studytest; public class Prog3 { public static void main(String [] args) { for(int i=100;i<1000;i++) { if(isLotus(i)) { System.out.print(i+" "); } } } //判断水鲜花数 private static boolean isLotus(int lotus) { int bai=0; int shi=0; int ge=0; int sum=0; int n=0; n=lotus; bai=n/100; sum=bai*bai*bai; n=n-(bai*100); shi=n/10; sum+=(shi*shi*shi); ge=n-(shi*10); sum+=(ge*ge*ge); if(lotus==sum) { return true; }else { return false; } } }
运行结果:
来源:https://www.cnblogs.com/braveym/p/10822167.html