Java代码实现打印100-999之间的水仙花数

/**
 * 需求:编写代码按照要求实现以下的功能
* 	      打印100-999之间的水仙花数 譬如:153就是水仙花数(即各位数字的立方之和等于该数字就是水仙花数)
 * 要点提取:判断规则:各位数字的立方之和等于该数字   则是,否则不是
 * 思路分析:需要将这个三位数拆分成个位、十位、百位的数字,来计算各位数的立方和
 * 步骤: 1、在100-999之间遍历所有的三位数
 * 		2、用取余的办法取出个位、十位、百位
 * 		3、判断各位数字的立方之和等于该数字
 *		4、输出结果
  * 问题汇总:
 *  
* @author 海底大菠萝
* @version V.LL.1.0.1
* @date   2021年9月19日   11:23
*/
//水仙花数:个位的三次方+十位的三次方+百位的三次方 = 该数本身
public class q6_Shuixianhua {

	public static void main(String[] args) {
		//定义变量分别表示个位、十位、百位
		int a;
		int b;
		int c;
		System.out.print("100-999之间的水仙花数:");
		//遍历100-999之间的所有数
		for (int i=100 ; i<=999 ; i++) {
			//取出个位数
			a = (i%100)%10;
			//取出十位数
			b = (i%100)/10;
			//取出百位数
			c = i/100;
			//判断(个位的三次方+十位的三次方+百位的三次方) 是否 = 该数本身
			if(a*a*a + b*b*b + c*c*c == i){
				//将符合的数据输出
				System.out.print(i+"   ");
			}
		}
	}
}

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值