Java 课程,每天解读一个简单Java之水仙花数

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

package ytr250729;

public class NarcissisticNumbers {

public static void main(String[] args) {

//打印标题

System.out.println("100-999之间的水仙花数有:");

int count=0;

for(int num=100;num<1000;num++) {

//分解百位

int hundreds = num/100;

//分解十位

int tens = (num % 100)/10;

//分解个位

int units=num % 10;

int sum=(int) ((int)(Math.pow(hundreds, 3))+Math.pow(tens, 3)+Math.pow(units, 3));

if(sum==num)

{

count++;

//输出水仙花数及其分解公式

System.out.printf("%d= %d³+ %d³+ %d³\n",num,hundreds,tens,units);

}

}

//输出统计结果

System.out.printf("\n总共找到%d个水仙花数\n",count);

}

}

相关推荐
顾漂亮25 分钟前
Token快过期的三种续期方案
java·spring·状态模式
徐同保1 小时前
tailwindcss暗色主题切换
开发语言·前端·javascript
蓝纹绿茶1 小时前
bash:**:pip:***python: 错误的解释器: 没有那个文件或目录
开发语言·python·pip
云知谷2 小时前
【经典书籍】C++ Primer 第15章类虚函数与多态 “友元、异常和其他高级特性” 精华讲解
c语言·开发语言·c++·软件工程·团队开发
START_GAME2 小时前
深度学习Diffusers:用 DiffusionPipeline 实现图像生成
开发语言·python·深度学习
牢七2 小时前
mwf攻防。
java
不爱编程的小九九2 小时前
小九源码-springboot088-宾馆客房管理系统
java·开发语言·spring boot
Evand J3 小时前
【MATLAB例程】到达角度定位(AOA),平面环境多锚点定位(自适应基站数量),动态轨迹使用EKF滤波优化。附代码下载链接
开发语言·matlab·平面·滤波·aoa·到达角度
细节控菜鸡3 小时前
【2025最新】ArcGIS for JS 实现随着时间变化而变化的热力图
开发语言·javascript·arcgis
Pluto_CSND4 小时前
Java实现gRPC双向流通信
java·开发语言·单元测试