Menu
Coddy logo textTech

אופרטורים לוגיים חלק 1

חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 16 מתוך 88.

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

האופרטור && (שנקרא "וגם") מחזיר true רק כאשר שני התנאים נכונים. אם אחד מהתנאים שקרי, כל הביטוי שקרי:

age = 25
has_license = true

age >= 18 && has_license  # true (שני התנאים מתקיימים)
age >= 18 && false        # false (אחד התנאים אינו מתקיים)

האופרטור || (שנקרא "או") מחזיר true כאשר לפחות אחד מהתנאים הוא true. הוא מחזיר false רק כאשר שני התנאים הם false:

is_weekend = true
is_holiday = false

is_weekend || is_holiday  # true (לפחות אחד מהם הוא true)
false || false            # false (שניהם false)

חשוב על && כעל אופרטור שדורש שכל התנאים יתקיימו, בעוד ש־|| דורש שרק תנאי אחד יתקיים. האופרטורים האלה חיוניים לבניית לוגיקה מהעולם האמיתי, כמו בדיקה אם משתמש מחובר ויש לו הרשאה, או אם חנות פתוחה בסופי שבוע או בחגים.

challenge icon

אתגר

קל

המשתנים הבאים נתונים לך:

temperature = 22
is_sunny = true
has_umbrella = false
is_weekend = true
has_homework = false

השתמש באופרטורים && ו-|| כדי להעריך ולהציג את הביטויים הבאים, כל אחד בשורה נפרדת:

  1. בדוק אם temperature גדול מ-20 וגם is_sunny הוא true
  2. בדוק אם is_sunny הוא true או has_umbrella הוא true
  3. בדוק אם is_weekend הוא true וגם has_homework הוא false
  4. בדוק אם temperature קטן מ-10 או temperature גדול מ-30
  5. בדוק אם is_weekend הוא true וגם is_sunny הוא true וגם temperature גדול מ-20 או שווה לו

כל פלט צריך להיות true או false.

נסו בעצמכם

# המשתנים כבר הוגדרו עבורכם
temperature = 22
is_sunny = true
has_umbrella = false
is_weekend = true
has_homework = false

# TODO: כתבו את הקוד שלכם למטה
# השתמשו באופרטורים && ו-|| כדי להעריך את הביטויים
# הדפיסו כל תוצאה בשורה נפרדת

# 1. בדקו אם temperature > 20 וגם is_sunny הוא true


# 2. בדקו אם is_sunny הוא true או has_umbrella הוא true


# 3. בדקו אם is_weekend הוא true וגם has_homework הוא false


# 4. בדקו אם temperature < 10 או temperature > 30


# 5. בדקו אם is_weekend הוא true וגם is_sunny הוא true וגם temperature >= 20
quiz iconבחנו את עצמכם

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

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

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