如何使用Python在一个区间内找到阿姆斯特朗数?

如何使用Python在一个区间内找到阿姆斯特朗数?

阿姆斯特朗数,又称自恋数或水仙花数,是指一个n位数字的立方和等于该数字本身的数。如153就是一个阿姆斯特朗数,因为1^3+5^3+3^3=153。阿姆斯特朗数一般指三位数的情况,但其实阿姆斯特朗数也有其他位数的情况,例如四位数的情况下1634就是一个阿姆斯特朗数。

本篇文章将介绍如何使用Python在一个区间内找到阿姆斯特朗数。

阅读更多:Python 教程

解法

我们可以使用循环来遍历区间内的所有数字,再使用公式来判断数字是否为阿姆斯特朗数。具体步骤如下:

1.输入数字区间的起始和结束值,保存到变量startend中。

start = int(input("请输入数字区间起始值:"))
end = int(input("请输入数字区间结束值:"))

2.使用for循环遍历区间内所有数字。

for num in range(start, end+1):
    pass

3.使用循环判断位数,计算出每个位数的数字。同时,使用公式计算每个位数的立方和。

num_str = str(num)
n = len(num_str)
temp_sum = 0
for i in range(n):
    temp_sum += int(num_str[i]) ** n

4.判断当前数字是否等于其立方和。如果相等,则当前数字就是一个阿姆斯特朗数。

if num == temp_sum:
    print(num)

完整代码如下:

start = int(input("请输入数字区间起始值:"))
end = int(input("请输入数字区间结束值:"))

for num in range(start, end+1):
    num_str = str(num)
    n = len(num_str)
    temp_sum = 0
    for i in range(n):
        temp_sum += int(num_str[i]) ** n
    if num == temp_sum:
        print(num)

结论

使用Python,通过遍历数字区间和计算阿姆斯特朗数公式,我们可以在一个区间内找到所有的阿姆斯特朗数。以上就是如何使用Python在一个区间内找到阿姆斯特朗数的介绍,希望对您有所帮助。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程