Wenn eine Zahl als Addition zweier Paare ungerader Primzahlen ausgedrückt werden kann, dann wird die Zahl Goldbach-Zahl genannt.
Wenn wir die oben genannten Bedingungen befolgen, können wir feststellen, dass jede gerade Zahl größer als 4 eine Goldbach-Zahl ist, da sie ein beliebiges Paar ungerader Primzahlen enthalten muss. Aber ungerade Zahlen sind unbefriedigend, weil wir wissen, dass die Summe zweier Zahlen niemals ungerade sein kann.
In diesem Artikel erfahren Sie, wie Sie mithilfe der Programmiersprache Java überprüfen können, ob es sich bei einer Zahl um eine Goldbach-Zahl handelt.
Geben Sie als Zahl 50 ein.
Testen wir es mit der Logik der Goldbach-Zahl.
Suchen wir nach Paaren ungerader Primzahlen, erhalten wir:
(3 , 47) (7 , 43) (13 , 37) (19 , 31)
Wie wir hier bemerkt haben, erhalten wir einige Paare ungerader Primzahlen, deren Summe 50 beträgt.
Daher ist 50 eine Goldbach-Zahl.
Geben Sie als Zahl 47 ein.
Testen wir es mit der Logik der Goldbach-Zahl.
Wenn wir ungerade Primzahlpaare finden, erhalten wir − Keine Primzahlpaare verfügbar
Wie wir hier bemerkt haben, erhalten wir keine ungeraden Primzahlpaare, deren Summe 47 ergibt.
Daher ist 47 keine Goldbach-Zahl.
Einige andere Beispiele für Goldbach-Zahlen sind 20, 52, 48, 122 usw.
Schritt 1 – Erhalten Sie eine Ganzzahl per Initialisierung oder Benutzereingabe.
Schritt 2 – Dann deklarieren Sie zwei Arrays, die nacheinander Primzahlen speichern.
Schritt 3 – Dann starten Sie die Iteration, bei der zwei Paare ungerader Primzahlen aus den beiden Arrays gefunden werden, deren Addition mit der Eingabezahl identisch ist.
Schritt 4 – Wenn wir keine ungeraden Primzahlenpaare erhalten, können wir ausdrucken, dass die angegebene Zahl keine Goldbach-Zahl ist.
Schritt 5 – Wenn wir einige Paare erhalten, drucken wir diese Paare einfach zusammen mit der resultierenden Meldung aus, dass die eingegebene Zahl eine Goldbach-Zahl ist.
Wir bieten Lösungen auf unterschiedliche Weise.
Durch Verwendung statischer Eingabewerte
Durch die Verwendung benutzerdefinierter Methoden
Schauen wir uns das Programm und seine Ausgabe einzeln an.
Bei dieser Methode wird ein ganzzahliger Wert im Programm initialisiert und dann können wir mithilfe eines Algorithmus prüfen, ob eine Zahl eine Goldbach-Zahl ist.
import java.io.*; import java.util.*; public class Main { public static void main(String args[]) { //declare all the variables int i, j, n, temp, b=0, c=0, sum=0; //declare a variable which stores the input number //assign a value to it int inputNumber=30; //declare a temporary variable which stores the input value temp=inputNumber; //declare two arrays with the capacity equal to input number int array1[]=new int[inputNumber]; int array2[]=new int[inputNumber]; //check whether the number is even or if(inputNumber%2!=0) { //if the input is not even then print it is not a Goldbach number System.out.println(inputNumber + " is not a Goldbach number."); } //if the input is even then proceed with further calculations else { //initiate the loop for finding the prime numbers for(i=1; i<=inputNumber; i++) { for(j=1; j<=i; j++) { if(i%j==0) { c++; } } //find the odd prime numbers if((c==2)&&(i%2!=0)) { //stores odd prime numbers into first array array1[b]=i; //stores odd prime numbers into second array array2[b]=i; //increments the value of b by 1 b++; } c=0; } //print the odd prime number pairs System.out.println("Odd Prime Pairs are: "); //loop for printing the value of ArrayStoreException for(i=0; i<b; i++) { for(j=i; j<b; j++) { //find the sum of two odd prime numbers sum=array1[i]+array2[j]; //condition for comparing the sum value with input number if(sum==temp) { //print pair of odd prime numbers System.out.print("(" + array1[i]+" , "+array2[j] + ")"); System.out.println(); } } } //print the final result if it is Goldbach number System.out.println(temp+" is a Goldbach number."); } } }
Odd Prime Pairs are: (7 , 23) (11 , 19) (13 , 17) 30 is a Goldbach number.
In dieser Methode wird ein ganzzahliger Wert initialisiert und dann rufen wir die benutzerdefinierte Methode auf, indem wir diese Eingabenummer als Parameter übergeben.
Bei dieser Methode verwenden wir einen Algorithmus, um zu prüfen, ob eine Zahl eine GoldbachZahl ist.
import java.io.*; import java.util.*; public class Main { public static void main(String args[]) { //declare a variable which stores the input number //assign a value to it int inp=98; if(checkGoldbach(inp)) { //if true it is Goldbach number System.out.println(inp+" is a Goldbach number."); } else { //if false it is not a Goldbach number System.out.println(inp + " is not a Goldbach number."); } } //define the user defined method static boolean checkGoldbach(int inputNumber) { //declare all the variables int i, j, n, temp, b=0, c=0, sum=0; //declare a temporary variable which stores the input value temp=inputNumber; //declare two arrays with the capacity equal to input number int array1[]=new int[inputNumber]; int array2[]=new int[inputNumber]; //check whether the number is even or if(inputNumber%2!=0) { return false; } //if the input is even then proceed with further calculations else { //initiate the loop for finding the prime numbers for(i=1; i<=inputNumber; i++) { for(j=1; j<=i; j++) { if(i%j==0) { c++; } } //find the odd prime numbers if((c==2)&&(i%2!=0)) { //stores odd prime numbers into first array array1[b]=i; //stores odd prime numbers into second array array2[b]=i; //increments the value of b by 1 b++; } c=0; } //print the odd prime number pairs System.out.println("Odd Prime Pairs are: "); //loop for printing the value of Arrays for(i=0; i<b; i++) { for(j=i; j<b; j++) { //find the sum of two odd prime numbers sum=array1[i]+array2[j]; //condition for comparing the sum value with input number if(sum==temp) { //print pair of odd prime numbers System.out.print("(" + array1[i]+" , "+array2[j] + ")"); System.out.println(); } } } return true; } } }
Odd Prime Pairs are: (19 , 79) (31 , 67) (37 , 61) 98 is a Goldbach number.
In diesem Artikel haben wir untersucht, wie man mit drei verschiedenen Methoden überprüft, ob eine Zahl in Java eine Goldbach-Zahl ist.
Das obige ist der detaillierte Inhalt vonWie kann man in Java überprüfen, ob eine Zahl eine Goldbach-Zahl ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!