编写函数求100~999之间的所有水仙花数
时间: 2024-05-06 17:20:38 浏览: 17
水仙花数是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身。
例如:153是一个水仙花数,因为1的3次方+5的3次方+3的3次方=153。
下面是Python代码实现:
```python
def narcissistic_number():
for i in range(100, 1000):
num = str(i)
n = len(num)
sum = 0
for j in num:
sum += int(j) ** n
if sum == i:
print(i)
```
调用该函数即可输出100~999之间的所有水仙花数:
```python
narcissistic_number()
```
输出结果为:
```
153
370
371
407
```
相关问题
用函数求100~999之间的水仙花数。
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。例如,153是一个水仙花数,因为 $1^3+5^3+3^3=153$。
下面是用 Python 编写的求解水仙花数的函数:
```python
def narcissistic_number():
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)
```
调用该函数即可输出100~999之间的所有水仙花数。
用python编写函数求100~999之间的所有水仙花数。
好的,这个问题是计算题,可以直接回答。水仙花数是指一个三位数,其各位数字的立方和等于该数本身。以下是求解水仙花数的Python函数:
def narcissistic_number():
for i in range(100, 1000):
if i == (i // 100)**3 + ((i // 10) % 10)**3 + (i % 10)**3:
print(i)
你可以尝试运行一下这个函数,它会输出100~999之间所有的水仙花数。