Menu
Coddy logo textTech

יסודות קדימות אופרטורים

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

קדימות אופרטורים קובעת את הסדר שבו פעולות מתבצעות בביטוי. פעולות בעלות קדימות גבוהה יותר מתבצעות לפני פעולות בעלות קדימות נמוכה יותר.

צרו תוכנית שמדגימה קדימות אופרטורים:

result1 := 5 + 3 * 2
result2 := (5 + 3) * 2
fmt.Println("5 + 3 * 2 =", result1)
fmt.Println("(5 + 3) * 2 =", result2)

הפלט הוא:

5 + 3 * 2 = 11
(5 + 3) * 2 = 16

בביטוי הראשון, לכפל (*) יש קדימות גבוהה יותר מלחיבור (+), ולכן 3 * 2 מחושב תחילה. בביטוי השני, סוגריים עוקפים את הקדימות כברירת מחדל ומאלצים לחשב תחילה את 5 + 3.

challenge icon

אתגר

מתחילים

באתגר הזה תתרגלו הבנה של קדימות אופרטורים ב-Go. יש לכם כמה משתנים עם ערכים שונים, ועליכם לתקן את הביטוי במשתנה result כדי לקבל את הפלט הצפוי.

הביטוי כרגע כולל מיקום שגוי של סוגריים. המשימה שלכם היא להוסיף סוגריים במקומות הנכונים כך שהביטוי יוערך ל-true.

נסו בעצמכם

package main

import "fmt"

func main() {
	// המשתנים האלה כבר הוגדרו עבורכם
	a := true
	b := false
	c := true
	
	// TODO: הוסיפו סוגריים לביטוי שלמטה כדי שהתוצאה שלו תהיה true
	// HINT: התוצאה של הביטוי צריכה להיות true
	result := a && b || c
	
	// אל תשנו את השורה שלמטה
	fmt.Println(result)
}
quiz iconבחנו את עצמכם

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

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

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