在数论中,一些数字因其有趣的特性而被称作阿姆斯特朗数。这篇博客将为编程领域的初学者和对学习新知识感兴趣的人士介绍阿姆斯特朗数的基础知识。那么,让我们开始吧……
根据数论,对于任何给定数基的数字,当其各位数字之和的每一位都提高到该数字的位数次幂,并返回该数字本身时,就可以将其定义为阿姆斯特朗数。
阿姆斯特朗数也称为自恋数或完美数。
设XYZ..是一个有n位数字的自然数,数基为10(十进制数系统),这是常用的数系统。其他数系统可以是基数为2的二进制,基数为3的三进制,基数为8的八进制等等。要了解更多关于数系统的信息,请访问数系统。
XYZ.. 是阿姆斯特朗数吗?
XYZ.. 只有在以下情况下才能被认为是阿姆斯特朗数:
XYZ.. = Xn + Yn + Zn +.... => XYZ..
在这里,数字 153 是十进制数系统中的一个三位数字。
基数 10 计数计算为
= 1 x 102 + 5 x 101 +3 x 100?
= 1 x 100 + 5 x 10 + 3 x 1
= 100 + 50 + 3
= 153
现在我们来检查153是否是阿姆斯特朗数。为此,我们使用上述公式,其中n等于3。
= 13 + 53 + 33
= (1 x 1 x 1)+(5 x 5 x 5)+(3 x 3 x 3)
= 1 + 125 +27
= 153
两种情况下,我们都得到了左右两边相同的数字。因此,我们可以证明153是以10为基数的阿姆斯特朗数。
基数3的计数计算为
= 1 x 32 + 2 x 32 +2 x 30
=1 x 9 +2 x 3 + 2 x 1
= 9 + 6 + 1
= 17
现在我们来检查122是否是基数为3的阿姆斯特朗数。为此,我们使用上述公式,其中n等于3。
= 13 + 23 + 23
= (1 x 1 x 1)+(2 x 2 x 2)+(2 x 2 x 2)
= 1 + 8 + 8
= 17
两种情况下,我们都得到了17作为结果,因此我们证明122是以3为基数的阿姆斯特朗数。
从这两个例子中,我们可以推断出阿姆斯特朗数无论数制如何,始终具有相同的性质。
查看我们不同编程语言的阿姆斯特朗程序。