Menu
Coddy logo textTech

`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".

challenge icon

אתגר

קל

באתגר הזה תתרגלו שימוש במשפט 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!")
	}
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Go אונליין