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

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

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

عندما تجمع بين عدة معاملات منطقية في تعبير واحد، يقوم Ruby بتقييمها بترتيب معين بناءً على أسبقية المعاملات. يساعدك فهم هذا الترتيب على كتابة شروط صحيحة وتجنب النتائج غير المتوقعة.

الأسبقية من الأعلى إلى الأدنى هي: ! (ليس)، ثم && (و)، ثم || (أو). هذا يعني أنه يتم تقييم ! أولاً، يليه &&، وأخيراً ||:

true || false && false   # true (يتم تقييم && أولاً)
# مماثل لـ: true || (false && false)

!false && true           # true (يتم تقييم ! أولاً)
# مماثل لـ: (!false) && true

يمكنك استخدام الأقواس لتجاوز الأسبقية الافتراضية وجعل نواياك واضحة:

(true || false) && false  # false (الأقواس تفرض تنفيذ || أولاً)
true || (false && false)  # true (السلوك الافتراضي)

حتى عندما لا تكون الأقواس ضرورية تماماً، فإن إضافتها غالباً ما تجعل التعبيرات المعقدة أسهل في القراءة. عند الشك، استخدم الأقواس لتوضيح كيفية تجميع الشروط بشكل صريح.

challenge icon

التحدي

سهل

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

x = true
y = false
z = true
a = false

قم بتقييم التعبيرات التالية واعرض كل نتيجة في سطر منفصل. انتبه إلى أسبقية العمليات: يتم تقييم ! أولاً، ثم &&، وأخيراً ||.

  1. x || y && z
  2. !y && z
  3. x && y || z
  4. !a || y && z
  5. x && !y && z
  6. (x || y) && a
  7. x || (y && a)
  8. !(x && y) || z

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

ورقة مرجعية

تقوم Ruby بتقييم العوامل المنطقية بترتيب معين بناءً على أسبقية العوامل:

  1. ! (not) - الأسبقية الأعلى
  2. && (and) - أسبقية متوسطة
  3. || (or) - الأسبقية الأدنى

أمثلة على أسبقية العوامل:

true || false && false   # true (يتم تقييم && أولاً)
# مماثل لـ: true || (false && false)

!false && true           # true (يتم تقييم ! أولاً)
# مماثل لـ: (!false) && true

استخدم الأقواس لتجاوز الأسبقية الافتراضية أو لتحسين قابلية القراءة:

(true || false) && false  # false (الأقواس تفرض تقييم || أولاً)
true || (false && false)  # true (السلوك الافتراضي)

جرّب بنفسك

# المتغيرات معرفة مسبقاً لك
x = true
y = false
z = true
a = false

# TODO: قم بتقييم كل تعبير واطبع النتيجة في سطر منفصل
# تذكر أسبقية العمليات: ! أولاً، ثم &&، ثم ||

# 1. x || y && z
puts # تعبيرك هنا

# 2. !y && z
puts # تعبيرك هنا

# 3. x && y || z
puts # تعبيرك هنا

# 4. !a || y && z
puts # تعبيرك هنا

# 5. x && !y && z
puts # تعبيرك هنا

# 6. (x || y) && a
puts # تعبيرك هنا

# 7. x || (y && a)
puts # تعبيرك هنا

# 8. !(x && y) || z
puts # تعبيرك هنا
quiz iconاختبر نفسك

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

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