GoldBach Number in JAVA
Goldbach Number in JAVA
A Goldbach number is a positive even integer that can be expressed as the sum of two odd prime numbers.
All even integers greater than 4 are Goldbach numbers.
The expression of a given even number as a sum of two primes is called a Goldbach partition of that number.
Examples of Goldbach Numbers are :-
6 = 3 + 3
8 = 3 + 5
10 = 3 + 7 = 5 + 5
12 = 7 + 5
Example 1:
INPUT:
N = 14
Prime pairs are:
3, 11
7, 7
INPUT:
N = 14
Prime pairs are:
3, 11
7, 7
Output : It is a GoldBach Number
INPUT:
N = 28
Prime pairs are:
3, 11
7, 7
Output : It is a GoldBach Number
Algorithm and Program given Below :-
Algorithm :-
- Input number in a variable
- Store the input number in another variable
- define two arrays used for storing and calculating odd prime numbers
- Now use if statement to check if the entered number is odd or not.
- If it is odd Display "Entered number is Invalid"
- Else using for loops find each prime numbers till the entered number
- Now use if statement and store only odd prime numbers in both the arrays
- Now Display "Prime Pairs are:-"
- Using for loop store sum of two odd prime numbers in a variable (say 's')
- Using if condition compare the sum with the original number
- If it satisfy the condition than display the prime pairs.
- Compile and run the program.
Program :-
import java.io.*;
import java.util.*;
class Goldbach
{
public static void main(String args[])
{
Scanner in= new Scanner(System.in);
int i,j,n,p,b=0,c=0,s=0;
System.out.println("Enter Number");
n=in.nextInt(); // Input Number
p=n; // Storing input number
int ar[]=new int[n];// array defined with capacity equal to number
int br[]=new int[n];// array defined with capacity equal to number
if(n%2!=0)// if number is odd
{
System.out.println("Invalid Input, Number is Odd "+n); // printing Invalid
}
else
{
for(i=1;i<=n;i++) //loop used for finding prime number
{
for(j=1;j<=i;j++)
{
if(i%j==0) //condition if number is divisible
{
c++; // increasing value of c initially it is 0
}
}
if((c==2)&&(i%2!=0)) // condition for odd Prime numbers
{
ar[b]=i; // storing odd prime number
br[b]=i; // storing odd prime number
b++; // increasing value of b
}
c=0; // initializing c=0 again.
}
System.out.println("Prime Pairs are :- ");
for(i=0;i<b;i++)
{
for(j=i;j<b;j++)
{
s=ar[i]+br[j]; //storing sum of two odd prime numbers
if(s==p) // condition if the sum is equal to the number
{
System.out.print(ar[i]+" , "+br[j]); // printing prime pairs
System.out.println();
}
}
}
System.out.println("It is GoldBach Number "+p);
}
} // end of main method
} // end of class
All the Best :)
Keep Learning :)
import java.util.*;
class Goldbach
{
public static void main(String args[])
{
Scanner in= new Scanner(System.in);
int i,j,n,p,b=0,c=0,s=0;
System.out.println("Enter Number");
n=in.nextInt(); // Input Number
p=n; // Storing input number
int ar[]=new int[n];// array defined with capacity equal to number
int br[]=new int[n];// array defined with capacity equal to number
if(n%2!=0)// if number is odd
{
System.out.println("Invalid Input, Number is Odd "+n); // printing Invalid
}
else
{
for(i=1;i<=n;i++) //loop used for finding prime number
{
for(j=1;j<=i;j++)
{
if(i%j==0) //condition if number is divisible
{
c++; // increasing value of c initially it is 0
}
}
if((c==2)&&(i%2!=0)) // condition for odd Prime numbers
{
ar[b]=i; // storing odd prime number
br[b]=i; // storing odd prime number
b++; // increasing value of b
}
c=0; // initializing c=0 again.
}
System.out.println("Prime Pairs are :- ");
for(i=0;i<b;i++)
{
for(j=i;j<b;j++)
{
s=ar[i]+br[j]; //storing sum of two odd prime numbers
if(s==p) // condition if the sum is equal to the number
{
System.out.print(ar[i]+" , "+br[j]); // printing prime pairs
System.out.println();
}
}
}
System.out.println("It is GoldBach Number "+p);
}
} // end of main method
} // end of class
All the Best :)
Keep Learning :)
Comments
Post a Comment