المنطق البولياني

تعديل
نسخ الدرس
تحميل الدرس

المنطق البولياني

بعد أن تعلمنا عمليات المقارنة التي تُرجع true أو false، حان الوقت لنتعلم كيف نجمع هذه الشروط معاً! المنطق البولياني (Boolean Logic) يسمح لنا ببناء شروط معقدة من شروط بسيطة.

ما هو المنطق البولياني؟

المنطق البولياني هو نظام منطقي يتعامل مع قيمتين فقط: صحيح (true) و خاطئ (false). سُمي نسبة للعالم جورج بول (George Boole).

في البرمجة، نستخدم ثلاث عمليات أساسية:

  • و (AND): كلا الشرطين يجب أن يكونا صحيحين
  • أو (OR): أحد الشرطين على الأقل يجب أن يكون صحيحاً
  • ليس (NOT): عكس القيمة

عامل "و" - && (AND)

عامل && يُرجع true فقط إذا كان كلا الشرطين صحيحين:

الناتج:

جدول حالات &&:

الشرط الأولالشرط الثانيالنتيجة
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

مثال عملي: التحقق من العمر والرصيد

الناتج:

مثال: نطاق العمر

الناتج:

عامل "أو" - || (OR)

عامل || يُرجع true إذا كان أحد الشرطين على الأقل صحيحاً:

الناتج:

جدول حالات ||:

الشرط الأولالشرط الثانيالنتيجة
truetruetrue
truefalsetrue
falsetruetrue
falsefalsefalse

مثال عملي: التحقق من الصلاحيات

الناتج:

مثال: عطلة نهاية الأسبوع

الناتج:

عامل "ليس" - ! (NOT)

عامل ! يعكس القيمة المنطقية:

الناتج:

مثال عملي: التحقق من عدم وجود خطأ

الناتج:

مثال: التحقق من القائمة

الناتج:

دمج العمليات المنطقية

يمكنك دمج عدة عمليات منطقية معاً لبناء شروط معقدة:

الناتج:

مثال: نظام التسجيل

الناتج:

أولوية العمليات المنطقية

ترتيب الأولوية من الأعلى للأدنى:

  1. ! (NOT) - أعلى أولوية
  2. && (AND)
  3. || (OR) - أدنى أولوية

الناتج:

نصيحة: استخدم الأقواس دائماً لتوضيح قصدك، حتى لو لم تكن ضرورية!

الفرق بين && و and، || و or

روبي توفر طريقتين للكتابة:

  • && و || (أولوية عالية)
  • and و or (أولوية منخفضة)

الاختلاف في الأولوية

الناتج:

تحذير: يُنصح باستخدام && و || في الشروط دائماً لتجنب الالتباس!

متى نستخدم and و or؟

تُستخدم and و or أحياناً للتحكم في التدفق:

جدول المقارنة

العاملالوصفالأولويةالاستخدام المُوصى
&&AND (و)عالية✅ للشروط
||OR (أو)عالية✅ للشروط
!NOT (ليس)أعلى✅ دائماً
andAND (و)منخفضة⚠️ للتحكم في التدفق
orOR (أو)منخفضة⚠️ للتحكم في التدفق

التقييم الكسول (Short-circuit Evaluation)

روبي تستخدم "التقييم الكسول" - أي أنها تتوقف عن التقييم بمجرد معرفة النتيجة:

مع &&

الناتج:

لم تظهر الرسالة لأن الشرط الأول false، وبالتالي النتيجة حتماً false.

مع ||

الناتج:

لم تظهر الرسالة لأن الشرط الأول true، وبالتالي النتيجة حتماً true.

أمثلة عملية متقدمة

نظام تسعير

الناتج:

التحقق من كلمة المرور

الناتج:

نصائح مهمة

  1. استخدم && و || للشروط بدلاً من and و or
  2. استخدم الأقواس لتوضيح الأولوية
  3. استفد من التقييم الكسول لتحسين الأداء
  4. قسّم الشروط المعقدة إلى متغيرات منفصلة لسهولة القراءة
  5. اختبر جميع الحالات عند كتابة شروط معقدة

تمرين: المنطق البولياني

حان وقت التطبيق! في محرر الشيفرة على اليسار:

المطلوب:

  1. عرّف المتغيرات التالية:

    • x = 10
    • y = 5
    • z = 15
  2. اطبع نتيجة: هل x أكبر من y و x أصغر من z؟

  3. اطبع نتيجة: هل y يساوي 10 أو z يساوي 15؟

  4. اطبع نتيجة: عكس (x يساوي y)

  5. اطبع نتيجة: هل (x أكبر من y) و (y أكبر من 0 أو z يساوي 20)؟

الناتج المتوقع:

تلميح: استخدم && للـ "و"، || للـ "أو"، و ! للعكس. استخدم الأقواس لتجميع الشروط!


تذكّر: المنطق البولياني هو أساس اتخاذ القرارات في البرمجة. كل جملة if تستخدم هذه المفاهيم!