Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Project Euler程序10未在我的程序中给出书面答案_Java - Fatal编程技术网

Java Project Euler程序10未在我的程序中给出书面答案

Java Project Euler程序10未在我的程序中给出书面答案,java,Java,我刚开始做欧拉的问题,我在第十个问题上。这里是:10以下的素数之和是2+3+5+7=17。求200万以下所有素数之和 我的代码是: 公共类时间总和{ 公共静态void main(字符串[]args){ 长和=2; 对于(int i=2;i

我刚开始做欧拉的问题,我在第十个问题上。这里是:10以下的素数之和是2+3+5+7=17。求200万以下所有素数之和

我的代码是:

公共类时间总和{
公共静态void main(字符串[]args){
长和=2;
对于(int i=2;i<2000000;i++){
if(primeOrNot(i)){
总和+=i;
}
}
系统输出打印项数(总和);
}
静态布尔primeOrNot(长输入){
for(inti=2;i

我得到了错误的答案:
14304203218

顺便说一句,了解一下您的解决方案还有多远总是有帮助的

如果答案很接近(我想是的),那么我会立即关注你的素性测试,这是不正确的;你没有正确地测试像4,9,…,49这样的素数平方数;您需要增加并包括平方根(允许向下舍入为整数)


用于(int i=2;i两个编程错误:首先,你从
i=2
开始,但是你的和已经是
sum=2
,把它改成
sum=0
或者从
i=3
开始;第二,你没有测试到平方根。

你不应该为“欧拉计划”寻求答案……这违背了目的。@Mohammed S,OP给了我们这样的代码对问题进行了充分的研究,以保证发布和回答。错误(如果我是正确的)是一个微妙的错误。是的,在收到芭丝谢芭的回复后,我纠正了这些错误,谢谢你的回复….:D+1,因为这是一个我没有发现的错误,因此是公认答案的一部分
for (int i = 2; i<= Math.sqrt(input); ++i){