输入一个五位数,判断是否是水仙花数
时间: 2024-10-08 16:08:41 浏览: 21
水仙花数(也称为 narcissistic number 或 pluperfect digital invariant)是指一个 n 位正整数,其各位数字立方之和等于原数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
在 Python 中,你可以编写一个函数来检查一个五位数是否是水仙花数。这里是一个简单的实现:
```python
def is_narcissistic_number(num):
digits = [int(digit) for digit in str(num)] # 获取数字的各个位
sum_of_cubes = sum(digit ** 3 for digit in digits) # 计算各个位立方的和
return num == sum_of_cubes # 返回两者是否相等
# 测试
example1 = 153
example2 = 370
print(is_narcissistic_number(example1)) # 输出:True
print(is_narcissistic_number(example2)) # 输出:False
```
相关问题
水仙花数输入一个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,而如果不是水仙花数,则各个数字的立方和不等于它本身。
水仙花数输入一个3位数判断是不是水仙花数(三个数位上数字的立方和等于本身)。
可以使用以下代码来判断一个3位数是否为水仙花数:
num = int(input("请输入一个3位数:"))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")