Γράφοντας το Factorial Program στην Python

Writing Factorial Program Python



Ο συντελεστής ενός αριθμού είναι ο αριθμός που παίρνετε αφού πολλαπλασιάσετε όλους τους αριθμούς από το 1 σε αυτόν τον αριθμό. Το παραγοντικό ενός αριθμού συμβολίζεται με το σύμβολο ‘!’. Για παράδειγμα, αν θέλουμε να μάθουμε το παραγοντικό του 4, συμβολίζεται με 4 !, τότε το αποτέλεσμα θα είναι 1x2x3x4 = 24. Υπάρχουν πολλοί τρόποι για να μάθετε το παραγοντικό ενός αριθμού. Το παραγοντικό μπορεί να προσδιοριστεί στην Python χρησιμοποιώντας την ενσωματωμένη συνάρτηση για βρόχους και αναδρομικές συναρτήσεις. Αυτό το σεμινάριο δείχνει πώς μπορεί να προσδιοριστεί το παραγοντικό ενός αριθμού χρησιμοποιώντας διάφορες συναρτήσεις της Python.

Παράδειγμα 1: Βρείτε το παραγοντικό ενός αριθμού χρησιμοποιώντας την ενσωματωμένη συνάρτηση

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







#!/usr/bin/env python3
# Εισαγωγή μαθηματικής ενότητας
εισαγωγή μαθηματικά
# Λάβετε οποιεσδήποτε τιμές αριθμών
ν= int(εισαγωγή('Εισαγάγετε οποιονδήποτε αριθμό:'))
# Μάθετε το factorial
γεγονός= μαθηματικάΤοπαραγοντικό(ν)
# Εκτυπώστε το αποτέλεσμα του παραγοντικού
Τυπώνω('Το συντελεστή του %d είναι %d'%(ν,γεγονός))

Παραγωγή



Μετά την εκτέλεση του σεναρίου, το 3 δίνεται ως αριθμός εισόδου και η έξοδος 3 !, 6, εκτυπώνεται.







Παράδειγμα 2: Βρείτε το παραγοντικό ενός αριθμού χρησιμοποιώντας τον βρόχο

Το παρακάτω σενάριο δείχνει πώς μπορείτε να υπολογίσετε το παραγοντικό οποιουδήποτε αριθμού χωρίς να χρησιμοποιήσετε καμία ενσωματωμένη συνάρτηση στην Python. Εδώ, το Για Ο βρόχος χρησιμοποιείται για τον υπολογισμό του παραγοντικού ενός αριθμού. Οποιαδήποτε ακεραία τιμή εισόδου λαμβάνεται και αποθηκεύεται ως η μεταβλητή που ονομάζεται ν Το Μια μεταβλητή με όνομα γεγονός χρησιμοποιείται για την αποθήκευση του παραγοντικού αποτελέσματος και αρχικοποιείται στο 1 πριν από την είσοδο στον βρόχο. Εάν η τιμή του ν είναι περισσότερο από ένα ή ίσο με ένα, τότε ο βρόχος θα επαναλαμβάνεται για 1 έως n+1 φορές και θα υπολογίσει την παραγοντική τιμή. Διαφορετικά, ο βρόχος θα ελέγξει εάν η τιμή του n είναι ίση με 0 ή αρνητική. Εάν η τιμή του n είναι 0, τότε το παραγοντικό αποτέλεσμα θα είναι 1. και αν η τιμή του n είναι αρνητικός ακέραιος, τότε θα εκτυπωθεί ένα μήνυμα σφάλματος.

#!/usr/bin/env python3

# Πάρτε μια αριθμητική τιμή και αποθηκεύστε σε n
ν= int(εισαγωγή('Εισαγάγετε οποιονδήποτε αριθμό:'))
# Αρχικοποιήστε τη μεταβλητή
γεγονός= 1
# Μάθετε το παραγοντικό εάν ο αριθμός εισαγωγής είναι μεγαλύτερος από 0
ανν> = 1:
# Επαναλάβετε το βρόχο για να πολλαπλασιάσετε τους αριθμούς εντός 1 έως n
ΓιαΕγώσε εύρος (1,n+1):
γεγονός=γεγονός * i
# Εκτυπώστε το φανταστικό αποτέλεσμα
Τυπώνω('Το συντελεστή του %d είναι %d.'%(ν,γεγονός))
αλλού:
ανν== 0:
# Εκτυπώστε το αποτέλεσμα του 0!
Τυπώνω('The factorial of',ν, ' είναι ')
αλλού:
# Εκτυπώστε το μήνυμα σφάλματος
Τυπώνω('Πρέπει να εισαγάγετε οποιονδήποτε θετικό αριθμό')

Παραγωγή



Το σενάριο εκτελείται τρεις φορές, σύμφωνα με το παρακάτω στιγμιότυπο οθόνης. Το σενάριο εκτελείται για τις τιμές εισόδου 1, 6 και -8. Οι έξοδοι εμφανίζονται σύμφωνα με τις τιμές εισόδου.

Παράδειγμα 3: Βρείτε το παραγοντικό ενός αριθμού χρησιμοποιώντας την αναδρομική συνάρτηση

Η συνάρτηση που καλείται κατά την εκτέλεση της συνάρτησης ονομάζεται αναδρομική συνάρτηση. Το παρακάτω σενάριο δείχνει τον τρόπο υπολογισμού του παραγοντικού οποιουδήποτε ακέραιου αριθμού χρησιμοποιώντας μια αναδρομική συνάρτηση. Αφού λάβετε τον ακέραιο αριθμό ως είσοδο, η αναδρομική συνάρτηση factorial_resursive () θα κληθεί, με την τιμή εισόδου ως όρισμα. Εάν η τιμή εισόδου είναι 0 ή 1, τότε το 1 επιστρέφεται. Εάν η τιμή εισόδου είναι αρνητική, τότε η τιμή του ορίσματος θα επιστρέψει. Εάν η τιμή εισόδου είναι μεγαλύτερη από 1, τότε η συνάρτηση θα καλέσει αφαιρώντας το όρισμα κατά 1 ξανά και ξανά μέχρι να υπολογίσει το αποτέλεσμα του παραγοντικού.

#!/usr/bin/env python3
# Λάβετε μια αριθμητική τιμή
αριθμός= int(εισαγωγή('Εισαγάγετε οποιονδήποτε αριθμό:'))
# Ορίστε την αναδρομική συνάρτηση για τον υπολογισμό του παραγοντικού
deffactorial_recursive(ν):
# Αποθηκεύστε το παραγοντικό αποτέλεσμα του 0 και 1
ανν== 0 ήν== 1:
αποτέλεσμα= 1
# Αποθηκεύστε τον αριθμό εισόδου για αρνητική τιμή
elifν< 1:
αποτέλεσμα=ν
# Βρείτε το παραγοντικό αποτέλεσμα με αναδρομικό τρόπο
αλλού:
αποτέλεσμα=n*factorial_recursive(n-1)
# Επιστρέψτε το αποτέλεσμα
ΕΠΙΣΤΡΟΦΗαποτέλεσμα
# Καλέστε τη λειτουργία
γεγονός=factorial_recursive(αριθμός)
# Εκτυπώστε το αποτέλεσμα για θετικό αριθμό
ανγεγονός> = 0:
Τυπώνω('Το συντελεστή του %d είναι %d.'%(αριθμός,γεγονός))
αλλού:
# Εκτυπώστε το μήνυμα για αρνητικό αριθμό
Τυπώνω('Πρέπει να εισαγάγετε οποιονδήποτε θετικό αριθμό')

Παραγωγή

Στο παρακάτω στιγμιότυπο οθόνης, το σενάριο εκτελείται τρεις φορές με τις τιμές 1, -5 και 8.

Παράδειγμα 4: Βρείτε το παραγοντικό ενός αριθμού με εξαίρεση το χειρισμό

Τα τρία παραπάνω σενάρια ελέγχουν μόνο εάν ο αριθμός είναι θετικός ή αρνητικός. Το παρακάτω σενάριο υπολογίζει το παραγοντικό μέσω μιας ενσωματωμένης συνάρτησης factorial () με χειρισμό εξαιρέσεων. Εάν ο χρήστης δώσει οποιαδήποτε είσοδο χωρίς ακέραιη τιμή, τότε θα δημιουργηθεί μια εξαίρεση και θα εκτυπωθεί ένα μήνυμα σφάλματος.

#!/usr/bin/env python3
# Εισαγωγή μαθηματικής ενότητας
εισαγωγή μαθηματικά
# Αψηφήστε το μπλοκ δοκιμής
προσπαθήστε:
# Λάβετε μια αριθμητική τιμή
ν= int(εισαγωγή('Εισαγάγετε οποιονδήποτε αριθμό:'))
ανν> = 0:
# Μάθετε το factorial
γεγονός= μαθηματικάΤοπαραγοντικό(ν)
# Εκτυπώστε το αποτέλεσμα του παραγοντικού
Τυπώνω('Το συντελεστή του %d είναι %d'%(ν,γεγονός))
αλλού:
# Αυξήστε την εξαίρεση εάν ο αριθμός είναι αρνητικός
υψώνω Εξαίρεση('Πρέπει να εισαγάγετε οποιονδήποτε θετικό αριθμό')
# εκτυπώστε το μήνυμα σφάλματος για κλασματική εισαγωγή
εκτός ValueError:
Τυπώνω('Πρέπει να εισαγάγετε ακέραιο αριθμό')
# Εκτύπωση μηνύματος σφάλματος για αρνητική εισαγωγή
εκτός Εξαίρεση όπως καιΚαι:
Τυπώνω('Σφάλματα'%Και)

Παραγωγή

Το σενάριο εκτελείται τρεις φορές με τις τιμές h, -3 και 7 στο παρακάτω στιγμιότυπο οθόνης. Εδώ, η εξαίρεση δημιουργείται για την τιμή, 'h'.

συμπέρασμα

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