用javascript编程求水仙花数的方法:1、使用for循环查找遍历所有三位数;2、判断遍历的数字是否是各个位数的数字的3次幂数之和是否等于数字本身;3、分别选取个十百位上的数;4、用
用javascript编程求水仙花数的方法:1、使用for循环查找遍历所有三位数;2、判断遍历的数字是否是各个位数的数字的3次幂数之和是否等于数字本身;3、分别选取个十百位上的数;4、用if语句判断i是否是水仙花数即可。
本文操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
怎么用javascript编程求水仙花数?
首先我们要知道什么是水仙花数:
水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。
通过JS取得水仙花数:
思路分析:
1、使用for循环查找遍历 从100到 999的所有三位数;
2、判断遍历的数字是否是各个位数的数字的3次幂数之和是否等于数字本身,如果是即为水仙花数,则在控制台输出(如何选取各个位数)
(1)选取个位数 模以10,得到余数即为个位数
(2)选取十位数 i除以10,再对结果进行取整,取整后得到一个两位数的整数。用这个结果对10取模,得到十位数
(3)选取百位数 三位数除以100,再取整,就得到了百位数。
3、使用 if语句 判断 i 是否是水仙花数。Math对象用于执行数学任务,pow(x , y)函数用于求取 x 的 y 次幂。
for(var i = 100;i<=999;i++){ var gw = i%10; var sw = parseInt(i/10) % 10; var bw = parseInt(i/100); if(i == Math.pow(gw,3)+Math.pow(sw,3)+Math.pow(bw,3)){ console.log(i); } }
输出结果为:
推荐学习:《javascript基础教程》