Python打印出所有的水仙花数并判断输入的一个三位数是不是水仙花数
时间: 2023-12-08 20:57:18 浏览: 76
Python水仙花数.zip
水仙花数是指一个三位数,其各位数字立方和等于该数本身。下面是Python代码实现:
```python
# 打印出所有的水仙花数
for i in range(100, 1000):
num = str(i)
if int(num[0])**3 + int(num[1])**3 + int(num[2])**3 == i:
print(i)
# 判断输入的一个三位数是不是水仙花数
num = input("请输入一个三位数:")
if len(num) == 3 and int(num[0])**3 + int(num[1])**3 + int(num[2])**3 == int(num):
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
其中,`range(100, 1000)` 表示从 100 开始到 999 结束,因为三位数的范围是从 100 到 999。`num = str(i)` 将整数转换成字符串,方便后面取出各位数字进行立方运算。`int(num[0])**3 + int(num[1])**3 + int(num[2])**3 == i` 表示将各位数字立方后相加,判断是否等于原数。对于输入的三位数,需要先判断其长度是否为 3,然后再判断各位数字立方和是否等于原数。
阅读全文