哥德巴赫猜想原描述是“任一大於5的整數都可寫成三個質數之和”,尤拉給出等價版本,即“任一大於2的偶數都可寫成兩個質數之和”,今日常見的陳述為尤拉版本。 使用Java驗證哥德巴赫猜想的程式碼如下(在程式碼中要求輸入大於6的數字是因為4=2+2、6=3+3,演算法直接從8開始驗證):packagealgorithms;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassGoldbachConjecture{publicstaticvoidmain(String[]args){inti,j,n=0,f1,f2,m=0;System.out.println("驗證哥德巴赫猜想。");System.out.println("輸入一個大於6的偶數:");BufferedReaderrr=newBufferedReader(newInputStreamReader(System.in));try{m=Integer.parseInt(rr.readLine());}catch(IOExceptione){}for(i=3;i<m/2;i+=2){f1=f2=0;for(j=3;j<=i/2;j+=2){if(i%j==0){f1=1;break;}}if(f1==1)//如果i不是質數,下一個icontinue;//直到找到一個質數i,這是肯定可以找到的n=m-i;for(j=3;j<=n/2;j+=2){if(n%j==0){f2=1;break;}}if(f2==1)continue;elsebreak;}System.out.println("大於等於6的偶數"+m+"可以分解為:");System.out.println(i+"與"+n+"兩數之和");}}
哥德巴赫猜想原描述是“任一大於5的整數都可寫成三個質數之和”,尤拉給出等價版本,即“任一大於2的偶數都可寫成兩個質數之和”,今日常見的陳述為尤拉版本。 使用Java驗證哥德巴赫猜想的程式碼如下(在程式碼中要求輸入大於6的數字是因為4=2+2、6=3+3,演算法直接從8開始驗證):packagealgorithms;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassGoldbachConjecture{publicstaticvoidmain(String[]args){inti,j,n=0,f1,f2,m=0;System.out.println("驗證哥德巴赫猜想。");System.out.println("輸入一個大於6的偶數:");BufferedReaderrr=newBufferedReader(newInputStreamReader(System.in));try{m=Integer.parseInt(rr.readLine());}catch(IOExceptione){}for(i=3;i<m/2;i+=2){f1=f2=0;for(j=3;j<=i/2;j+=2){if(i%j==0){f1=1;break;}}if(f1==1)//如果i不是質數,下一個icontinue;//直到找到一個質數i,這是肯定可以找到的n=m-i;for(j=3;j<=n/2;j+=2){if(n%j==0){f2=1;break;}}if(f2==1)continue;elsebreak;}System.out.println("大於等於6的偶數"+m+"可以分解為:");System.out.println(i+"與"+n+"兩數之和");}}