
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
C++ Program to Check Whether a Number can be Expressed as Sum of Two Prime Numbers
You are given a number and you need to write a C++ program to check whether a number can be expressed as sum of two prime numbers.
Input / Output Scenarios
Following is the input-output statement:
Input: n = 19 Output: 19 can be expressed as the sum of two prime numbers. Explanation: 19 = 17 + 2, and both 17 and 2 are prime numbers. Input: n = 36 Output: 36 can be expressed as the sum of two prime numbers. Explanation: 36 = 31 + 5, and both 31 and 5 are prime numbers.
C++ Program to Check if a Number is Sum of Two Primes
Below the program checks whether a given number can be expressed as the sum of two prime numbers. It then print all such prime pairs that add up to input number.
#include<iostream> using namespace std; // function to check whether a number is prime int func(int num) { int i; int flag = 1; for(i = 2; i <= num/2; ++i) { if(num % i == 0) { // Not prime if divisible by any number other than 1 and itself flag = 0; break; } } // returns 1 if prime, 0 if not return flag; } int main() { int num , i; cout << "Enter a number : \n"; cin >> num; // loop through all numbers from 2 to num/2 for(i = 2; i <= num/2; ++i) { // check if i is a prime number if (func(i)) { // check if (num - i) is also a prime number if (func(num - i)) { // If both are prime, print the expression cout << num << " = " << i << " + " << num-i << endl; } } } return 0; }
The above code produces the following result:
Enter a number : 18 18 = 5 + 13 18 = 7 + 11
Advertisements