Collatz猜想(冰雹猜想)的计算次数验证


冰雹猜想 是指:一个自然数n,如果是奇数就乘以3再加1,如果是偶数就析出偶数因数2ⁿ,这样经过若干个次数,最终回到1。

我们通过一个js程序计算任意输入的自然数经过多少次后回归到1.

js计算代码:

 
 
function calculate(n,f){
if(Math.floor(n) != n || n <= 0){
alert("请输入自然数");
return;
}
if(n > 1){
if(n % 2){
n = n * 3 + 1;
}else{
n = n / 2;
}
f ++;
arguments.callee(n,f);
}else if(n == 1){
console.log("进行了" + f + "次运算后,又变成1了哦");
return true
}
}
document.getElementById("click").onclick = function(){ var n; n = document.getElementById("num").value; calculate(n * 1,0); }

html代码:

    <input id="num" style="width:500px;" type="text" value="" placeholder="请输入想要验证的自然数">
    <input id="click" type="button" value="点击开始">

 

当在页面框内输入数字的时候就可以计算出这个自然数经过多少次的运算可以回归到1了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM