写一个函数,判断一个三位数是否为水仙花数。要求:main中循环判断所有三位数,具体一个三位数是否为水仙花数由一个函数单独完成
1个回答
关注
展开全部
咨询记录 · 回答于2023-06-01
写一个函数,判断一个三位数是否为水仙花数。要求:main中循环判断所有三位数,具体一个三位数是否为水仙花数由一个函数单独完成
您好亲,水仙花数,是指一个三位数的各个数字的立方和等于该数本身。例如153,1^3 + 5^3 + 3^3 = 153。下面是一个判断一个三位数是否为水仙花数的函数:function isNarcissisticNumber(num) { const hundred = Math.floor(num / 100); const ten = Math.floor((num % 100) / 10); const one = num % 10; return Math.pow(hundred, 3) + Math.pow(ten, 3) + Math.pow(one, 3) === num;}以上函数接收一个参数 num,用于判断一个三位数是否为水仙花数。首先,将数字拆成百位、十位和个位三个数字,然后计算这三个数字的立方和,最后判断结果是否等于原始数字即可。可以在 main 函数中用一个循环调用上述函数完成所有三位数的判断:function main() { for (let i = 100; i < 1000; i++) { if (isNarcissisticNumber(i)) { console.log(`${i} is a Narcissistic number`); } }}以上代码中,我们循环遍历所有三位数,如果满足条件就输出提示信息。