Γ γλώσσα - Έλεγχος αν ένας ακέραιος αριθμός είναι πρωταρχικός αριθμός

Ένα πρόγραμμα στη γλώσσα C μπορεί να χρησιμοποιηθεί για να ελέγξει αν ένας ακέραιος είναι ένας prime number . Ορισμένες γνώσεις των εννοιών προγραμματισμού και γλωσσών όπως το C απαιτούνται για να γράψουν έναν κώδικα προγράμματος σε C. Βασικές έννοιες όπως looping, συμπεριλαμβανομένων των βρόχων, ενώ βρόχοι, αν αλλιώς βρόχοι, λειτουργίες κ.λπ., είναι απαραίτητες για την εγγραφή προγραμμάτων. Ένα πρόγραμμα για να ελέγξετε αν ένας ακέραιος αριθμός είναι ένας πρωταρχικός αριθμός στο C μπορεί να γραφτεί χρησιμοποιώντας τις ένθετες για βρόχους . Τα βυζιά για βρόχους περιέχουν ένα για βρόχο μέσα στο άλλο. Ορισμένες γνώσεις των λειτουργιών C, όπως scanf και printf, θα αποδειχθούν χρήσιμες και όταν προγραμματίζετε στο C.

[Γ γλώσσα] Έλεγχος εάν ένας ακέραιος αριθμός είναι ένας πρωταρχικός αριθμός

  • Ορισμός ενός πρώτου αριθμού
    • Ο αλγόριθμος 1: οι διαχωριστές μεταξύ 2 και N-1 θα δοκιμαστούν
    • Αλγόριθμος 2: Ακόμη και οι διαιρέτες δεν θα δοκιμαστούν, η έρευνα περιορίζεται σε περιττοί διαιρέτες
    • Αλγόριθμος 3: Όλες οι παράξενοι διαιρέτες έως την τετραγωνική ρίζα του N θα δοκιμαστούν
    • Αλγόριθμος 4: τερματίστε το πρόγραμμα όταν βρεθεί ένας διαιρέτης

Ορισμός ενός πρώτου αριθμού

Ένας πρώτος αριθμός είναι ένας ακέραιος αριθμός, ο οποίος διαιρείται μόνο κατά 1 και ο ίδιος.

Ο αλγόριθμος 1: οι διαχωριστές μεταξύ 2 και N-1 θα δοκιμαστούν

/ **************************

  • prime_number1.c * / / * αλγόριθμος: δοκιμάστε όλους τους διαχωριστές * / #include int main (void) {int i, nb, count, test; test = count = 0. printf ("πληκτρολογήστε ακέραιο:"); αν (scanf ("% d", & nb)! = 1) επιστρέφει -1; για (i = 2, i <nb; i ++, count ++) αν (nb% i == 0) test = 1; αν (! test) printf ("% d prime number, αριθμός επαναλήψεων =% dn", nb, count); else printf ("Το% d δεν είναι πρωταρχικός αριθμός, αριθμός επαναλήψεων =% dn", nb, count). επιστροφή 0? }}

Αλγόριθμος 2: Ακόμη και οι διαιρέτες δεν θα δοκιμαστούν, η έρευνα περιορίζεται σε περιττοί διαιρέτες

/ **************************

  • prime_number2.c * / / * αλγόριθμος: αποκλεισμός αθροιστικών αριθμών και * δοκιμή όλων των διαχωριστικών * / #include int main (void) {int i, nb, count, test; test = count = 0. printf ("πληκτρολογήστε ακέραιο:"); αν (scanf ("% d", & nb)! = 1) επιστρέφει -1; αν (nb% 2 == 0) δοκιμή = 1; αλλιώς {για (i = 3, i <nb; i + = 2, count ++) αν (nb% i == 0) test = 1; } αν (! test) printf ("% d prime number, αριθμός επαναλήψεων =% dn", nb, count); else printf ("Το% d δεν είναι πρωταρχικός αριθμός, αριθμός επαναλήψεων =% dn", nb, count). επιστροφή 0? }}

Αλγόριθμος 3: Όλες οι παράξενοι διαιρέτες έως την τετραγωνική ρίζα του N θα δοκιμαστούν

/ **************************

  • αλγόριθμος prime_number3.c * / / *: εξαιρέστε όλους τους αδύναμους αριθμούς και * δοκιμάστε όλους τους διαχωριστές μέχρι την τετραγωνική ρίζα * / #include #include int main (void) {int i, nb, count, test, limit; test = count = 0. printf ("πληκτρολογήστε ακέραιο:"); αν (scanf ("% d", & nb)! = 1) επιστρέφει -1; όριο = sqrt (nb) + 1; αν (nb% 2 == 0) δοκιμή = 1; αλλιώς {για (i = 3, i <limit; i + = 2, count ++) αν (nb% i == 0) test = 1; } αν (! test) printf ("% d prime number, αριθμός επαναλήψεων =% dn", nb, count); else printf ("% d δεν είναι πρώτος αριθμός, αριθμός επαναλήψεων =% dn", nb, count); επιστροφή 0? }}

Αλγόριθμος 4: τερματίστε το πρόγραμμα όταν βρεθεί ένας διαιρέτης

/ **************************

  • αλγόριθμος prime_number4.c * / / *: εξαιρέστε όλους τους αδύναμους αριθμούς και * δοκιμάστε όλους τους διαχωριστές μέχρι την τετραγωνική ρίζα * βρόχος εξόδου όταν βρεθεί ο πρώτος διαχωριστής * / #include #include int main (void) {int i, nb, count, δοκιμή, όριο; test = count = 0. printf ("Εισάγετε ακέραιο:"); αν (scanf ("% d", & nb)! = 1) επιστρέφει -1; όριο = sqrt (nb) + 1; αν (nb% 2 == 0) δοκιμή = 1; αλλιώς {για (i = 3; i <limit &&! test; i + = 2, count ++) αν (nb% i == 0) test = 1; } αν (! test) printf ("% d prime number, αριθμός επαναλήψεων =% dn", nb, count); else printf ("% d δεν είναι αρχικός αριθμός, αριθμός επαναλήψεων =% dn", nb, count); επιστροφή 0? }}
Προηγούμενο Άρθρο Επόμενο Άρθρο

Οι Καλύτερες Συμβουλές