龙空技术网

Java最经典面试题详解-判断一个数是不是水仙花数

小程序猿呆呆 130

前言:

今天咱们对“判断是否为水仙花数”都比较着重,大家都想要剖析一些“判断是否为水仙花数”的相关资讯。那么小编在网上收集了一些对于“判断是否为水仙花数””的相关文章,希望咱们能喜欢,各位老铁们快快来学习一下吧!

相信大家都知道水仙花这种植物,一种还算是比较好看的植物,但是你听说过一个叫做“水仙花数”的植物吗?/偷笑

今天一个朋友私信问我这个题呢,给他解决完问题之后想起了当年面试的时候被这道题给支配的恐惧,所以现在在这里给大家讲解一下这道题的解决思想与解决原理。

首先,了解题目。

所谓“水仙花数”是指这样一个数,其个位数字的立方和等于该数的本身。例如:3

71是一个“水仙花数”,371=3^3+7^3+1^3。

题目要求:输入一个三位数,输出1或0,1代表此数为水仙花数,0代表此数不是水仙花数。

接下来,整理解题思路。

要验证这个数是不是“水仙花数”,首先我们要将这个三位数拆分开。这个数百位的数字,十位的数字,个位的数字。然后将得到的每个数进行立方和的相加,并且与原数字进行对比,如果值为true,输出1;如果值为flase,输出0。

思路整理完毕,我们接下来整理代码。

1、要求程序可以接收到键盘输入的三位数字。引入Scanner类,使程序可以接受键盘输入的数字。代码如下所示

Scanner sc = new Scanner(System.in);

2、从输入的三位数中挨个取数。

取百位数:int a = num / 100;

取十位数:int b = (num / 10) % 10;

取个位数:int c = num % 10;

3、将每位数字的立方进行求和,然后与原数字进行对比。

if (a * a * a + b * b * b + c * c * c == num) { System.out.println("1");} else { System.out.println("0");}	

然后,将思路代码进行拼接,并运行测试。

这只是一个非常简单的Java面试题了,在不同的阶段,Java的面试题也不尽相同,比这道题难得也是数不胜数了,接下来的日子里,将会持续的跟大家分享不同的面试题。

请大家持续关注我,不定期更新。另外给大家准备了一份小白入门的Java小项目。通过下面的方式可以联系我,然后跟我要这个项目就可以了。

关注我,并转发收藏本文章私信“学习”即可

标签: #判断是否为水仙花数 #判断某数是否为水仙花数 #判断该数是否为水仙花数 #判断是否为水仙花数java