这是我的代码,用于检查给定号码是 Happy number 。我想我正在尝试错误的逻辑。
var num = 5239;
var sum = 0;
while (num > 0) {
sum += Math.pow(num % 10, 2);
num = Math.floor(num / 10);
console.log(num)
}
console.log(sum);
if (num == 0) {
alert("happy number")
} else {
alert("Not happy number")
}
请纠正我以获得正确的结果。
最佳答案
https://jsfiddle.net/g18tsjjx/1/
如果我理解快乐数字是什么,这应该是正确的。
$(document).ready(function() {
var num = 1;
var i = 0;
for (i; i < 10000; i++) {
num = newNumber(num);
}
num == 1 ? alert("it's happy number") : alert("it's not happy number");
});
function newNumber(num) {
var sum = 0;
var temp = 0;
while (num != 0) {
temp = num % 10;
num = (num - temp) / 10;
sum += temp * temp;
}
return sum;
}
关于javascript - 检查给定的数字是否快乐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45303520/