>> SPEAKER 1: בפעם האחרונה שנתחנו מספרים שלמים, זוכרים שהיינו קצת
ביטויים בוליאנית כדי לבדוק אם של משתמש קלט n היה בין מספרים
כמו 0 ו 3, 4 ו 7 ו -8 ו10.
ובכן, עשינו זאת באמצעות אם של ואחר אם, אבל מתברר שאתה יכול
ליישם אותו ההיגיון באמצעות מבנה תכנות שונה
לגמרי תוך השגת בדיוק את אותה התוצאה.
למעשה, אנו יכולים להציג משהו נקרא מתג המאפשר לנו
לעבור את התנהגותנו בהתאם הערך של כמה משתנה.
>> בואו לתת את זה לנסות.
כדי לעשות זאת, אני הולך ראשון לכלול ספריית cs50 בדרך של cs50.h.
אני גם הולך לכלול את התקן ספרייה בדרך לסטנדרטים שלי / O.h.
ואני הולך להכריז עיקרי ב הדרך המקובלת, int חלל ראשי.
פתח סד מתולתל.
סגור סד מתולתל.
ועכשיו אני הולך לשאול משתמש למספר שלם.
>> Printf, תן לי int בין 1 ל 10.
ועכשיו אני הולך לקבל שint באמצעות cs50
ספריות לתפקד, GetInt.
Int, בואו נקראים לזה n, שווה GetInt.
ועכשיו אני הולך לעשות קצת מניתוח על המספר שלם.
במידה מסוימת באופן שרירותי, אבל עם זה מבנה חדש המכונה מתג.
הפעל את הערך של n באופן הבא.
>> במקרה שn שווה 1, או ב מקרה זה n שווה 2, או במקרה
n ששווה 3, קדימה ביצוע הקו הזה של קוד.
Printf שבחרת int, הפסקה קטנה.
עכשיו, אני צריך ליישם את המקבילה של ELT פשוט על ידי
ספירת כמה מקרים נוספים.
>> במקרה שn שווה 4, או ב מקרה זה n שווה 5, או במקרה
n ששווה 6, או במקרה שn שווה 7, אתם מוזמנים להדפיס אותך
הרים Int בינוני.
לשבור.
עכשיו במקרה שהמשתמש לקח מספר גדול, בוא
לזהות שכדלקמן.
>> במקרה שהמשתמש לקח שמונה או במקרה שהמשתמש בוחר
תשע, או במקרה שהמשתמש בוחר 10, קדימה ולהדפיס אותך
הרים Int גדול.
לשבור.
ELT, אם משתמש לא בחר מספר שנופל לתוך כל 10 מקרים אלה,
בואו לקבל קצת התנהגות ברירת מחדל.
אשר במקרה זה יהיה כדלקמן.
>> ברירת מחדל, printf, שבחרת Int לא חוקי.
לשבור.
עכשיו, אם אני שומר לקמפל קובץ זה זה עם להפוך את המתג.
להפעיל אותו עם. מתג נטוי.
בואו נעשה כמה בדיקות שפיות.
אני אאסוף Int של 1.
ומזהה הרים int קטן.
>> בואו עכשיו לעשות. לקצץ מתג.
והקלד בתניח, 1 שלילי.
ומזהה הרים int לא חוקי.
בסופו של היום, הבורר לבנות לא מאפשר לך לעשות
כל דבר שאתה לא יכול לעשות כבר עם מוכר יותר, אם, אם אחר,
אחר לבנות.
אבל אם יש לך רשימה סופית של ערכים כי אתה בודק ל,
הצהרה הבורר מאוד ייתכן גם להפוך את הקוד שלך יותר
מפורש, או קריא יותר.