Menu
Coddy logo textTech

האופרטור הטרנרי

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Ruby של Coddy. שיעור 40 מתוך 56.

האופרטור הטרנרי הוא קיצור בשורה אחת ל־if/else שמחזיר ערך. התחביר הוא condition ? value_if_true : value_if_false.

age = 20
status = age >= 18 ? "Eligible" : "Not Eligible"
puts status   # Eligible

זה כמו לכתוב:

status = if age >= 18
           "Eligible"
         else
           "Not Eligible"
         end

השתמשו באופרטור הטרנרי כששני הענפים מחזירים ערכים קצרים. אם אחד הענפים דורש יותר מביטוי אחד, חזרו להשתמש ב־if/else רגיל: דחיסת יותר מדי תוכן לאופרטור טרנרי מקשה על הקריאה.

אפשר להשתמש בו ישירות בתוך ביטויים אחרים, כולל אינטרפולציה:

count = 1
puts "#{count} item#{count == 1 ? "" : "s"}"   # 1 פריט
count = 5
puts "#{count} item#{count == 1 ? "" : "s"}"   # 5 פריטים
challenge icon

אתגר

קל

קרא מספר שלם n מהקלט. באמצעות האופרטור הטרנרי (ללא בלוקים של if/else), הדפס בדיוק:

<n> is <label>

כאשר label הוא:

  • positive כאשר n > 0
  • negative כאשר n < 0
  • zero כאשר n == 0

רמז: השתמש באופרטור טרנרי מקונן, condition ? a : (other_condition ? b : c).

עבור הקלט 5 הפלט הוא 5 is positive. עבור 0 הפלט הוא 0 is zero.

נסו בעצמכם

n = gets.to_i

# TODO: השתמשו בביטוי תנאי מקוצר כדי ליצור את התווית, ואז ב-puts
quiz iconבחנו את עצמכם

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

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

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