Menu
CoddyTech

المعامل الثلاثي

جزء من قسم المنطق وتدفق التنفيذ في رحلة 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

استخدم ternary عندما يعيد كلا الفرعين قيمًا قصيرة. إذا احتاج أيٌّ من الفرعين إلى أكثر من expression واحدة، فارجع إلى if/else حقيقي: إن حشرت الكثير في ternary فسيصبح من الصعب قراءته.

يمكنك استخدامها مباشرةً داخل تعبيرات أخرى، بما في ذلك الاستيفاء:

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 عبر الإنترنت