python判断是不是水仙花数
时间: 2023-09-18 07:16:25 浏览: 79
好的,您想询问如何在Python中判断一个数是否为水仙花数。水仙花数是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身。那么在Python中,可以这样判断一个数是否为水仙花数:
```python
num = int(input("请输入一个数: "))
n = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** n
temp //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
其中,使用`input()`函数获取用户输入的数。我们首先通过`len()`函数获取该数的位数,然后依次将每一位上的数字的n次幂相加,最后判断是否等于该数本身。如果等于,则说明它是一个水仙花数,否则不是。
请问您还有其他问题需要我回答吗?
相关问题
python判断一个数是不是水仙花数
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是Python代码,用于判断一个数是否为水仙花数:
num = int(input("请输入一个三位数:"))
sum =
temp = num
while temp > :
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
Python判断水仙花数
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。
可以使用 Python 编写一个程序来判断一个三位数是否为水仙花数:
```python
num = int(input("请输入一个三位数: "))
# 分解出个位、十位、百位
a = num // 100
b = num % 100 // 10
c = num % 10
# 判断是否为水仙花数
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
这个程序首先让用户输入一个三位数,然后将其分解为个位、十位和百位上的数字。接着,它计算出这些数字的立方和,如果立方和等于原数,就说明这是一个水仙花数,否则不是。