C Program för att kontrollera om ett nummer kan uttryckas som summan av två primtal

Innehållsförteckning

I det här exemplet lär du dig att kontrollera om ett heltal som anges av användaren kan uttryckas som summan av två primtal av alla möjliga kombinationer.

För att förstå detta exempel bör du ha kunskap om följande C-programmeringsämnen:

  • C if… else Uttalande
  • C för loop
  • C Funktioner
  • C Användardefinierade funktioner

För att utföra denna uppgift kommer vi att skapa en funktion med namnet checkPrime().

De checkPrime()återvänder 1 om antalet skickas till funktionen är ett primtal.

Heltal som en summa av två primtal

#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; ) 

Produktion

Ange ett positivt heltal: 34 34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17 

Intressanta artiklar...