Προχωρημένο Μάθημα Ανάπτυξης σε Python
Κεφάλαιο
>
Επίπεδο
Μαθηματικές Ενότητες
Επεκταμένη Ενότητα Μαθηματικών
Στόχος
Υπολόγισε τις νέες επεκτάσεις της γης στη φάρμα χρησιμοποιώντας περισσότερες συναρτήσεις που εισάγονται από το module math.
Μέσα από τη γέφυρα, το προσάρτημα διαθέτει κάποια γραφεία που χρησιμοποιούνται για την τοπογραφία της μη ενσωματωμένης γης που ενώνει δύο διαφορετικά μέρη της φάρμας. Εδώ θα βρούμε κάποιες διαστάσεις και μετρήσεις γης, και θα ήταν καλή ιδέα να τις ταξινομήσουμε και να καταγράψουμε τα δεδομένα. Μπορείς να το πετύχεις χρησιμοποιώντας το module math. Σε αυτό το επίπεδο θα εισαχθούμε σε ένα νέο σύνολο συναρτήσεων του, που μπορούμε να χρησιμοποιήσουμε για την επεξεργασία των δεδομένων. Χρησιμοποιείς το ίδιο import math και το math. πριν από τις συναρτήσεις για να χρησιμοποιήσεις αυτό το σετ:
math.radians(): Μετατρέπει τις μοίρες σε ακτίνια / γωνίες.math.floor(): Στρογγυλοποιεί έναν αριθμό προς τα κάτω σε έναν βασικό αριθμό.math.ceil(): Στρογγυλοποιεί έναν αριθμό προς τα πάνω σε έναν υψηλότερο αριθμό.math.atan2(): Επιστρέφει την αντίστροφη εφαπτομένη μεταξύ δύο αριθμών σε ακτίνια.math.isclose(): Ελέγχει αν δύο αριθμοί είναι κοντά ο ένας στον άλλο, επιστρέφει true/false.math.fsum(): Προσθέτει δεκαδικούς (float) αριθμούς μαζί από μια λίστα ή επαναλαμβανόμενη δομή.math.dist(): Ελέγχει την απόσταση μεταξύ δύο σημείων, όπου οι τιμές πρέπει να είναι λίστες ή επαναλαμβανόμενα αντικείμενα.
Ξεκίνησε τη συλλογή των ακατέργαστων δεδομένων από τα διαγράμματα περπατώντας μέχρι τα φωτεινά σημάδια X πάνω στο κόκκινο και το μπλε χαλί. Χρησιμοποιήσε τη συνάρτηση read() για να εντοπίσεις τις ακατέργαστες διαστάσεις που χρειάζονται για τις μετρήσεις. Αυτές οι μετρήσεις είναι ήδη αποθηκευμένες σε τέσσερις μεταβλητές σταθερών που ονομάζονται: red_x, red_y, blue_x και blue_y.
Μόλις εντοπιστούν και τα δύο σύνολα δεδομένων, περπάτησε μέχρι το σκοτεινό σημάδι X πάνω στο πορτοκαλί χαλί και στραψε προς το γραφείο. Χρησιμοποιήσε τις συναρτήσεις math.radians() και math.ceil() για να μετατρέψεις τις μεταβλητές blue_x και blue_y σε ακτίνια και να τις στρογγυλοποιήσεις προς τα πάνω. Χρησιμοποιήσε τη float() για να διασφαλίσεις ότι οι σταθερές είναι δεκαδικοί αριθμοί που μπορούν να επεξεργαστούν. Για παράδειγμα, για τη μεταβλητή blue_x: μετατροπή σε ακτίνια με blue_x = math.radians(float(blue_x)) και στρογγυλοποίηση προς τα πάνω με blue_x = math.ceil(float(blue_x)). Κάνε το ίδιο για τη blue_y σε αυτό το σημάδι X και, μόλις ολοκληρωθεί, χρησιμοποίησε τη προκαθορισμένη συνάρτηση write() προσθέτοντας τις μεταβλητές blue_x και blue_y για να τις καταγράψεις.
Περπάτησε μέχρι το σκοτεινό σημάδι X πάνω στο πράσινο χαλί και χρησιμοποίησε τις συναρτήσεις math.radians() και math.floor() για να μετατρέψεις τις μεταβλητές red_x και red_y σε ακτίνια και να τις στρογγυλοποιήσεις προς τα κάτω. Για παράδειγμα, για τη μεταβλητή red_x: μετατροπή σε ακτίνια με red_x = math.radians(red_x) και στρογγυλοποίηση προς τα κάτω με blue_x = math.floor(red_x). Κάνε το ίδιο για τη red_y σε αυτό το σημάδι X και, μόλις ολοκληρωθεί, χρησιμοποίησε τη προκαθορισμένη συνάρτηση write() προσθέτοντας τις μεταβλητές red_x και red_y για να τις καταγράψεις.
Περπάτησε μέχρι το χρυσό σημάδι X και στραψε προς το γραφείο. Εδώ θα δημιουργήσουμε δύο νέες μεταβλητές, data_a και data_b. Σε αυτές θα αποθηκεύσουμε τις αντίστροφες εφαπτομένες κάθε συνόλου χρησιμοποιώντας τη συνάρτηση math.atan2. Για τη data_a χρησιμοποιούμε τις μεταβλητές blue_x και blue_y για να τροφοδοτήσουμε τη συνάρτηση, όπως αυτό: data_a = math.atan2(blue_x,blue_y). Για τη data_b, κάνε το ίδιο αλλά με τις μεταβλητές red_x και red_y. Μόλις ολοκληρωθεί, χρησιμοποίησε τη προκαθορισμένη συνάρτηση write() προσθέτοντας τις μεταβλητές data_a και data_b για να τις καταγράψεις.
Τώρα που τα κατώτερα γραφεία έχουν τακτοποιηθεί, περπάτησε μέχρι το σκοτεινό σημάδι X πάνω στο μωβ χαλί, δημιούργησε μια μεταβλητή με όνομα comparison και χρησιμοποίησέ την με τη συνάρτηση math.isclose(), χρησιμοποιώντας τις μεταβλητές data_a και data_b ως ορίσματα, όπως αυτό: comparison = math.isclose(data_a, data_b). Χρησιμοποίησε τη προκαθορισμένη συνάρτηση write() με τη μεταβλητή comparison σε αυτό το σημάδι X.
Μετακινήσου στο σημάδι X πάνω στο άσπρο χαλί, δημιούργησε μια λίστα με όνομα data_list και πρόσθεσε τις μεταβλητές data_a και data_b με αυτή τη σειρά. Δημιούργησε μια μεταβλητή με όνομα total και χρησιμοποίησε τη συνάρτηση math.fsum() με τη λίστα data_list ως όρισμα, όπως αυτό: total = math.fsum(data_list). Χρησιμοποίησε τη μεταβλητή total με τη προκαθορισμένη συνάρτηση write() σε αυτό το σημάδι X.
Μετακινήσου στο σκοτεινό σημάδι X πάνω στο κίτρινο χαλί και στραψε προς το γραφείο. Μετατροπήσε τις μεταβλητές data_a και data_b σε ατομικές τιμές λίστας, για παράδειγμα για τη data_a κάνε: data_a = [data_a]. Κάνε το ίδιο για τη data_b για να μετατραπούν και οι δύο μεταβλητές σε επαναλαμβανόμενα αντικείμενα για χρήση με τη συνάρτηση math.dist(). Δημιούργησε μια μεταβλητή με όνομα distance και χρησιμοποίησέ την για να αποθηκεύσεις την τιμή της συνάρτησης math.dist(), χρησιμοποιώντας τις μεταβλητές data_a και data_b ως ορίσματα. Χρησιμοποίησε τη μεταβλητή distance με τη προκαθορισμένη συνάρτηση write() για να ολοκληρώσεις το επίπεδο.