Java小白入门200例54之打印水仙花数

Posted 编程界明世隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例54之打印水仙花数相关的知识,希望对你有一定的参考价值。

作者简介

作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!

引言

很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  53.冒泡排序
►下一篇  55.购物卡使用分配问题

概念

打印所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:371是一个“水仙花数”,因为371=3的三次方+7的三次方+1的三次方。

方案1

用 for 循环递增实现

package demo.demo53;

public class Flowers {

	public static void main(String[] args) {
		 for(int i=100;i<1000;i++){
			 //获取百位
             int a=i/100;
             //获取十位
             int b=i/10%10;
             //获取个位
             int c=i%10;
             //如果 百位的立方+十位的立方+个位的立方=i 则打印
             if(i==a*a*a+b*b*b+c*c*c){
                 System.out.println("水仙花数为:"+i);
             }
         }
	}
}

运行结果

水仙花数为:153
水仙花数为:370
水仙花数为:371
水仙花数为:407

方案2

用 for 循环递减实现

package demo.demo53;

public class Flowers1 {

	public static void main(String[] args) {
		 for(int i=999;i>100;i--){
			 //获取百位
             int a=i/100;
             //获取十位
             int b=i/10%10;
             //获取个位
             int c=i%10;
             //如果 百位的立方+十位的立方+个位的立方=i 则打印
             if(i==a*a*a+b*b*b+c*c*c){
                 System.out.println("水仙花数为:"+i);
             }
         }
	}
}

运行结果

水仙花数为:407
水仙花数为:371
水仙花数为:370
水仙花数为:153

方案3

用while循环递增实现

package demo.demo53;

public class Flowers2 {

	public static void main(String[] args) {
		 int i=100;
		 while(i<1000){
			 //获取百位
             int a=i/100;
             //获取十位
             int b=i/10%10;
             //获取个位
             int c=i%10;
             //如果 百位的立方+十位的立方+个位的立方=i 则打印
             if(i==a*a*a+b*b*b+c*c*c){
                 System.out.println("水仙花数为:"+i);
             }
             i++;
         }
	}
}

运行结果:

水仙花数为:153
水仙花数为:370
水仙花数为:371
水仙花数为:407

方案4

用while循环递减实现

package demo.demo53;

public class Flowers3 {

	public static void main(String[] args) {
		 int i=999;
		 while(i>100){
			 //获取百位
             int a=i/100;
             //获取十位
             int b=i/10%10;
             //获取个位
             int c=i%10;
             //如果 百位的立方+十位的立方+个位的立方=i 则打印
             if(i==a*a*a+b*b*b+c*c*c){
                 System.out.println("水仙花数为:"+i);
             }
             i--;
         }
	}
}

运行结果:

水仙花数为:407
水仙花数为:371
水仙花数为:370
水仙花数为:153

小结

这节总结了“打印水仙花数”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。

评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  53.冒泡排序
►下一篇  55.购物卡使用分配问题

热门专栏推荐

1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java

以上是关于Java小白入门200例54之打印水仙花数的主要内容,如果未能解决你的问题,请参考以下文章

Java小白入门200例13之循环打印英文字母

Java小白入门200例30之打印全三角形

Java小白入门200例50之Java判断闰年并打印月份对应的天数

Java小白入门200例25之两个数之间的质数

Java小白入门200例目录

Java小白入门200例115之Java模拟斗地主发牌