python 输出·4位数水仙花数
时间: 2024-10-15 09:29:52 浏览: 8
在Python中,水仙花数是指一个三位数,其各位数字立方和等于它本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
如果你想要编写一个函数找出所有四位数的水仙花数,可以按照以下步骤:
```python
def find_water_lily_numbers(n):
# 遍历所有四位数
for num in range(1000, 10000):
# 分解出千位、百位、十位和个位
digits = [int(digit) for digit in str(num)]
# 计算各位立方之和
sum_of_cubes = sum([digit**3 for digit in digits])
# 判断是否为水仙花数
if sum_of_cubes == num:
print(num)
# 执行查找
find_water_lily_numbers()
```
当你运行这个程序,它将打印出所有的四位水仙花数。
相关问题
python输出3位数的水仙花数。编写程序,输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。 (格式提示:每行输出一个水仙花数)
好的,下面是Python程序的实现:
```python
for num in range(100, 1000):
# 计算各位数字的立方和
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
# 判断是否为水仙花数
if num == sum:
print(num)
```
程序解释:
1.使用`for`循环遍历100到1000之间的每一个数字。
2.使用`while`循环计算每个数字的各位数字的立方和。
3.判断是否为水仙花数,如果是,则输出该数字。
输出结果:
```
153
370
371
407
```
利用python输出所有的水仙花数。 水仙花数:是一个3位数,该数字每个位上数字的立方之和正好等于它本身
代码如下:
```python
for i in range(100, 1000):
num = str(i)
sum = 0
for j in num:
sum += int(j) ** 3
if sum == i:
print(i)
```
输出结果为:
```
153
370
371
407
```
阅读全文