`switch` עם ביטויים
חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 40 מתוך 109.
נלמד איך להשתמש בביטויים בתוך הוראות switch ב-Go, שמאפשרים לנו להעריך תנאים ישירות בכל case.
ראשית, נראה כיצד להשתמש במשפט switch עם תנאי בכל case כדי לבדוק אם מספר הוא חיובי, שלילי או אפס:
num := -5
switch {
case num > 0:
fmt.Println("Positive number")
case num < 0:
fmt.Println("Negative number")
default:
fmt.Println("Zero")
}לאחר הפעלת הקוד הזה, התוכנית תציג על המסך:
Negative numberשימו לב שאנחנו משתמשים ב-switch { בלי ערך אחריו. פירוש הדבר הוא ש-Go תעריך כל ביטוי של case כתנאי בוליאני. מכיוון ש-num הוא -5, הביטוי השני, num < 0, מוערך כ-true, ולכן מודפס "Negative number".
אפשר גם לאתחל משתנה ישירות בתוך משפט ה־switch. נראה איך זה עובד:
switch num := -5; {
case num > 0:
fmt.Println("Positive number")
case num < 0:
fmt.Println("Negative number")
default:
fmt.Println("Zero")
}לאחר הרצת הקוד הזה, נקבל את אותה תוצאה:
Negative numberבדוגמה הזאת, הכרזנו על num ואתחלנו אותו ישירות במשפט switch. נקודה-פסיק מפרידה בין האתחול לביטוי ה-switch (שהוא ריק כאן). כך הקוד שלנו נעשה תמציתי יותר, תוך שמירה על אותה פונקציונליות.
אתגר
מתחיליםswitch פשוט ב-Go. עליך להשלים את הקוד כדי לקבוע את התיאור של יום לפי שמו באמצעות משפט switch.משתנה בשם
dayName כבר הוגדר עם הערך "Wednesday". המשימה שלך היא להשתמש בביטוי switch כדי להגדיר את המשתנה description כך שיכיל:-
"Start of the week" עבור יום שני-
"Midweek" עבור יום רביעי-
"Almost weekend" עבור יום שישי-
"Weekend" עבור יום שבת או יום ראשון-
"Regular day" עבור כל יום אחרנסו בעצמכם
// TODO: כתבו משפט switch שמגדיר את התיאור לפי dayName
// עבור Monday: "Start of the week"
// עבור Wednesday: "Midweek"
// עבור Friday: "Almost weekend"
// עבור Saturday או Sunday: "Weekend"
// עבור כל יום אחר: "Regular day"
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואה – חלק 1אופרטורי השוואה – חלק 2אופרטור AND לוגיאופרטור OR לוגיאופרטור NOT לוגייסודות קדימות אופרטוריםסיכום – ביצוע השוואות7זרימת בקרה: לולאות
הסבר על לולאת `for`לולאת `for` – בסיסיתלולאת `for` – תנאי בלבדמילת המפתח `break`מילת המפתח `continue`לולאות מקוננותסיכום – חזרה על פעולות2משתנים וסוגי נתונים בסיסיים
מהו משתנההסקת טיפוס באמצעות `:=`מספרים שלמים (int)מספרים בנקודה צפהערכים בוליאנייםמחרוזותערכי אפסקבועיםמוסכמות לשמותסיכום – משתנים וטיפוסים8פונקציות
הבנת פונקציותהצהרה על פונקציהקריאה לפונקציותפרמטרים של פונקציההחזרת ערך יחידהחזרת מספר ערכיםערכי החזרה בעלי שםיסודות תחום ההשפעה של פונקציהסיכום - יצירת קוד לשימוש חוזר3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור חילוקאופרטור מודולואופרטור השמהאופרטורי השמה מורחבתהגדלה והקטנהסיכום – חישובים6זרימת בקרה: תנאים
פקודת `if`מילת המפתח `else`מילת המפתח `else if`הסתרת משתנים בתוך `if`אתחול משתניםפקודת `switch``switch` עם ביטויים`switch` ללא ביטוימילת המפתח `fallthrough`סיכום - קבלת החלטותתרגלו בעצמכם: קומפיילר Go אונליין