Open In App

Goldbach’s Weak Conjecture for Odd numbers

Last Updated : 01 Nov, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Given an odd number N, the task is to find if the number can be represented as the sum of 3 prime numbers.
Examples: 
 

Input: N = 7
Output: Yes
Explanation:
2 + 2 + 3 = 7

Input: N = 17
Output: Yes
Explanation:
2 + 2 + 13 = 17

 

Approach: 
In number theory, Goldbach’s weak conjecture, also known as the odd Goldbach conjecture, the ternary Goldbach problem, or the 3-primes problem, states that Every odd number greater than 5 can be expressed as the sum of three primes. (A prime may be used more than once in the same sum.).
Below is the implementation of the above approach: 
 

C++




// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
 
// if a number can
// be represent as
// as a sum of 3 prime
void check(int n)
{
    if (n % 2 == 1 && n > 5)
        cout << "Yes\n";
    else
        cout << "No\n";
}
     
// Driver code
int main()
{
    int a = 3;
    int b = 7;
    check(a);
    check(b);
    return 0;
}
 
// This code is contributed by 29AjayKumar


Java




class GFG
{
    // Function to check
    // if a number can
    // be represent as
    // as a sum of 3 prime
 
    static void check(int n)
    {
        if (n % 2 == 1 && n > 5)
        {
            System.out.println("YES");
        }
        else
        {
            System.out.println("NO");
        }
    }
     
    // Driver code
    public static void main(String[] args)
    {
        int a = 3;
        int b = 7;
        check(a);
        check(b);
    }
}
 
// This code is contributed by PrinciRaj1992


Python3




# Function to check
# if a number can
# be represent as
# as a sum of 3 prime
def check(n):
  if n % 2 == 1 and n > 5:
    print('YES')
  else:
    print('NO')
 
# Driver code
def main():
  a = 3
  b = 7
  check(a)
  check(b)
 
main()


C#




using System;
class GFG
{
    // Function to check
    // if a number can
    // be represent as
    // as a sum of 3 prime
 
    static void check(int n)
    {
        if (n % 2 == 1 && n > 5)
        {
            Console.Write("YES");
        }
        else
        {
            Console.WriteLine("NO");
        }
    }
     
    // Driver code
    public static void Main(String[] args)
    {
        int a = 3;
        int b = 7;
        check(a);
        check(b);
    }
}
 
// This code is contributed by PrinciRaj1992


Javascript




    // Function to check
    // if a number can
    // be represent as
    // as a sum of 3 prime
 
    function check(n)
    {
        if (n % 2 == 1 && n > 5)
        {
            document.write("YES");
        }
        else
        {
            document.write("NO" + "<br>");
        }
    }
     
    // Driver code
     
        var a = 3;
        var b = 7;
        check(a);
        check(b);
    
 
// This code is contributed by shivanisinghss2110


Output: 

NO
YES

 

Time Complexity: O(1)

Auxiliary Space: O(1)



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads