Menu
Coddy logo textTech

מילת המפתח `fallthrough`

חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 42 מתוך 109.

ב-Go, מילת המפתח fallthrough מאפשרת לנו להמשיך בביצוע אל המקרה הבא בהצהרת switch, גם לאחר שנמצאה התאמה. בואו נבדוק איך זה עובד.

תחילה, ניצור משפט switch פשוט שמשתמש במילת המפתח fallthrough כדי לתאר מספר:

num := 15
    
switch {
case num < 20:
    fmt.Print("Less than 20 ")
    fallthrough
case num > 10:
    fmt.Print("Greater than 10 ")
    fallthrough
case num > 0:
    fmt.Print("Positive number")
}

לאחר שנריץ את הקוד הזה, נראה את שלוש ההודעות מודפסות על המסך:

Less than 20 Greater than 10 Positive number

זה קורה כי המקרה הראשון תואם (15 קטן מ־20), ומילת המפתח fallthrough מאלצת את Go לבצע גם את המקרה השני. לאחר מכן, גם המקרה השני משתמש ב־fallthrough, מה שגורם ל־Go לבצע גם את המקרה השלישי. ללא fallthrough, רק המקרה התואם הראשון היה מתבצע.

זכור ש-fallthrough יפעיל את המקרה הבא בלי קשר לשאלה אם התנאי שלו נכון או לא. בדוגמה שלנו, כל התנאים מתקיימים עבור המספר 15, אך המקרה הבא יופעל גם אם התנאי שלו יהיה שגוי.

challenge icon

אתגר

מתחילים

באתגר הזה תתרגלו שימוש במילת המפתח fallthrough בהוראת switch. מילת המפתח fallthrough מאפשרת להמשיך בביצוע למקרה הבא גם לאחר שנמצאה התאמה.

יש לכם משתנה שמייצג יום בשבוע. המשימה שלכם היא להוסיף את מילת המפתח fallthrough במקום המתאים, כך שהתוכנית תדפיס גם את 'It's a weekday!' וגם את 'Time to work!' כאשר היום הוא 'Monday'.

נסו בעצמכם

package main

import "fmt"

func main() {
	// משתנה המייצג יום בשבוע
	day := "Monday"
	
	// משפט switch לבדיקת היום
	switch day {
	case "Monday":
		fmt.Println("It's a weekday!")
		// TODO: הוסף כאן את מילת המפתח fallthrough כדי להמשיך למקרה הבא
	case "Tuesday", "Wednesday", "Thursday", "Friday":
		fmt.Println("Time to work!")
	case "Saturday", "Sunday":
		fmt.Println("It's the weekend!")
	default:
		fmt.Println("Invalid day!")
	}
}
quiz iconבחנו את עצמכם

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

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

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