水仙花数字
为什么888,101,111都不是水仙花数,都是三位数的呀。搞不懂这个原理
num = input("请输入三位数字")
num = int(num)
bw = int(num / 100)
sw = int((num - bw * 100) / 10)
gw = int((num - bw * 100 - sw *10) / 1)
print(bw)
print(sw)
print(gw)
total = bw * bw * bw + sw * sw * sw + gw * gw *gw
if total == num:
print('{}是水仙花数字'.format(num))
else:
print('{}不是水仙花数字'.format(num))
79
收起
正在回答
2回答
同学你好:
水仙花数是数学中具有代表性的数字:必须是三位数,每一位上的数字的3次幂相加的和和这个三位数相等的数叫做水仙花数。
8**3 + 8**3 + 8**3 不等于 888
1**3 + 0**3 + 1**3 不等于 101
我们只需要按照这个要求去进行逻辑的实现即可。
1 提取所输入的数字的个位、十位、百位上对应的数值
2 每个数字的3次幂相加和输入的数字比较
3 判断是否是水仙花数
如果我解决了同学的问题,请采纳!学习愉快^_^。
1.Python零基础入门
- 参与学习 人
- 提交作业 2727 份
- 解答问题 8160 个
想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星