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

المعاملات المنطقية - الجزء الثالث

جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 19 من 88.

توفر لغة Ruby أيضاً بدائل تعتمد على الكلمات للمعاملات المنطقية: and، و or، و not. تعمل هذه المعاملات بشكل مشابه لـ &&، و ||، و !، ولكن مع اختلاف واحد مهم: فهي تمتلك أولوية تنفيذ (precedence) أقل.

true and false   # false (نفس &&)
true or false    # true (نفس ||)
not true         # false (نفس !)

تعني الأسبقية المنخفضة أن هذه العوامل يتم تقييمها بعد عملية التعيين (assignment). قد يؤدي هذا إلى سلوك غير متوقع:

result = true && false   # النتيجة هي false
result = true and false  # النتيجة هي true!

في المثال الثاني، تحدث عملية التعيين أولاً (result = true)، ثم يتم تقييم and false ولكن يتم تجاهل نتيجتها. هذا هو السبب في أن معظم مطوري Ruby يفضلون &&، و ||، و ! للشروط.

عادةً ما تُحجز الإصدارات النصية (الكلمات) لحالات التحكم في التدفق، والتي ستصادفها لاحقاً. في الوقت الحالي، التزم بعوامل الرموز (&&، ||، !) عند كتابة الشروط لتجنب المفاجآت.

challenge icon

التحدي

سهل

لقد تم تزويدك بالمتغيرات التالية:

a = true
b = false
c = true

استخدم العمليات المنطقية المعتمدة على الكلمات (and، و or، و not) لتقييم وعرض التعبيرات التالية، كل منها في سطر منفصل:

  1. a and b
  2. a or b
  3. not b
  4. a and c
  5. b or c
  6. not a

يجب أن يكون كل مخرج إما true أو false.

ورقة مرجعية

توفر لغة Ruby بدائل تعتمد على الكلمات للمعاملات المنطقية: and و or و not. تعمل هذه المعاملات بشكل مشابه لـ && و || و !، ولكن بأسبقية أقل.

true and false   # false
true or false    # true
not true         # false

تعني الأسبقية المنخفضة أن هذه المعاملات يتم تقييمها بعد عملية التعيين، مما قد يؤدي إلى سلوك غير متوقع:

result = true && false   # result is false
result = true and false  # result is true!

في المثال الثاني، تحدث عملية التعيين أولاً (result = true)، ثم يتم تقييم and false ولكن يتم تجاهل نتيجتها.

يفضل معظم مطوري Ruby استخدام && و || و ! للشروط لتجنب المفاجآت. عادةً ما يتم حجز إصدارات الكلمات لحالات التحكم في التدفق (control flow).

جرّب بنفسك

# المتغيرات مقدمة لك
a = true
b = false
c = true

# المهام المطلوبة: اكتب الكود الخاص بك أدناه
# استخدم العوامل المنطقية النصية (and, or, not) لتقييم وطباعة كل تعبير
# يجب طباعة كل نتيجة في سطر منفصل
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات