Μετάβαση στο κύριο περιεχόμενο

Προσθήκη ενός Δεύτερου Κουμπιού στην Οθόνη του Εγκεφάλου - C++

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Εκπαιδευτικού - Ο Σκοπός αυτής της Δραστηριότητας

Τώρα που οι μαθητές έχουν εμπειρία στο να αντιμετωπίζουν την οθόνη του εγκεφάλου σαν ένα μεγάλο κουμπί, μπορούν να μετατρέψουν την οθόνη σε δύο κουμπιά. Αυτή η δραστηριότητα θα εισαγάγει τους μαθητές στη χρήση των ένθετων εντολώνif then elseγια την καλύτερη διαχείριση των εντολών υπό όρους και την υποκείμενη λογική αυτής της διαδικασίας. Οι μαθητές καθοδηγούνται αρχικά στην κατασκευή του έργου, ώστε οι πρέσες οθόνης να περιστρέφουν το ρομπότ αριστερά ή δεξιά. Αλλά, στη συνέχεια τους ζητείται να αλλάξουν τα κουμπιά έτσι ώστε αυτό που έστρεψε το ρομπότ αριστερά να το γυρίζει τώρα δεξιά και αντίστροφα.

Για περισσότερες πληροφορίες σχετικά με τις εντολέςif thenκαιif then elseή άλλες που χρησιμοποιούνται σε αυτήν τη δραστηριότητα, επισκεφθείτε τις πληροφορίες βοήθειας στο VEXcode V5. Για περισσότερες πληροφορίες σχετικά με αυτό το ενσωματωμένο εργαλείο βοήθειας, μπορείτε να βρείτε άρθρα σχετικά με τη βοήθεια σεC++.

Ακολουθεί μια περίληψη των όσων θα κάνουν οι μαθητές σας σε αυτή τη δραστηριότητα:

  • Ανασκόπηση του έργουStopOrDriveκαι της διάταξης της οθόνης του εγκεφάλου σε pixel.

  • Δημιουργία ενός νέου έργουLeftOrRightενώ παράλληλα καθοδηγούμαστε στη συλλογιστική του προγραμματισμού.

  • Αναθεώρηση του έργου έτσι ώστε τα κουμπιά στην οθόνη να λειτουργούν αντίθετα.

  • Επεκτείνετε τη Μάθησή σας: Χωρίστε την οθόνη σε δύο κουμπιά που όταν πατηθούν, στρέφουν το ρομπότ αριστερά ή δεξιά.

Βεβαιωθείτε ότι έχετε έτοιμα τα απαραίτητα υλικά, το σημειωματάριο μηχανικής σας και το VEXcode V5.

Απαιτούμενα υλικά:
Ποσότητα Απαιτούμενα υλικά
1

Κιτ εκκίνησης για την τάξη VEX V5 (με ενημερωμένο υλικολογισμικό)

1

VEXcode V5 (τελευταία έκδοση, Windows, macOS)

1

Σημειωματάριο Μηχανικής

1

Έργο StopOrDrive από την προηγούμενη σελίδα Play

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Δασκάλου

Για προτάσεις σχετικά με στρατηγικές διδασκαλίας για αυτήν την ενότητα, ανατρέξτε στη στήλη Παράδοση του Οδηγού Ρυθμού με τις Προϋποθέσεις και τις Προϋποθέσεις! (Έγγραφο Google )

Η οθόνη του εγκεφάλου μπορεί να έχει περισσότερα από ένα κουμπιά.

Αυτή η δραστηριότητα θα σας επιτρέψει να προγραμματίσετε το ρομπότ να κινείται προς τα εμπρός και να στρίβει αριστερά ή δεξιά ανάλογα με το ποια πλευρά της οθόνης του εγκεφάλου πατιέται.

Οι τρεις επιπλέον τύποι οδηγιών που θα χρειαστείτε κατά τη διάρκεια αυτής της δραστηριότητας είναι οι εξής:

  • Σύστημα μετάδοσης κίνησης. στροφή (δεξιά);
  • αριθμός< 50
  • Brain.Screen.xPosition();

Μπορείτε να χρησιμοποιήσετε τις πληροφορίες βοήθειας που υπάρχουν στο VEXcode V5 για να μάθετε περισσότερα σχετικά με τις οδηγίες.

VEXcode V5 με μια εντολή drive for πληκτρολογημένη στον χώρο εργασίας στα αριστερά και τις πληροφορίες βοήθειας ανοιχτές στα δεξιά. Η Βοήθεια εμφανίζει έναν ορισμό της εντολής και πληροφορίες σχετικά με τον τρόπο χρήσης της.

Βήμα 1: Ας ξεκινήσουμε εξετάζοντας το έργο StopOrDrive.

Ας ξεκινήσουμε εξετάζοντας το έργο StopOrDrive.

Το έργο StopOrDrive είχε το Clawbot να σταματάει αν πατιόταν η οθόνη, διαφορετικά το έβαζε να κινείται προς τα εμπρός.
Ολόκληρη η οθόνη ήταν ένα μεγάλο κουμπί, αλλά σε αυτό το επόμενο έργο, θέλουμε η μισή οθόνη να είναι το ένα κουμπί και η άλλη μισή να είναι το άλλο.

// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ενώ (αληθές) {
    Drivetrain.drive(forward);
    εάν (Brain.Screen.pressing()) {
      Drivetrain.stop();
      waitUntil(!Brain.Screen.pressing());
    } 
    αλλιώς {
      Drivetrain.drive(forward);
    }   
  }  
}  

Για να χωρίσουμε την οθόνη σε δύο κουμπιά, πρέπει να κατανοήσουμε περισσότερα σχετικά με τη διάταξη της οθόνης.

Το πλέγμα εικονοστοιχείων της οθόνης V5 Brain δείχνει 12 αριθμημένες σειρές κατά μήκος της αριστερής πλευράς, με την πάνω σειρά να φέρει την ένδειξη Σειρά 1 και την κάτω σειρά να φέρει την ένδειξη Σειρά 12. Στο επάνω μέρος υπάρχουν 48 αριθμημένες στήλες, με τη Στήλη 1 να επισημαίνεται στα αριστερά και τη Στήλη 48 στα δεξιά. Οι συνολικές μετρήσεις των pixel είναι 480px πλάτος επί 240px ύψος.

  • Παρατηρήστε ότι ο αριθμός των στηλών αυξάνεται από αριστερά προς τα δεξιά. Ο αριθμός των στηλών είναι 48 και η οθόνη έχει πλάτος 480 pixel.
  • Σημειώστε στο σημειωματάριό σας ότι η τιμή x στην οθόνη είναι ίση με τον αριθμό των pixel που μετρώνται από αριστερά προς τα δεξιά.
  • Ποια είναι η τιμή x του κέντρου της οθόνης; Για αυτήν τη δραστηριότητα, μπορείτε να εστιάσετε μόνο στον άξονα x, επειδή χρειάζεστε μόνο ένα αριστερό και ένα δεξί κουμπί.

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Δασκάλου - Απάντηση

Η τιμή x στο κέντρο της οθόνης είναι ίση με το μισό του πλάτους της οθόνης σε pixel. Έτσι, η τιμή x του κεντρικού σημείου είναι 240. Οι μαθητές θα χρειαστούν αυτόν τον αριθμό για να προγραμματίσουν την υπό όρους εξίσωση για το αν η οθόνη πατιέται αριστερά ή δεξιά. Επομένως, βεβαιωθείτε ότι όλα έχουν τη σωστή τιμή.

Κοιτώντας μπροστά, η Πρόκληση Διεπαφής Χρήστη στην ενότητα Επανασχεδιασμός θα απαιτήσει από τους μαθητές να εφαρμόσουν όσα έχουν μάθει για να δημιουργήσουν τέσσερα κουμπιά στην οθόνη. Έτσι, για αυτό, θα χρειαστούν και τις δύο τιμές x και y.

Εικονίδιο Συμβουλών Δασκάλου Συμβουλές για τους Δασκάλους

Για περαιτέρω βοήθεια, ανατρέξτε στη ΒιβλιοθήκηVEXγια συμπληρωματικά άρθρα βοήθειας.

Βήμα 2: Προγραμματισμός για δύο κουμπιά.

  • ΑποθήκευσηStopOrDriveως έργουLeftOrRight.

Το παράθυρο διαλόγου "Όνομα έργου" στη γραμμή εργαλείων VEXcode V5 αναφέρει "Αριστερά" ή "Δεξιά" και εμφανίζει ότι είναι επιλεγμένη η Θυρίδα 2.

  • Κατασκευάστε το παρακάτω έργο. Θα κάνει το Clawbot να περιστρέφεται αριστερά ή δεξιά όταν πατηθεί η οθόνη, ανάλογα με την πλευρά στην οποία πατιέται.

 

// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ενώ (αληθές) {
    εάν (Brain.Screen.pressing()) {
      εάν (Brain.Screen.xPosition() < 240) {
        Drivetrain.turn(left);
        waitUntil(!Brain.Screen.pressing());
      } αλλιώς {
        Drivetrain.turn(right);
        waitUntil(!Brain.Screen.pressing());
      }
    } αλλιώς {
      Drivetrain.drive(forward);
    }
  }  
}  
  • Ας εξετάσουμε τι κάνει αυτό το έργο.

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

    Αν το πάτημα έγινε στην αριστερή πλευρά (λιγότερο από 240), στρίβει αριστερά. Διαφορετικά, στρίβει δεξιά. Δεν χρειαζόμαστε άλλη συνθήκη για το πότε η τιμή x είναι μεγαλύτερη από 240, επειδή αν δεν είναι μικρότερη από 240 (στρίψτε αριστερά), πρέπει να είναι μεγαλύτερη (στρίψτε δεξιά). Έχουμε μόνο δύο κουμπιά για τα οποία πρέπει να ανησυχούμε.

    Ταπεριμένουν μέχριΟι οδηγίες ελέγχου μετά από κάθε γύρο κάνουν το έργο να περιμένει μέχρι να μην πατιέται πλέον η οθόνη πριν συνεχίσει.

Το έργο Αριστερά ή Δεξιά εμφανίζεται με εντολές που φέρουν την ένδειξη της λειτουργικότητάς τους. Οι εντολές While true και first if έχουν την ένδειξη . Ελέγχει συνεχώς εάν πατηθεί η οθόνη. Η επόμενη ένθετη εντολή if επισημαίνεται όταν πατηθεί η οθόνη και ελέγχει αν βρίσκεται αριστερά ή δεξιά. Η εντολή επόμενης στροφής επισημαίνεται αν το πάτημα ήταν στα αριστερά (λιγότερο από 240, στροφές αριστερά), τότε η εντολή αναμονής μέχρι να επισημαίνεται με την ένδειξη αναμονή μέχρι να μην πατιέται πλέον η οθόνη πριν συνεχίσετε. Η επόμενη εντολή "στροφή δεξιά" στον κλάδο "else" φέρει την ετικέτα "αν το πάτημα δεν ήταν στα αριστερά" (λιγότερο από 240), "στροφή δεξιά" και η εντολή "αναμονή μέχρι" φέρει την ετικέτα "περιμένει μέχρι να μην πατιέται πλέον η οθόνη" πριν συνεχίσει. Ο εξωτερικός κλάδος else έχει την ετικέτα αν η οθόνη δεν πατηθεί, κινείται προς τα εμπρός.

  • Τώρα που το έργο έχει ολοκληρωθεί, κατεβάστε το και εκτελέστε το για να ελέγξετε πώς λειτουργεί.

Γραμμή εργαλείων VEXcode V5 με ένα κόκκινο πλαίσιο γύρω από το εικονίδιο Λήψης. Τα εικονίδια που εμφανίζονται αναγράφουν, από αριστερά προς τα δεξιά, Ελεγκτή, Εγκέφαλο, Λήψη, Εκτέλεση, Διακοπή και Κοινή χρήση.

  • Κρατήστε σημειώσεις στο σημειωματάριό σας σχετικά με το πώς τα κουμπιά ελέγχουν τις κινήσεις του Clawbot.

Εικονίδιο Συμβουλών Δασκάλου Συμβουλές για τους Δασκάλους

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

Βήμα 3: Προσαρμόστε το έργο για καλύτερη εμπειρία χρήστη.

Όταν πατούσατε τα κουμπιά της οθόνης πίσω από το Clawbot καθώς αυτό κινούνταν προς τα εμπρός, πατούσατε στη δεξιά πλευρά της οθόνης για να στρίψετε αριστερά και στην αριστερή πλευρά της οθόνης για να στρίψετε δεξιά. Αυτή δεν είναι μια καλή εμπειρία χρήστη. Μια Εμπειρία Χρήστη είναι το πόσο καλά μπορεί ένας χρήστης να αλληλεπιδράσει με μια Διεπαφή Χρήστη για να ελέγξει ένα σύστημα υπολογιστή. Περισσότερες πληροφορίες σχετικά με τις Διεπαφές Χρήστη θα βρείτε στην ενότητα Εφαρμογή αυτού του εργαστηρίου.

Σε αυτήν την περίπτωση, πρέπει να βελτιώσουμε τη Διεπαφή Χρήστη για να βελτιώσουμε την Εμπειρία Χρήστη.

  • Ελέγξτε το έργο LeftOrRight και αναθεωρήστε το έτσι ώστε όταν ο χρήστης πατάει τα κουμπιά πίσω από το Clawbot, το ρομπότ να στρίβει δεξιά όταν ο χρήστης πατάει την αριστερή πλευρά της οθόνης. Αλλιώς, το Clawbot στρίβει αριστερά.
// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ενώ (αληθές) {
    εάν (Brain.Screen.pressing()) {
      εάν (Brain.Screen.xPosition() < 240) {
        Drivetrain.turn(left);
        waitUntil(!Brain.Screen.pressing());
      } αλλιώς {
        Drivetrain.turn(right);
        waitUntil(!Brain.Screen.pressing());
      }
    } αλλιώς {
      Drivetrain.drive(forward);
    }
  }  
}  
  • Σχεδιάστε, δοκιμάστε και επαναλάβετε αυτό το έργο στο σημειωματάριο μηχανικής σας, έτσι ώστε το έργο να κάνει το Clawbot να στραφεί προς την πλευρά της οθόνης που ο χρήστης πατάει πίσω από το Clawbot.

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Δασκάλου

Οι μαθητές θα πρέπει να σχεδιάσουν, να δοκιμάσουν και να βελτιώσουν αυτές τις αλλαγές στο έργο, καταγράφοντάς το παράλληλα στα σημειωματάρια μηχανικής τους. Για την ατομική ρουμπρίκα σημειωματάριων μηχανικής, κάντε κλικ σε έναν από τους ακόλουθους συνδέσμους (Google Doc / .docx / .pdf) ή κάντε κλικ σε έναν από τους ακόλουθους συνδέσμους για ομαδικά σημειωματάρια (Google Doc / .docx / .pdf). Θυμηθείτε να εξηγήσετε τη βαθμολόγηση στους μαθητές πριν ξεκινήσουν την εργασία.

Εικονίδιο Εργαλειοθήκης Εκπαιδευτικού Εργαλειοθήκη Εκπαιδευτικού - Λύσεις

Υπάρχουν δύο πιθανοί τρόποι για να λυθεί το πρόβλημα που τέθηκε παραπάνω. Ο πρώτος τρόπος είναι αυτός που αναγράφεται στις οδηγίες: Εξετάστε το έργο LeftOrRight και αναθεωρήστε το έτσι ώστε όταν ο χρήστης πατάει τα κουμπιά πίσω από το Clawbot, το ρομπότ να στρίβει δεξιά όταν ο χρήστης πατάει την αριστερή πλευρά της οθόνης. Αλλιώς, το Clawbot στρίβει αριστερά.

// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ενώ (αληθές) {
    εάν (Brain.Screen.pressing()) {
      εάν (Brain.Screen.xPosition() < 240) {
        Drivetrain.turn(δεξιά);
        waitUntil(!Brain.Screen.pressing());
      } αλλιώς {
        Drivetrain.turn(αριστερά);
        waitUntil(!Brain.Screen.pressing());
      }
    } αλλιώς {
      Drivetrain.drive(προς τα εμπρός);
    }
  }  
}  

Η άλλη λύση είναι να αλλάξετε την εντολή Operator έτσι ώστε όταν η τιμή x είναι μεγαλύτερη από 240, το Clawbot να στρίβει αριστερά.

// Έναρξη κώδικα έργου
int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ενώ (αληθές) {
    εάν (Brain.Screen.pressing()) {
      εάν (Brain.Screen.xPosition() > 240) {
        Drivetrain.turn(left);
        waitUntil(!Brain.Screen.pressing());
      } αλλιώς {
        Drivetrain.turn(right);
        waitUntil(!Brain.Screen.pressing());
      }
    } αλλιώς {
      Drivetrain.drive(forward);
    }
  }  
}  

Εικονίδιο "Κίνητρο για συζήτηση" Παρακινήστε τη συζήτηση

Χρειαζόταν να χρησιμοποιήσετε συντεταγμένες από ένα επίπεδο συντεταγμένων όταν προγραμματίσατε την υπό συνθήκη πρόταση για όταν η τιμή x ήταν μικρότερη από 240 (αριστερή πλευρά της οθόνης). Για να σχεδιάσει η οθόνη του εγκεφάλου οπτικά κουμπιά, θα χρειαστεί επίσης να χρησιμοποιήσετε συντεταγμένες.
Επιστρέψτε στο Βήμα 2 όπου σας εμφανίστηκαν οι συντεταγμένες για την οθόνη του V5 Robot Brain.

Το πλέγμα εικονοστοιχείων της οθόνης V5 Brain δείχνει 12 αριθμημένες σειρές κατά μήκος της αριστερής πλευράς, με την πάνω σειρά να φέρει την ένδειξη Σειρά 1 και την κάτω σειρά να φέρει την ένδειξη Σειρά 12. Στο επάνω μέρος υπάρχουν 48 αριθμημένες στήλες, με τη Στήλη 1 να επισημαίνεται στα αριστερά και τη Στήλη 48 στα δεξιά. Οι συνολικές μετρήσεις των pixel είναι 480px πλάτος επί 240px ύψος.

Ε:Ποια είναι η τιμή x στο δεξί άκρο της οθόνης;
Α:Η τιμή x αυξάνεται από 0 στο αριστερό άκρο σε 480 στο δεξί άκρο.

Ε:Άρα το εύρος της τιμής x είναι 480 (0 έως 480). Ποιο είναι το εύρος της τιμής y;
A:Το εύρος της τιμής y είναι 240 (0 έως 240).

Ε:Πού βρίσκεται η αρχή των αξόνων (0, 0) αυτού του επιπέδου συντεταγμένων;
A:Η αρχή των αξόνων βρίσκεται στην επάνω αριστερή πλευρά.

Ε:Βρίσκεστε στο επάνω μέρος της οθόνης όταν η τιμή y είναι ίση με 0. Γιατί είναι αυτό ασυνήθιστο;
A:Συνήθως, η τιμή y αυξάνεται καθώς κινείστε προς τα πάνω, αλλά στην οθόνη V5, η τιμή y αυξάνεται καθώς κινείστε προς τα κάτω. Αλλά μπορείτε να το φανταστείτε ως την αύξηση της τιμής y καθώς απομακρύνεστε από την αρχή των αξόνων (0, 0) στο επάνω αριστερό μέρος της οθόνης.

Εικονίδιο "Επεκτείνετε τη Μάθησή σας" Επεκτείνετε τη Μάθησή σας

Στην Πρόκληση Διεπαφής Χρήστη της ενότητας Rethink, οι μαθητές θα κληθούν να αναπτύξουν ένα έργο που δημιουργεί τέσσερα κουμπιά στην οθόνη για τον έλεγχο του νυχιού και του βραχίονα του Clawbot. Για αυτήν την πρόκληση, τους ζητείται επίσης να εμφανιστούν αυτά τα τέσσερα κουμπιά στην οθόνη. Αυτό το βιβλίο «Επεκτείνετε τη Μάθησή σας», όπως και οι προηγούμενες σελίδες, θα τους βοηθήσει να προετοιμαστούν για αυτήν την πρόκληση, επειδή η πρόκληση έχει τέσσερα κουμπιά για προγραμματισμό και αυτή έχει μόνο δύο.

Ζητήστε από τους μαθητές να προσθέσουν ένα συμβάν στο πρόγραμμα, έτσι ώστε η οθόνη να απεικονίζει δύο ορατά κουμπιά κατά την εκτέλεση του έργου. Προτείνετε στους μαθητές να χρησιμοποιήσουν τη λειτουργία Βοήθειας στο VEXcode V5 για πληροφορίες σχετικά με τα Συμβάντα, ιδιαίτερα τις πληροφορίες της εντολήςdraw retroglance. Κατευθύνετε τους μαθητές να εξετάσουν πώς η οθόνη του εγκεφάλου είναι οργανωμένη σε ένα σύστημα συντεταγμένων με βάση τον αριθμό των pixel όταν χρησιμοποιούνται στο ορθογώνιο σχεδίασηςμπλοκ. Θα πρέπει να το κατανοήσουν αυτό για να ορίσουν παραμέτρους εντός αυτού του μπλοκ. Επιπλέον, θα πρέπει να κατανοήσουν τον τρόπο μετάδοσης εκδηλώσεων. Σε αυτήν την περίπτωση, το συμβάν είναι η σχεδίαση κουμπιών.

Οι μαθητές θα πρέπει να σχεδιάσουν, να δοκιμάσουν και να βελτιώσουν αυτές τις αλλαγές στο έργο, ενώ παράλληλα θα το καταγράφουν στα σημειωματάρια μηχανικής τους. Για την ρουμπρίκα του ατομικού σημειωματάριου μηχανικής, κάντε κλικ σε έναν από τους ακόλουθους συνδέσμους (Google Doc / .docx / .pdf) ή κάντε κλικ σε έναν από τους ακόλουθους συνδέσμους για τα σημειωματάρια ομάδας (Google Doc / .docx / .pdf).

Ακολουθεί ένα παράδειγμα λύσης:

// Κωδικός έναρξης έργου
event ScreenButtons = event();

void HasScreenButtons() {
  Brain.Screen.setFillColor(green);
  Brain.Screen.drawRectangle(0, 0, 240, 120);
  Brain.Screen.setFillColor(purple);
  Brain.Screen.drawRectangle(240, 0, 480, 120);
  Brain.Screen.setFillColor(orange);
  Brain.Screen.drawRectangle(0, 120, 240, 240);
  Brain.Screen.setFillColor(cyan);
  Brain.Screen.drawRectangle(240, 120, 480, 240);
  wait(1, seconds);
}

int main() {
  // Αρχικοποίηση διαμόρφωσης ρομπότ. ΜΗΝ ΤΟ ΑΦΑΙΡΕΙΤΕ!
  vexcodeInit();

  ScreenButtons(HasScreenButtons);

  ενώ (αληθές) {
    ScreenButtons.broadcast();

    αν (Brain.Screen.pressing()) {

      αν (Brain.Screen.xPosition() < 240) {

        αν (Brain.Screen.yPosition() < 120) {
          ClawMotor.spin(forward);
          waitUntil(!Brain.Screen.pressing());

        } αλλιώς {
          ClawMotor.spin(reverse);
          waitUntil(!Brain.Screen.pressing());
        }
        
      } αλλιώς {
        αν (Brain.Screen.yPosition() < 120) {
          ArmMotor.spin(forward);
          waitUntil(!Brain.Screen.pressing());

        } αλλιώς {
          ArmMotor.spin(reverse);
          waitUntil(!Brain.Screen.pressing());
        }
      }
      ClawMotor.stop();
      ArmMotor.stop();
    }
    wait(5, msec);
  }  
}  

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