Python 程序:显示一个范围内的阿姆斯特朗数


2022年4月18日, Learn eTutorial
2181

在这个数字 Python 程序中,我们必须打印一个范围内的阿姆斯特朗数。这是一个初学者级别的 Python 程序。

要理解这个例子,您应该了解以下 Python 编程主题

如何使用 Python 打印一个范围内的阿姆斯特朗数?

我们已经讨论过什么是阿姆斯特朗数,一个等于其所有数字立方和的数。我们在检查 阿姆斯特朗数 Python 程序中讨论过它;请参阅该程序了解详细信息。

现在在这个 Python 程序示例中,我们需要打印用户给定范围内的所有阿姆斯特朗数,因此我们从用户那里获取范围并将其保存到两个变量 low up 中。现在使用 range 函数打开一个从下限到上限的 for 循环结构。然后在该 for 循环内部初始化变量 sum 并将该数字的副本保留在临时变量中。我们从给定范围中取出每个数字,并借助 while 循环,使用 运算符检查每个数字是否为阿姆斯特朗数。如果它是阿姆斯特朗数,则打印该数字并转到 for 循环中的下一个数字。

算法

步骤 1:使用 Python 编程语言中的 input 函数从用户那里获取下限和上限范围的两个数字,并将其转换为整数并保存。

步骤 2:使用 range 方法打开一个 for 循环,从下限到上限,以检查每个数字是否为阿姆斯特朗数。[注意:在 Python 的 range 函数中,我们需要使用 upper +1 才能达到上限]

步骤 3:sum 初始化为零,并将数字存储在临时变量中,它用于检查 temp sum 是否相同。

步骤 4:如果 temp 大于零,则打开 while 循环以检查该数字是否为阿姆斯特朗数。

步骤 5:现在我们使用 运算符从数字中拆分一个数字。

步骤 6:通过将该数字的 sum + 立方相加来计算 sum

步骤 7:将该数字除以 10 以删除一个数字以获取下一个数字。

步骤 8:打开一个 if 条件来检查 num 是否等于 sum,如果相等则打印 num

Python 源代码

                                          low = int(input("Enter low range: "))  
up = int(input("Enter up range: "))  
  
for num in range(low, up + 1):  
    sum = 0 
    temp = num  
    while temp > 0:  
        digit = temp % 10  
        sum += digit ** 3  
        temp //= 10  
    if num == sum:  
       print(num) 
                                      

输出

Enter low range: 100
Enter up range: 200

153