ΟΜΙΛΗΤΗΣ 1: Η τελευταία φορά που αναλύθηκαν ακέραιοι, υπενθυμίζουν ότι χρησιμοποιήσαμε κάποια Boolean εκφράσεις για να ελέγξετε αν ένας χρήστης του εισόδου n ήταν μεταξύ των αριθμών σαν 0 και 3, 4 και 7, και 8 και 10. Λοιπόν, κάναμε ότι η χρήση, αν και αλλιώς αν είναι, αλλά αποδεικνύεται μπορείτε εφαρμόσει την ίδια λογική, χρησιμοποιώντας ένα διαφορετική δομή προγραμματισμού συνολικά, ενώ εξακολουθεί να επιτυγχάνεται ακριβώς το ίδιο αποτέλεσμα. Στην πραγματικότητα, μπορούμε να εισαγάγει κάτι ονομάζεται ένα διακόπτη που μας επιτρέπει να αλλάξετε τη συμπεριφορά μας, ανάλογα με η αξία κάποιων μεταβλητών. Ας δώσει σε αυτό μια δοκιμή. Για να το κάνετε αυτό, είμαι πρώτα πρόκειται να συμπεριλάβει η βιβλιοθήκη CS50 μέσω cs50.h. Είμαι, επίσης, πρόκειται να συμπεριλάβει το πρότυπο βιβλιοθήκη μέσω του προτύπου I / O.h. Και Πάω να κηρύξει το ο συνήθης τρόπος, int main κενό. Ανοίξτε άγκιστρο. Κλείστε άγκιστρο. Και τώρα θα πάω να ρωτήσω τον χρήστη για έναν ακέραιο. Printf, να μου δώσει ένα int μεταξύ 1 και 10. Και τώρα είμαι πρόκειται να πάρει ότι int χρησιμοποιώντας το CS50 βιβλιοθήκες πρέπει να λειτουργούν, GetInt. Int, ας το ονομάσουμε n, ισούται GetInt. Και τώρα πάω να κάνω ένα κομμάτι της ανάλυσης σε αυτό το ακέραιο. Κάπως αυθαίρετα, αλλά με αυτό νέο κατασκεύασμα είναι γνωστή ως διακόπτης. Ενεργοποιήστε την τιμή του n ως εξής. Στην περίπτωση που ισούται Ν 1, ή στο περίπτωση που το η ισούται με 2, ή, στην περίπτωση ότι n ισούται με 3, να προχωρήσει και να εκτελέσει αυτήν τη γραμμή κώδικα. Printf έχετε πάρει ένα μικρό int, διάλειμμα. Τώρα, θα πρέπει να εφαρμόσει το ισοδύναμο ενός ELT απλά με απαριθμώντας κάποιες πρόσθετες περιπτώσεις. Στην περίπτωση που ισούται Ν 4, ή στο περίπτωση που το η είναι ίσο με 5, ή, στην περίπτωση ότι το Ν είναι ίσο με 6, ή στην περίπτωση που η ισούται με 7, να προχωρήσει και να εκτυπώσετε σας διάλεξε ένα μέσο Int. Διάλειμμα. Τώρα, στην περίπτωση που διάλεξε ο χρήστης ένας μεγάλος αριθμός, ας ανιχνεύσει ότι ως ακολούθως. Στην περίπτωση που ο χρήστης πήρε οκτώ ή στην περίπτωση που ο χρήστης επιλέξει εννέα, ή στην περίπτωση που ο χρήστης επιλέξει 10, να προχωρήσει και να εκτυπώσετε σας πήρε ένα μεγάλο Int. Διάλειμμα. ELT, εάν ένας χρήστης δεν επιλέξει έναν αριθμό που εμπίπτει σε κάποια από αυτές τις 10 περιπτώσεις, ας έχουν κάποια προεπιλεγμένη συμπεριφορά. Η οποία σε αυτή την περίπτωση θα είναι ως εξής. Default, Printf, διάλεξες μια μη έγκυρη Int. Διάλειμμα. Τώρα, αν μπορώ να αποθηκεύσετε αυτή τη μεταγλώττιση του αρχείου αυτό με κάνει αλλαγή. Τρέξτε με διακόπτη κάθετο.. Ας κάνουμε ένα ζευγάρι των ελέγχων λογική. Θα επιλέξω μια Int 1. Και ID πήρε ένα μικρό int. Ας κάνουμε τώρα. Κάθετο διακόπτη. Και πληκτρολογήστε ας πούμε, αρνητική 1. Και ID πήρε μια άκυρη int. Στο τέλος της ημέρας, ο διακόπτης κατασκευή δεν σας επιτρέπουν να κάνετε κάτι που δεν θα μπορούσε να έχει ήδη κάνει με την πιο οικεία, αν, αλλιώς αν, άλλο κατασκευάσει. Αλλά εάν έχετε ένα ολοκληρωμένο κατάλογο των τιμών ότι έχετε τον έλεγχο για ένα δήλωση switch μπορεί να είναι πολύ καλά κάνετε τον κωδικό σας πιο ρητή ή πιο ευανάγνωστο.