定义:水仙花数是指一个3位数,它的每个数位上的数字的 3次幂之和等于它本身。
例如:153 = 1^3+5^3+3^3=1+125+27=153
题目:找出所有的水仙花数。
读题后思考:
(1)首先,水仙花数是一个三位数,那么,范围就是[100,1000)之间的整数,所以优先可以写一个循环,把100、101、102....998、999所有数字先数出来。
(2)然后对数到的每一个数字进行分离,把每一位获取到,然后再计算每一位数字的3次方,最后计算累加和。
(3)最后判断累加和的结果和原始数据是否相等,相等则输出,不相等,则跳过,再计算下一个数字。
根据《viple拓展题:分离数字》中可以知道,分离数字是可以做到的,并且,可以拿到每一位分离出来的数字进行拼接,那么,我们不再做拼接,直接将分离出来一个数字,就直接做一个3次方运算,再增加一个sum变量来计算累加和,一次性就把(1)(2)都做了。

当输入154,则结果为:

由此可以看出,153是水仙花数,154则不是水仙花数。
接下来更改一下主程序,原来是只能输入一个数字,现在需要改为

订阅专栏 解锁全文

5288

被折叠的 条评论
为什么被折叠?



