三位的水仙花数: 输入一个三位的正整数n, 输出100~n范围内所有的水仙花数。 用函数判断一个整数是不是水仙花数,是返回1,不是返回0。 主函数调用该函数,实现输出100~n之间的所有水仙花数。 三位的水仙花数是指,该数的三个数字立方之和等于该数本身。
时间: 2024-05-15 21:19:43 浏览: 77
水仙花数是指一个 n 位数(n ≥ 3),它的每个位上的数字的 n 次幂之和等于它本身 例如,153 是一个水仙花数,因为 1^
以下是Python代码实现:
```python
# 判断一个数是否为水仙花数
def isNarcissistic(num):
str_num = str(num) # 将整数转换为字符串
digit_sum = 0 # 初始化各位数字的立方和为0
for digit in str_num:
digit_sum += int(digit) ** 3 # 计算各位数字的立方和
if digit_sum == num: # 如果各位数字的立方和等于该数本身,则为水仙花数
return 1
else:
return 0
# 输出100~n之间的所有水仙花数
n = int(input("请输入一个三位的正整数:"))
for i in range(100, n+1):
if isNarcissistic(i):
print(i)
```
示例输出:
```
请输入一个三位的正整数:500
153
370
371
407
```
阅读全文