javascript
用js写出水仙花数,JS 水仙花数
一、面試題
問:你知道水仙花數吧?
答:水仙?我對花不是很了解啊...
問:不是水仙花!是水仙花數,也就是三位數的自冪數。
答:emmmmmmmm
問:看來是不知道了。如果一個三位數,它每個位上的數字的 3 次冪之和等于它本身,那么這個數就是一個水仙花數。
答:額...能舉個例子么?
問:比如 153 這個數,1^3 + 5^3+ 3^3 = 153,所以 153 就是一個水仙花數。
答:嗯嗯,我明白了。
問:好,那寫一個函數,返回所有的水仙花數。
答:no problem
二、水仙花數
水仙花數是自冪數中的一種,自冪數是指一個 n 位數,它的每個位上的數字的 n 次冪之和等于它本身,當這個 n=3 的時候,這個自冪數也被稱為水仙花數,與水仙花數類似的還有四葉玫瑰數(n=4)、五角星數(n=5)等等
代碼:
// 判斷是否為自冪數
function isSelfPower(num) {
// 將數字轉為字符串
let n = num.toString();
let len = n.length;
// 分割字符串
let content = n.split('');
// 初始化三位數之和
let sum = 0;
for (let i of content) {
// 累加每位數的的 len 次冪
sum += Math.pow(i, len);
}
return sum == num;
}
(function () {
let arr = [];
for (let i = 100; i < 1000; i++) {
isSelfPower(i) && arr.push(i);
}
console.log('水仙花數有:', arr);
})()
總結
以上是生活随笔為你收集整理的用js写出水仙花数,JS 水仙花数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php rsa加密实例,关于PHP语言的
- 下一篇: oracle某用户历史sql语句,查看o