使用Java驗證哥德巴赫猜想的代碼如下(在代碼中要求輸入大於6的數字是因為4=2+2、6=3+3,算法直接從8開始驗證):
package algorithms;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class GoldbachConjecture {
public static void main(String[] args) {
int i, j, n = 0, f1, f2, m = 0;
System.out.println("驗證哥德巴赫猜想。");
System.out.println("輸入壹個大於6的偶數:");
BufferedReader rr = new BufferedReader(new InputStreamReader(System.in));
try {
m = Integer.parseInt(rr.readLine());
} catch (IOException e) {
}
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不是質數,下壹個i
continue;
// 直到找到壹個質數i,這是肯定可以找到的
n = m - i;
for (j = 3; j <= n / 2; j += 2) {
if (n % j == 0) {
f2 = 1;
break;
}
}
if (f2 == 1)
continue;
else
break;
}
System.out.println("大於等於6的偶數" + m + "可以分解為:");
System.out.println(i + "與" + n + "兩數之和");
}
}