`switch` ללא ביטוי
חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 41 מתוך 109.
ב-Go, אפשר להשתמש בפקודת switch ללא ביטוי אחרי מילת המפתח. זה שימושי כשרוצים לבדוק כמה תנאים בצורה נקייה.
בואו ניצור תוכנית שמסווגת אדם לפי גילו:
age := 25
switch {
case age < 13:
fmt.Println("Child")
case age < 20:
fmt.Println("Teenager")
case age < 30:
fmt.Println("Young Adult")
default:
fmt.Println("Adult")
}לאחר ביצוע הקוד הזה, התוכנית תבדוק כל תנאי מקרה לפי הסדר. מכיוון שהגיל שלנו הוא 25, הוא אינו קטן מ־13 או מ־20, אבל הוא קטן מ־30, ולכן המקרה השלישי תואם. הטקסט "Young Adult" יוצג על המסך:
Young Adultשימו לב שללא ביטוי אחרי switch, כל מקרה הופך לתנאי בוליאני שמוערך כ-true או כ-false. המקרה הראשון שמוערך כ-true יבצע את בלוק הקוד שלו.
אם אף אחד מהמקרים לא מתאים, מקרה ה־default יבוצע. בדוגמה שלנו, אם הגיל היה 35, הפלט יהיה "Adult".
אתגר
קלבאתגר הזה תתרגלו שימוש במשפט switch ללא ביטוי. סוג זה של משפט switch שימושי כשרוצים לבדוק כמה תנאים בלי לחזור על משפטי if-else.
סיפקנו משתנה timeOfDay שמייצג את השעה הנוכחית (בפורמט של 24 שעות). המשימה שלכם היא להשלים את משפט ה-switch ללא ביטוי, כדי להדפיס ברכה מתאימה בהתאם לשעה ביום.
השתמשו בטווחים הבאים והדפיסו בדיוק את ההודעות האלה:
- 5 עד 11:
Good morning! - 12 עד 17:
Good afternoon! - 18 עד 21:
Good evening! - כל שעה אחרת:
Hello!(מקרהdefault, שכבר נכתב)
כאשר timeOfDay = 14, התוכנית מדפיסה Good afternoon!.
נסו בעצמכם
package main
import "fmt"
func main() {
// זה מייצג את השעה הנוכחית בפורמט של 24 שעות (0-23)
timeOfDay := 14 // השעה היא 2:00 PM
// TODO: השלימו את משפט ה-switch ללא ביטוי
// כדי להדפיס את הברכה המתאימה בהתאם לשעה ביום
switch {
// הוסיפו כאן את מקרי ה-case שלכם
default:
fmt.Println("Hello!")
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
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 אונליין