使用Java在控制台输出所有的水仙花数并统计其个数。
先说一下这个思路
-
首先要知道什么是水仙花数,水仙花数就是三位数,但是不是全部的三位数都是水仙花数。
水仙花数的个位的立方+十位的立方+百位的立方=这个水仙花数
我们来举一个实际的例子,三位数371就是一个水仙花数。
371=个位的立方+十位的立方+百位的立方
371=111+777+333
因此我们可以判断出371是一个水仙花数。
三位数的范围是100-999 -
根据上述的分析,敲代码
class Demo{
public static void main(String[] args){
int count=0; //初始化个数值
for(int x=100;x<1000;x++){
int ge = x % 10; //个位 % 整除取余
int shi = x / 10 % 10; //十位
int bai = x / 10 / 10 % 10; //百位
//判断是否满足水仙花数的条件
if(x == ge*ge*ge+shi*shi*shi+bai*bai*bai){
System.out.println(x); //打印输出水仙花数
count++; //统计水仙花数的个数
}
}
System.out.println("水仙花数共有"+count+"个");
}
}
运行结果如图:
我们可以看到水仙花数只有4个,分别是153、370、371、407.
如果有什么更好的方法,可以私信我哟~ ,我们一起讨论~