Goldbach Number ISC Computer Science 2018 Practical

A Goldbach number is a positive even integer that can be expressed as the sum of two odd primes.

Note: All even integer numbers greater than 4 are Goldbach numbers.

Example:
6 = 3 + 3
10 = 3 + 7
10 = 5 + 5

Hence, 6 has one odd prime pair 3 and 3. Similarly, 10 has two odd prime pairs, i.e. 3 and 7, 5 and 5.

Write a program to accept an even integer 'N' where N > 9 and N < 50. Find all the odd prime pairs whose sum is equal to the number 'N'.

Test your program with the following data and some random data:

Example 1:
INPUT:
N = 14
OUTPUT:
PRIME PAIRS ARE:
3, 11
7, 7

Example 2:
INPUT:
N = 30
OUTPUT:
PRIME PAIRS ARE:
7, 23
11, 19
13, 17

Example 3:
INPUT:
N = 17
OUTPUT:
INVALID INPUT. NUMBER IS ODD.

Example 4:
INPUT:
N = 126
OUTPUT:
INVALID INPUT. NUMBER OUT OF RANGE.

import java.util.Scanner;
class Goldbach{
    public static void main(String args[]){
        Scanner in = new Scanner(System.in);
        System.out.print("N = ");
        int n = Integer.parseInt(in.nextLine());
        if(n % 2 != 0){
            System.out.println("INVALID INPUT. NUMBER IS ODD.");
            return;
        }
        if(n < 10 || n > 49){
            System.out.println("INVALID INPUT. NUMBER OUT OF RANGE.");
            return;
        }
        System.out.println("PRIME PAIRS ARE:");
        int p = 3;
        int q = n - p;
        for(int i = p; i <= n / 2; i++){
            if(isPrime(p) && isPrime(q) && p <= q)
                System.out.println(p + ", " + q);
            p += 2;;
            q = n - p;
        }
    }
    public static boolean isPrime(int n){
        for(int i = 2; i <= n / 2; i++){
            if(n % i == 0)
                return false;
        }
        return true;
    }
}

Comments

Popular posts from this blog

Encrypt Program ISC Specimen 2023 Theory

No Repeat Program ISC Computer Science 2022 Semester 2 Theory

Bank Inheritance Program ISC Specimen 2023 Theory