Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

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

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