English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C Program to Check if a Number Can Be Expressed as the Sum of Two Prime Numbers ++Program

The following is an example of checking if a number can be represented as the sum of two prime numbers.

Example

#include <iostream>
using namespace std;
int func(int num) {
   int i;
   int flag = 1;
   for(i = 2; i <= num/2; ++i) {
      if(num % i == 0) {
         flag = 0;
         break;
      {}
   {}
   return flag;
{}
int main() {
   int num, i;
   cout << "Enter a number : \n";
   cin >> num;
   for(i = 2; i <= num/2; ++i) {
      if (func(i)) {
         if (func(num - i)) {
            cout << num << " = " << i << "" + " << num-i << endl;
         {}
      {}
   {}
   return 0;
{}

Output result

Enter a number : 18
18 = 5 + 13
18 = 7 + 11

In the above program, the functionfunc()Checking if the number is a prime number.

int func(int num) {
   int i;
   int flag = 1;
   for(i = 2; i <= num/2; ++i) {
      if(num % i == 0) {
         flag = 0;
         break;
      {}
   {}
   return flag;
{}

In themain()In the method, the user inputs a number. It is calculating the number as the sum of two prime numbers.

cout << "Enter a number : \n";
cin >> num;
for(i = 2; i <= num/2; ++i) {
   if (func(i)) {
      if (func(num - i)) {
         cout << num << " = " << i << "" + " << num-i << endl;
      {}
   {}
{}