在本节中,我们将讨论什么是阿姆斯特朗数,并创建Java 程序来检查给定的数字是否是阿姆斯特朗数。阿姆斯特朗数程序在 Java 编码面试和学术中经常被问到。
阿姆斯特朗数
阿姆斯特朗数是一个正 m 位数,等于这些数字的 m 次方之和。它也被称为过去完美数、正完美数或自恋数。它是一个 OEIS 序列A005188。让我们通过一个例子来理解它。
阿姆斯特朗数示例
1: 1 1 = 1
2: 2 1 = 2
3: 3 1 = 3
153: 1 3 + 5 3 + 3 3 = 1 + 125+ 27 = 153
125: 1 3 + 2 3 + 5 3 = 1 + 8 + 125 = 134(不是阿姆斯特朗数)
1634: 1 4 + 6 4 + 3 4 + 4 4 = 1 + 1296 + 81 + 256 = 1643
同样,我们也可以检查其他数字。
0 到 999 之间的前几个阿姆斯特朗数是1、2、3、4、5、6、7、8、9、153、370、371、407。其他一些阿姆斯特朗数是 1634、8208、9474、54748、92727、93084、548834、1741725、4210818、9800817、9926315、24678050、24678051、88593477、146511208、472335975、534494836、912985153、4679307774, 32164049650,32164049651。
请注意,没有两位数的阿姆斯特朗数。
阿姆斯特朗数 Java 程序
以下 Java 程序打印出所有达到指定限制的 Armstrong 数。
ArmstrongNumberExample1.java


输出:

让我们创建另一个 Java 程序来检查给定的数字是否是阿姆斯特朗数。
ArmstrongNumberExample2.java


输出1:

输出2:

361

被折叠的 条评论
为什么被折叠?



