从零开始学python | 如何在Python中最好地实现Armstrong数?
Python很容易成为目前最流行和可识别的编码平台之一。凭借其强大的功能和多功能性,从业余爱好者到专业人士,每个人都将Python用作编程的主要选择语言。话虽这么说,我们从顾客那里得到的最普遍的要求之一就是如何用Python编写Armstrong数的程序。尽管这对于熟悉这种语言的人来说似乎很容易,但是仍有很多技术可能会错过。因此,在本文中,我们将更多地讨论Python中的Armstrong数以及如何在Python中为该代码编写程序。
本文将介绍以下指针,
- Armstrong Number In Python
- What Is An Armstrong Number?
- Program To Check Armstrong Number Of N Digits
Python中的阿姆斯特朗数
什么是阿姆斯特朗号?
既然您知道阿姆斯壮数字是什么,让我们探索如何用Python编写同样的程序。
用最简单的术语来说,阿姆斯特朗数字可以定义为整数,其数字的立方之和等于数字本身。阿姆斯特朗数的示例可以是371,在计算时可以将其分解为3 ** 3 + 7 ** 3 + 1 ** 3 = 371。
继续阅读有关Python中的Armstrong Number的文章,
Python中的Armstrong编号程序
为了用Python编写Armstrong数字程序,您首先需要了解Python if…else语句以及Python while Loop。
- Python if…else语句:Python if…else语句可以简单地定义为一段代码,仅在满足特定条件时才需要生成结果时使用。例如,如果a等于b,则打印c。
- Python while循环:另一方面,Python while循环是一段代码,当需要重复运行某个代码块直到某个条件为真时使用。例如,如果a等于be,则打印c 10次。
既然您已经知道Python if…else语句以及Python,而Loop确实使我们了解了Python中用于Armstrong编号的程序的外观。
# Python program to check if the number provided by the user is an Armstrong number or not
# take input from the user
num = int(input("Enter a number: "))
# initialize sum
sum = 0
# find the sum of the cube of each digit
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
# display the result
if num == sum:
print(num,"is an Armstrong number")
else:
print(num,"is not an Armstrong number")
为了更好地探索上面的示例,让我们接受两个输入。
出现提示时,输入1: 663。
结果: 663不是阿姆斯壮数字。
出现提示时,输入2: 407。
结果: 407是一个阿姆斯特朗数。
在以上两种输入中,我们可以选择要求用户输入他们选择的数字,然后分析该数字是否为阿姆斯特朗数字。
为了分析某个输入是否为阿姆斯特朗数,我们需要将输入分解为单个数字,计算每个数字的立方,然后将它们全部加在一起。为了在编码的背景下实现这一点,我们使用了模运算符(%运算符)。在上面的示例中,数字除以10后的余数是该数字的最后一位。我们使用指数运算符获取多维数据集。
在最后一步,我们将我们的结果与输入的原始数字的结果进行比较,并确定是否为阿姆斯特朗数字。
继续阅读有关Python中的Armstrong Number的文章,
Program to check Armstrong number of n digits
num = 1634
# Changed num variable to string,
# and calculated the length (number of digits)
order = len(str(num))
# initialize sum
sum = 0
# find the sum of the cube of each digit
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** order
temp //= 10
# display the result
if num == sum:
print(num,"is an Armstrong number")
else:
print(num,"is not an Armstrong number")
在上面的程序中,我们已经将输入共享为1634。因此,程序现在将检查1634是否为Armstrong号码。您可能已经猜到了,数字1634不是阿姆斯特朗数字,因此上面的程序打印出来,数字1634不是阿姆斯特朗数字。
- 点赞
- 收藏
- 关注作者
评论(0)