用python找水仙花数
时间: 2023-10-31 17:58:36 浏览: 84
水仙花数,也叫阿姆斯特朗数,是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是用Python编写的找出1-1000范围内的所有水仙花数的代码:
```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
其中153、370、371、407都是水仙花数。
相关问题
python找水仙花数
在Python中,可以通过编写代码来找到水仙花数。水仙花数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
下面是一个示例代码,用于找到指定范围内的水仙花数:
```python
def find_armstrong_numbers(start, end):
armstrong_numbers = []
for num in range(start, end + 1):
order = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** order
temp //= 10
if num == sum:
armstrong_numbers.append(num)
return armstrong_numbers
start_num = int(input("请输入起始数字:"))
end_num = int(input("请输入结束数字:"))
result = find_armstrong_numbers(start_num, end_num)
print("在指定范围内的水仙花数为:", result)
```
你可以根据需要输入起始数字和结束数字,然后运行代码即可找到指定范围内的水仙花数。
用python编写水仙花数
以下是在 Python 中编写水仙花数的代码示例:
```
for num in range(100, 1000):
# 分离每一位数字
digit_1 = num // 100
digit_2 = (num % 100) // 10
digit_3 = num % 10
# 判断是否是水仙花数
if (digit_1 ** 3 + digit_2 ** 3 + digit_3 ** 3) == num:
print(num)
```
这段代码使用了一个循环,从 100 到 999 遍历整个数字范围,分离每一位数字,并使用每一位数字的立方和与原数字进行比较,如果相等,则表示该数字是水仙花数。
阅读全文