Python打印出所有的水仙花数并判断输入的一个三位数是不是水仙花数
时间: 2023-12-08 12:57:18 浏览: 80
水仙花数是指一个三位数,其各位数字立方和等于该数本身。下面是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,然后再判断各位数字立方和是否等于原数。
相关问题
水仙花数输入一个3位数判断是不是水仙花数,用python
当然可以,以下是Python代码实现:
num = int(input("请输入一个三位数:"))
sum = 0
n = num
while n > 0:
digit = n % 10
sum += digit ** 3
n //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
这段代码可以判断一个三位数是否为水仙花数。如果是水仙花数,它的各个数字的立方和等于它本身,例如153=1^3+5^3+3^3,而如果不是水仙花数,则各个数字的立方和不等于它本身。
python 输入一个三位数如何判断是水仙花数
判断一个三位数是否是水仙花数,需要将这个三位数拆分为三个数字,分别计算每个数字的立方和是否等于该数本身。可以使用以下代码实现:
```
num = int(input("请输入一个三位数:"))
a = num // 100 # 百位数
b = num % 100 // 10 # 十位数
c = num % 10 # 个位数
if num == a ** 3 + b ** 3 + c ** 3:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
如果输入的数是一个三位数且满足每个数字的立方和等于该数本身,则输出该数是水仙花数,否则输出该数不是水仙花数。
阅读全文
相关推荐













