案例:验证哥德巴赫猜想
哥德巴赫猜想:任何偶数都可以拆成两个素数的和 从6开始,前面的口算就能算出来 封顶值:100000
For(varn=6;n<=100000;n+=2){ xxxxxxxxxxxxxxxx }
var num,s;
var sum=0,count=0;
for(var n=6;n<=Math.pow(10,5);n+=2){ //从6开始判断,直到100000结束
for( var a=2;a<=n;a++){ //第一个素数
num=isprime(a)?a:0; //调用函数判断是否为素数 是就给num,不是就为0;
for( var b=2;b<=n;b++){ //第二个素数
s=isprime(a)?b:0; //调用函数判断是否为素数 是就给s,不是就为0;
if(n==(num+s)){ //从6开始判断任何偶数是否都能拆成两个素数的和
count+=n; //把能拆成两个素数的和记录下来累加
break; //判断成功就退出最里层的循环
}
}
if(n==(num+s)){
break; //判断成功退出中间的循环
}
}
sum+=n; //把所有的偶数都累加
}
//如果所有的偶数累加等于能拆成两个素数的和的累加,那么猜想成功,否则就不成功。
if(sum==count){
alert('猜想成功')
}else{
alert('猜想失败')
}
// 判断是否为素数的函数
function isprime(num) {
var flag = true;
for (var i = 2; i < num; i++) {
if(num%i==0){
flag = false;
break;
}
}
return flag;
}