Red de conocimiento del abogados - Ley de patentes - ¿Cómo verificar la conjetura de Goldbach usando Java?

¿Cómo verificar la conjetura de Goldbach usando Java?

La descripción original de la conjetura de Goldbach es "Cualquier número entero mayor que 5 puede escribirse como la suma de tres números primos". Euler dio una versión equivalente, es decir, "Cualquier número par mayor que 2 puede ser escrito como La suma de dos números primos", una afirmación común hoy en día es la versión de Euler.

El código para usar Java para verificar la conjetura de Goldbach es el siguiente (el código requiere un número mayor que 6 porque 4=2 2, 6 = 3 3, y el algoritmo comienza la verificación directamente desde 8):

algoritmos de paquete;

importar java.io.BufferedReader;

importar java.io.IOException;

importar java.io.InputStreamReader ;

Clase pública Conjetura Goldbach {

public static void main(String[] args) {

int i, j, n = 0, f1, f2, m = 0;

System.out.println("Verifique la conjetura de Goldbach.

");

System.out.println("Ingrese un número par mayor que 6: ");

BufferedReader rr = new BufferedReader(new InputStreamReader(System.in));

prueba {

m = Integer.parseInt(rr.readLine()

} catch (IOException e) {

}

para (i = 3; i lt; m / 2; i = 2) {

f1 = f2 = 0

para (j =; 3 ; j lt; = i / 2; j = 2) {

si (i j == 0) {

f1 = 1;

}

}

if (f1 == 1)// Si i no es un número primo, el siguiente i

continuar;

p>

// Hasta que se encuentre un número primo i, definitivamente se puede encontrar

n = m - i

for (j = 3; j lt; = n / 2; j = 2) {

if (n j == 0) {

f2 = 1; > romper;

}

}

si (f2 == 1)

continuar

más;

break;

}

System.out.println("Un número par mayor o igual a 6 " m " se puede descomponer en: ")

System.out.println(i "y" n "suma de dos números");

}

}