Μάθημα 1: Τι είναι ένας αλγόριθμος;
Σε αυτό το μάθημα, θα μάθετε τι είναι ένας αλγόριθμος και πώς η χρήση αλγορίθμων στο VEXcode VR Python σάς επιτρέπει να δημιουργείτε έργα με πιο ποικίλες συμπεριφορές. Τα αλγοριθμικά έργα δίνουν εντολή στο ρομπότ εικονικής πραγματικότητας να ανταποκριθεί στο περιβάλλον του, κάτι που θα είναι απαραίτητο για την επίλυση της πρόκλησης Dynamic Castle Crasher.
Μαθησιακά Αποτελέσματα
- Να αναγνωρίζουν ότι οι αλγόριθμοι αποτελούνται από ακολουθία, επιλογή και επανάληψη (βρόχους).
- Να αναγνωρίζουν ότι οι αλγόριθμοι είναι ακριβείς ακολουθίες εντολών, που υλοποιούνται με τη χρήση γλωσσών προγραμματισμού, για διαδικασίες που πρόκειται να εκτελεστούν από ένα ρομπότ εικονικής πραγματικότητας.
Αλγόριθμοι
Οι αλγόριθμοι είναι ακριβείς ακολουθίες εντολών, που υλοποιούνται χρησιμοποιώντας γλώσσες προγραμματισμού, όπως η VEXcode VR Python, για διεργασίες που πρόκειται να εκτελεστούν από ένα ρομπότ εικονικής πραγματικότητας.
Τα βασικά στοιχεία ενός αλγορίθμου είναι η ακολουθία, η επιλογή και η επανάληψη.
- Ακολουθία - η σειρά με την οποία οι συμπεριφορές και οι εντολές συνδυάζονται σε ένα έργο προκειμένου να παραχθεί το επιθυμητό αποτέλεσμα.
- Επιλογή - η χρήση εντολών υπό όρους σε ένα έργο. Οι υπό όρους δηλώσεις, όπως ifή if elseεπηρεάζουν τη ροή ενός έργου.
- Επανάληψη - οι αλγόριθμοι συχνά χρησιμοποιούν επανάληψη για να εκτελέσουν βήματα έναν ορισμένο αριθμό φορών ή μέχρι να ικανοποιηθεί μια συγκεκριμένη συνθήκη. Αυτό είναι επίσης γνωστό ως "επαναλαμβανόμενος κύκλος". Η επανάληψη μπορεί να αλλάξει τη ροή του έργου επαναλαμβάνοντας μια συμπεριφορά έναν συγκεκριμένο αριθμό φορών ή μέχρι να ικανοποιηθεί μια συνθήκη.
Αυτό το παράδειγμα έργου από την πρόκληση της Ενότητας 8 είναι ένα παράδειγμα αλγορίθμου. Περιλαμβάνει έναν συνδυασμό βρόχων, δεδομένων αισθητήρων και εντολών που συνδυάζονται σε μια ακολουθία για την επίλυση της πρόκλησης Disk Mover.
def main():
για τιμή στο εύρος(3):
για τιμή στο εύρος(3):
# 1. Οδήγηση σε δίσκο χρησιμοποιώντας τον αισθητήρα Down Eye
ενώ δεν είναι ενεργοποιημένο το down_eye.near_object():
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 2. Δίσκος ανύψωσης
μαγνήτης. Ενεργοποίηση (ΕΝΙΣΧΥΣΗ)
# 3. Οδηγήστε προς τον στόχο χρησιμοποιώντας τον Αισθητήρα Απόστασης
drivetrain.turn_to_heading(180, ΜΟΙΡΕΣ)
while front_distance.get_distance(MM) > 200:
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 4. Πτώση δίσκου στο στόχο
μαγνήτης.ενεργοποίηση(ΠΤΩΣΗ)
σύστημα μετάδοσης κίνησης.κίνηση_για(ΑΝΤΙΠΡΟΣΘΕΤΑ, 100, MM)
# 5. Γυρίστε προς τον επόμενο δίσκο
drivetrain.turn_to_heading(0, DEGREES)
wait(5, MSEC)
# 6. Στρίψτε και οδηγήστε προς τον επόμενο στόχο
drivetrain.turn_to_heading(90, ΜΟΙΡΕΣ)
drivetrain.drive_for(ΜΠΡΟΣΤΑ, 800, MM)
# 7. Στροφή στους δίσκους
drivetrain.turn_to_heading(0, DEGREES)
αναμονή(5, MSEC)Αλληλουχία
Ο τρόπος με τον οποίο οι εντολές αλληλουχούνται και συνδυάζονται καθορίζει τις συμπεριφορές του ρομπότ εικονικής πραγματικότητας. Σε αυτό το παράδειγμα, κάθε σύνολο συμπεριφορών που απαιτείται για την μετακίνηση ενός δίσκου εκτελείται τρεις φορές και στη συνέχεια το VR Robot μετακινείται στο επόμενο σύνολο δίσκων και επαναλαμβάνει τις συμπεριφορές, μέχρι να επιστραφούν όλοι οι δίσκοι στους στόχους. 
Επιλογή
Αυτό το έργο περιλαμβάνει επίσης επιλογή η οποία καθορίζει τα μέρη του έργου που εκτελούνται με βάση τις συνθήκες του αισθητήρα. Αρχικά, ο αισθητήρας Down Eye χρησιμοποιείται για να προσδιορίσει πότε το ρομπότ εικονικής πραγματικότητας βρίσκεται κοντά σε έναν δίσκο, ώστε να μπορεί να εντοπιστεί ο δίσκος. Στη συνέχεια, ο αισθητήρας απόστασης χρησιμοποιείται για να προσδιορίσει πότε το ρομπότ εικονικής πραγματικότητας βρίσκεται πάνω από τον στόχο, ώστε να μπορεί να αποτεθεί ο δίσκος. 
Στον πρώτο βρόχοwhile, η επιλογή των εντολών που θα εκτελεστούν βασίζεται στις τιμές του αισθητήρα που αναφέρονται από τον αισθητήρα Down Eye.
- Ενώ δεν ανιχνεύεται κανένα αντικείμενο, το ρομπότ εικονικής πραγματικότητας θα κινείται προς τα εμπρός.
- Ενώ ανιχνεύεται ένα αντικείμενο, το ρομπότ εικονικής πραγματικότητας θα σταματήσει.
Στον δεύτερο βρόχοwhile , η επιλογή της εντολής που θα εκτελεστεί βασίζεται στις τιμές του αισθητήρα που αναφέρονται από τον αισθητήρα απόστασης.
- Ενώ η αναφερόμενη απόσταση είναι μεγαλύτερη από 200 χιλιοστά (mm), το ρομπότ εικονικής πραγματικότητας θα κινηθεί προς τα εμπρός.
- Ενώ η αναφερόμενη απόσταση είναι μικρότερη από 50 χιλιοστά (mm), το ρομπότ εικονικής πραγματικότητας θα σταματήσει να οδηγεί και θα προχωρήσει στο επόμενο μέρος του έργου για να ενεργοποιήσει τον ηλεκτρομαγνήτη.
Επανάληψη
Το έργο χρησιμοποιεί επανάληψη ή «βρόχους» για την επανάληψη ενεργειών και τον επανειλημμένο έλεγχο των αναφερόμενων τιμών αισθητήρων. Αυτό το έργο περιέχει ένθετους βρόχους – έναν βρόχο ώστε το ρομπότ εικονικής πραγματικότητας να μπορεί να συλλέξει και τους τρεις δίσκους του ίδιου χρώματος και έναν δεύτερο βρόχο για να επαναλάβει αυτή τη διαδικασία για να συλλέξει όλους τους δίσκους στην παιδική χαρά. 
Αυτός ο αλγόριθμος έχει σχεδιαστεί για να συλλέγει και να επιστρέφει τρεις δίσκους, τρεις φορές, για να ολοκληρωθεί η Πρόκληση Μετακίνησης Δίσκου. Η ίδια λογική που εφαρμόζεται για τη συλλογή και μετακίνηση δίσκων επανειλημμένα χρησιμοποιώντας ακολουθία, επιλογή και επανάληψη μπορεί επίσης να εφαρμοστεί σε άλλες προκλήσεις, όπως η Πρόκληση Dynamic Castle Crasher.
Ερωτήσεις
Επιλέξτε έναν σύνδεσμο παρακάτω για να αποκτήσετε πρόσβαση στο κουίζ του μαθήματος.
Έγγραφο Google / .docx / .pdf