求出所有三位数的水仙花数python代码
时间: 2024-10-23 09:16:03 浏览: 60
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。比如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是使用Python编写的一个简单程序,用于找出所有的三位水仙花数:
```python
def is_armstrong_number(num):
# 将数字转换为字符串以便取每一位
str_num = str(num)
length = len(str_num)
# 计算每一位的立方和
sum_of_cubes = sum(int(digit) ** length for digit in str_num)
return num == sum_of_cubes
# 遍历所有三位数并检查是否为水仙花数
armstrong_numbers = []
for i in range(100, 1000): # 从100到999
if is_armstrong_number(i):
armstrong_numbers.append(i)
# 输出结果
print("所有的三位水仙花数有:")
for number in armstrong_numbers:
print(number)
相关问题
三位数水仙花数的python代码
下面是求解三位数水仙花数的 Python 代码:
```python
for i in range(100, 1000):
# 将数字转为字符串,然后分离出每一位数
x = str(i)[0]
y = str(i)[1]
z = str(i)[2]
# 计算每一位数的立方和
s = int(x)**3 + int(y)**3 + int(z)**3
# 判断是否为水仙花数
if s == i:
print(i)
```
以上代码运行后将输出所有的三位数水仙花数。
python计算所有三位数水仙花数的和
三位数的水仙花数是指其各个位上数字的立方和等于该数本身。因此,我们可以通过以下代码计算所有三位数水仙花数的和:
```python
sum = 0 # 初始化和为0
for i in range(100, 1000): # 循环遍历所有三位数
num = i # 将当前数赋值给变量num
digit_sum = 0 # 初始化当前数的各位数字的立方和为0
while num > 0: # 循环计算当前数的各位数字的立方和
digit = num % 10 # 取出当前数的个位数字
digit_sum += digit ** 3 # 将当前数的个位数字的立方加到各位数字的立方和中
num //= 10 # 将当前数除以10,以便计算下一位数字的立方
if digit_sum == i: # 如果当前数是水仙花数
sum += i # 将当前数加到和中
print("所有三位数水仙花数的和为:", sum) # 输出结果
```
运行结果为:
```
所有三位数水仙花数的和为: 1301
```
阅读全文