Menu
CoddyTech

אופרטורים לוגיים (AND, OR)

חלק מהיחידה יסודות במסלול ה-R של Coddy. שיעור 17 מתוך 78.

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

האופרטור AND (&&) מחזיר TRUE רק כאשר שני התנאים מתקיימים:

age <- 25
has_license <- TRUE

can_drive <- age >= 18 && has_license  # TRUE

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

האופרטור OR (||) מחזיר TRUE כאשר לפחות תנאי אחד הוא אמת:

is_weekend <- TRUE
is_holiday <- FALSE

day_off <- is_weekend || is_holiday  # TRUE

האופרטור OR מחזיר false רק כאשר שני התנאים הם false. הנה טבלת עזר מהירה:

ABA && BA || B
TRUETRUETRUETRUE
TRUEFALSEFALSETRUE
FALSETRUEFALSETRUE
FALSEFALSEFALSEFALSE

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

challenge icon

אתגר

קל

קבעו זכאות לפעילויות שונות באמצעות האופרטורים AND (&&) ו-OR (||).

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

age <- 17
has_permission <- TRUE
is_member <- FALSE
has_ticket <- TRUE

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

  1. צרו משתנה בשם can_enter_club ששומר את הערך TRUE אם האדם בן 18 ומעלה וגם חבר
  2. צרו משתנה בשם can_watch_movie ששומר את הערך TRUE אם האדם בן 18 ומעלה או שיש לו אישור
  3. צרו משתנה בשם can_attend_event ששומר את הערך TRUE אם לאדם יש כרטיס וגם הוא חבר
  4. צרו משתנה בשם gets_discount ששומר את הערך TRUE אם האדם חבר או שגילו פחות מ-18
  5. צרו משתנה בשם vip_access ששומר את הערך TRUE אם האדם בן 18 ומעלה וגם חבר וגם יש לו כרטיס

השתמשו בפונקציה print() כדי להציג את can_enter_club, את can_watch_movie, את can_attend_event, את gets_discount ואת vip_access, בדיוק בסדר הזה.

נסו בעצמכם

# משתנים נתונים
age <- 17
has_permission <- TRUE
is_member <- FALSE
has_ticket <- TRUE

# TODO: כתבו את הקוד שלכם למטה
# צרו את המשתנים הבאים באמצעות אופרטורים לוגיים (&&, ||):
# 1. can_enter_club - TRUE אם age >= 18 וגם is_member
# 2. can_watch_movie - TRUE אם age >= 18 או has_permission
# 3. can_attend_event - TRUE אם has_ticket וגם is_member
# 4. gets_discount - TRUE אם is_member או age < 18
# 5. vip_access - TRUE אם age >= 18 וגם is_member וגם has_ticket



# הדפיסו את התוצאות לפי הסדר
print(can_enter_club)
print(can_watch_movie)
print(can_attend_event)
print(gets_discount)
print(vip_access)
quiz iconבחנו את עצמכם

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

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

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