三位水仙花数python代码
时间: 2023-10-13 22:21:53 浏览: 69
以下是Python代码,可以生成前10个水仙花数:
```python
for i in range(100, 1000):
# 将i拆分成各位数字
x = i // 100 # 百位数
y = (i // 10) % 10 # 十位数
z = i % 10 # 个位数
# 判断是否为水仙花数
if i == x**3 + y**3 + z**3:
print(i)
```
输出:
```
153
370
371
407
```
注意,这里的代码只针对三位数的水仙花数。如果要生成更高位数的水仙花数,需要相应地修改代码。
相关问题
三位水仙花数python
以下是三个水仙花数的 Python 代码:
```python
# 第一种方法
for num in range(100, 1000):
# 将数字拆分为个位、十位和百位
digit1 = num % 10
digit2 = (num // 10) % 10
digit3 = num // 100
# 判断是否为水仙花数
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
# 第二种方法
narcissistic_nums = [num for num in range(100, 1000) if num == (num % 10) ** 3 + ((num // 10) % 10) ** 3 + (num // 100) ** 3]
print(narcissistic_nums[:3])
# 第三种方法
def is_narcissistic(num):
digit1 = num % 10
digit2 = (num // 10) % 10
digit3 = num // 100
return num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3
narcissistic_nums = list(filter(is_narcissistic, range(100, 1000)))
print(narcissistic_nums[:3])
```
这里给出了三种不同的方法来找到三个水仙花数。第一种方法使用循环和条件语句来逐个检查所有三位数,判断是否为水仙花数。第二种方法使用列表推导式,将所有水仙花数存储在列表中,并打印前三个。第三种方法定义了一个名为 `is_narcissistic` 的函数,该函数接受一个数字并返回一个布尔值,指示该数字是否为水仙花数。然后使用 `filter()` 函数和该函数来找到所有水仙花数,并将它们存储在列表中。
输出所有三位水仙花数python
好的,以下是输出所有三位水仙花数的 Python 代码:
```python
for num in range(100, 1000):
# 分解出每一位数字
digit_1 = num // 100
digit_2 = (num % 100) // 10
digit_3 = num % 10
# 判断是否为水仙花数
if num == digit_1 ** 3 + digit_2 ** 3 + digit_3 ** 3:
print(num)
```
输出结果为:
```
153
370
371
407
```
其中,153、370、371、407 就是所有的三位水仙花数。