Python四位数水仙花
时间: 2023-12-25 21:28:40 浏览: 150
以下是Python实现四位数水仙花的代码:
```python
for i in range(1000, 10000):
a = i // 1000
b = i // 100 % 10
c = i // 10 % 10
d = i % 10
if i == a ** 4 + b ** + c ** 4 + d ** 4:
print(i)
```
以上代码中,我们使用了for循环遍历1000到9999之间的所有四位数,然后使用整除和取模运算符来获取每个数字的千位、百位、十位和个位数字,最后判断该四位数是否为水仙花数,如果是则输出该数。
相关问题
Python6位数的水仙花程序
在Python中,水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。如果你想编写一个函数来检查一个六位数是否为水仙花数,你需要首先将这个六位数分解成三个独立的两位数,然后分别计算这三个数字的立方和。
以下是一个简单的Python程序,它实现了这个功能:
```python
def is_hydrangea_number(num):
# 将六位数转换为字符串,并提取每一位
num_str = str(num)
first_two_digits = int(num_str[:2])
second_two_digits = int(num_str[2:4])
# 计算每个部分的立方和
cube_of_first_two = first_two_digits ** 3
cube_of_second_two = second_two_digits ** 3
# 检查剩下的最后两个数字
last_two_digits = int(num_str[-2:])
total_sum = cube_of_first_two + cube_of_second_two + last_two_digits
# 如果总和等于原始数,就是水仙花数
return total_sum == num
# 测试几个例子
test_numbers = [123456, 987654, 153]
for number in test_numbers:
print(f"{number} 是水仙花数吗? {is_hydrangea_number(number)}")
python 输出·4位数水仙花数
在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()
```
当你运行这个程序,它将打印出所有的四位水仙花数。
阅读全文