Πρόγραμμα C για να ελέγξετε εάν ένας αριθμός μπορεί να εκφραστεί ως άθροισμα δύο πρωταρχικών αριθμών

Σε αυτό το παράδειγμα, θα μάθετε να ελέγχετε εάν ένας ακέραιος αριθμός που έχει εισαχθεί από τον χρήστη μπορεί να εκφραστεί ως το άθροισμα των δύο πρώτων αριθμών όλων των πιθανών συνδυασμών.

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες θεματολογίες προγραμματισμού Γ:

  • C αν… αλλιώς Δήλωση
  • 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 

ενδιαφέροντα άρθρα...