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);

}

}

相关推荐
云烟成雨TD几秒前
Agent Scope Java 2.x 系列【11】中间件(Middleware):核心设计
java·人工智能·agent
ytttr8734 分钟前
航天器姿态控制 MATLAB 仿真程序
开发语言·matlab
心之伊始4 分钟前
Spring AI Chat Memory 实战:用 JDBC 给 Java Agent 加会话记忆
java·spring boot·agent·spring ai·chat memory
charlie1145141915 分钟前
嵌入式Linux驱动开发——从轮询到中断
linux·开发语言·驱动开发·嵌入式
凡人叶枫7 分钟前
Effective C++ 条款40:明智而审慎地使用多重继承
java·数据库·c++·嵌入式开发·effective c++
放弃 治疗10 分钟前
宝塔面板安装 JDK 完整教程|Java 环境配置详解
java·开发语言
工头阿乐13 分钟前
使用Conan构建现代C++项目:完整指南
开发语言·c++
至此流年莫相忘21 分钟前
Spring 依赖注入三剑客:@Autowired、@Resource 与 @RequiredArgsConstructor 深度对比与实战指南
java·数据库·spring
零陵上将军_xdr33 分钟前
为什么DCL单例要加volatile?——CPU乱序执行与内存屏障
java·linux
master33642 分钟前
python 安装pip
开发语言·python·pip