水仙花数代码Python
时间: 2024-09-24 14:01:12 浏览: 37
水仙花数(Narcissistic number)是指一个n位正整数,其各位数字的n次幂之和等于原数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
以下是一个简单的Python代码示例,用于检查一个数是否为水仙花数:
```python
def is_narcissistic_number(n):
# 将数字转换成字符串并分割成单个字符
str_num = str(n)
length = len(str_num)
# 计算每个数字的幂并求和
sum_of_powers = sum(int(char) ** length for char in str_num)
# 如果和等于原始数,则返回True,否则False
return n == sum_of_powers
# 测试几个例子
print(is_narcissistic_number(153)) # 输出:True
print(is_narcissistic_number(370)) # 输出:True
print(is_narcissistic_number(371)) # 输出:True (最小的三位水仙花数)
print(is_narcissistic_number(9474)) # 输出:True
```
使用这段代码,你可以检查任意给定的正整数是否为水仙花数。如果你有特定的数值想要测试,可以直接传入这个函数即可。
相关问题
水仙花数代码编程python
以下是Python中判断水仙花数的代码:
```python
for i in range(100, 1000):
# 将数字转换为字符串,然后分离出每个数字
num_str = str(i)
a = int(num_str[0])
b = int(num_str[1])
c = int(num_str[2])
# 判断是否为水仙花数
if a**3 + b**3 + c**3 == i:
print(i)
```
该代码使用了for循环,遍历100到999之间的所有三位数。然后将每个数字转换为字符串,再将其分离为三个数字。最后判断这三个数字的立方和是否等于原数字,如果是,则输出该数字。
水仙花数python 代码
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。比如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是一个 Python 代码示例:
```python
for num in range(100, 1000):
# 将数字转化为字符串,然后取出每个字符,转化为数字
x = int(str(num))
y = int(str(num)[1])
z = int(str(num))
if num == x**3 + y**3 + z**3:
print(num)
```
阅读全文