JavaScript Armstrong数字的程序
在这篇文章中,我们将看到JavaScript程序来检查给定的数字是不是Armstrong数字。
一个 Armstrong数字 是一个n位数字,它是其所有位数的n次幂之和。例如,考虑一个3位数,即153,它是一个3位数,且其所有位数的立方和将等于该数字本身,即153。
为了将其推广到特定的语法形式,将使用以下语法:
这里a、b、c、d……表示基数,n表示指数。
有几种方法可以用来检查一个数是否是阿姆斯特朗数,具体如下:
- 使用toString()和split()方法
- 使用Naive方法
- 使用Array from()方法
我们将通过示例来探讨上述所有方法以及它们的基本实现。
方法1:使用toString()和split()方法
在这种方法中,我们可以使用toString()将给定的输入数转换为字符串,然后使用split()方法将它拆分为单个数字的数组。然后,reduce()方法迭代每个数字并使用acc参数累加求和。它使用Math.pow()方法将每个数字提升为阶数次方。在计算完和之后,函数将其与原始数字进行比较。如果和等于这个数,就会打印一条消息表示它是一个阿姆斯特朗数。
语法:
示例: 在这个示例中,我们使用toString()方法和split()方法来检查阿姆斯特朗数。
Javascript
输出
方法2:使用原生方法
原生方法是一种简单的算法,它通过反复迭代一组数字并测试每个数字来判断它是否是阿姆斯特朗数。在此方法中,使用循环获取数字的每个位数,然后将每个位数的n次方求和得到总和。
示例: 此示例实现了验证阿姆斯特朗数的原生方法。
Javascript
输出
方法3:使用Array.from()方法
我们也可以使用Array.from()方法来获取数字,该方法将对象转换为数组。通过利用该方法,您可以在不明确使用toString()和split()函数的情况下获得相同的结果。
语法:
示例: 在此我们使用了上述解释的方法。
Javascript
输出