javascript - 检查给定的数字是否快乐

标签 javascript number-theory

这是我的代码,用于检查给定号码是 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/

相关文章:

javascript - jQuery 问题 |需要触发事件两次才能正常工作

javascript - 类型错误 : Cannot read property 'credential' of undefined with firebase reauthenticateWithCredential

java - 使用 Java 从网页中提取内容并进行比较

math - 找到两个整数的最大同余模?

algorithm - 子集概率(同余变化)

c - 模乘逆

javascript - 如何更改数据表中按钮的位置

javascript - 如何将音频文件保存在浏览器的缓存中,以便当用户按下按钮时,音频会立即从缓存中开始播放?

r - 查找前 N 个连续合数

performance - 加速 Haskell 中的分区计算