JavaScript 水仙花數
水仙花數
在給定的數字基數 b 中,水仙花數是一個數字,它是其各個數字的和,每個數字都乘以數字的位數的冪。
例如 −
153 = 1^3 + 5^3 + 3^3 = 1+125+27 = 153
類似地,
1 = 1^1 = 1
方法
我們將首先使用 while 迴圈計算數字的位數。然後,再使用另一個 while 迴圈,我們將選取數字的最後一位,並將其(計數)次冪新增到變數 sum 中。在迴圈後,我們將返回一個布林值,檢查 sum 是否等於數字。
此方法的程式碼將為 −
示例
const isNarcissistic = (num) => {
let m = 1, count = 0;
while(num / m > 1){
m *= 10;
count++;
};
let sum = 0, temp = num;
while(temp){
sum += Math.pow(temp % 10, count);
temp = Math.floor(temp / 10);
};
return sum === num;
};
console.log(isNarcissistic(153));
console.log(isNarcissistic(1634));
console.log(isNarcissistic(1433));
console.log(isNarcissistic(342));輸出
控制檯中的輸出將為 −
true true false false
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP