用python写水仙花代码
时间: 2024-11-05 13:11:35 浏览: 18
在Python中编写检查数字是否是“水仙花数”(又称“ narcissistic number”或“自恋数”)的代码非常简单。水仙花数是指那些每一位数字的立方和等于其本身的三位数。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
下面是一个简单的函数来检查输入的数字是否是水仙花数:
```python
def is_narcissistic_number(n):
# 将数字转换为字符串以便获取每个位数
str_n = str(n)
# 获取数字的位数
length = len(str_n)
# 计算各个位数的立方和
sum_of_cubes = sum(int(char)**length for char in str_n)
# 如果和等于原数字,则它是水仙花数
return n == sum_of_cubes
# 测试几个例子
numbers_to_check = [153, 370, 371, 407]
for num in numbers_to_check:
print(f"{num} 是水仙花数吗? {is_narcissistic_number(num)}")
相关问题
用python写水仙花数的代码
以下是用 Python 写水仙花数的代码:
for num in range(100, 1000):
sum = 0
temp = num
while temp:
sum += (temp % 10) ** 3
temp //= 10
if num == sum:
print(num)
使用python写水仙花
水仙花(Narcissus)是一种植物,但在编程中,指的是一个特殊的数字,它等于它的每个数字的立方和。例如,153是一个水仙花数,因为1³+5³+3³=1+125+27=153。
下面是Python代码来判断一个数字是否是水仙花数:
```python
num = int(input("请输入一个数字: "))
sum = 0
length = len(str(num))
# 计算每个数字的立方和
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** length
temp //= 10
# 输出结果
if num == sum:
print(num,"是水仙花数")
else:
print(num,"不是水仙花数")
```
你可以输入一个数字,程序将输出该数字是否是水仙花数。
阅读全文