Программа на C для проверки того, может ли число быть выражено как сумма двух простых чисел

В этом примере вы научитесь проверять, может ли введенное пользователем целое число быть выражено как сумма двух простых чисел всех возможных комбинаций.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C:

  • C if… else Заявление
  • C для цикла
  • Функции C
  • C Пользовательские функции

Для выполнения этой задачи мы создадим функцию с именем checkPrime().

В checkPrime()возвращает 1 , если число передается функции является простым числом.

Целое число как сумма двух простых чисел

#include int checkPrime(int n); int main() ( int n, i, flag = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 2; i <= n / 2; ++i) ( // condition for i to be a prime number if (checkPrime(i) == 1) ( // condition for n-i to be a prime number if (checkPrime(n - i) == 1) ( printf("%d = %d + %d", n, i, n - i); flag = 1; ) ) ) if (flag == 0) printf("%d cannot be expressed as the sum of two prime numbers.", n); return 0; ) // function to check prime number int checkPrime(int n) ( int i, isPrime = 1; for (i = 2; i <= n / 2; ++i) ( if (n % i == 0) ( isPrime = 0; break; ) ) return isPrime; ) 

Вывод

Введите положительное целое число: 34 34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17 

Интересные статьи...