用Python编写水仙花数,并且可以储存
时间: 2024-09-14 17:14:59 浏览: 63
在Python中,水仙花数是一种特殊的三位数,其各位数字立方之和等于它自身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。下面是一个简单的函数来检查并存储水仙花数:
```python
def check_s Narcissistic_number(num):
# 将数字转换为字符串以便计算每一位的立方
str_num = str(num)
# 确保输入是三位数
if len(str_num) != 3 or not str_num.isdigit():
return False
# 计算每位立方和
sum_of_cubes = sum(int(digit) ** 3 for digit in str_num)
# 如果和等于原数,就是水仙花数,返回True;否则返回False
return num == sum_of_cubes
# 定义一个列表来存储找到的水仙花数
narcissistic_numbers = []
# 循环从最小的三位数到最大的三位数
for i in range(100, 1000):
if check_s Narcissistic_number(i):
narcissistic_numbers.append(i)
# 打印所有的水仙花数
print("水仙花数有:", narcissistic_numbers)
相关问题
用python编写水仙花数
以下是在 Python 中编写水仙花数的代码示例:
```
for num in range(100, 1000):
# 分离每一位数字
digit_1 = num // 100
digit_2 = (num % 100) // 10
digit_3 = num % 10
# 判断是否是水仙花数
if (digit_1 ** 3 + digit_2 ** 3 + digit_3 ** 3) == num:
print(num)
```
这段代码使用了一个循环,从 100 到 999 遍历整个数字范围,分离每一位数字,并使用每一位数字的立方和与原数字进行比较,如果相等,则表示该数字是水仙花数。
用python打印水仙花数
可以使用以下代码来打印水仙花数:
for num in range(100, 100):
sum =
temp = num
while temp > :
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num)
阅读全文