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

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

جزء من قسم Fundamentals في رحلة JavaScript على Coddy — الدرس 21 من 77.

عند العمل مع التعبيرات المنطقية، نحتاج أحياناً إلى تبسيطها أو إعادة ترتيبها.

عند وجود ! (ليس) أمام شرطين مرتبطين بـ && (و)، يمكنك تقسيمها إلى جزأين منفصلين. حيث يتحول && (و) إلى || (أو)، ويحصل كل جزء على ! (ليس) الخاصة به:

!(A && B) هو نفسه (!A) || (!B)

على سبيل المثال:

// دعونا نتحقق مما إذا كان الرقم ليس (بين 1 و 10)
let number = 15

// هذان التعبيران متكافئان:
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10)

console.log(result1)  // صحيح
console.log(result2)  // صحيح

والعكس صحيح أيضاً: !(A || B) هو نفسه (!A) && (!B)

على سبيل المثال:

// التحقق مما إذا كان الشخص ليس (طالباً أو موظفاً)
let is_student = false
let is_employed = false
// هذان التعبيران متكافئان:
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed

console.log(result1)  // صحيح
console.log(result2)  // صحيح
challenge icon

التحدي

مبتدئ

أنت تساعد متجر حيوانات أليفة في إنشاء نظام لتحديد ما إذا كان بإمكانهم بيع حيوان أليف لعميل.

قم بتهيئة المتغيرات التالية:

  • has_license بالقيمة true
  • has_space بالقيمة false
  • has_experience بالقيمة true

اكتب التعبيرات المنطقية التالية لتحديد ما إذا كان:

  • can_sell_regular_pet: يحتاج العميل إما إلى ترخيص أو خبرة، ويجب أن تتوفر لديه مساحة
  • can_sell_exotic_pet: يحتاج العميل إلى كل من الترخيص والخبرة معاً، ويجب أن تتوفر لديه مساحة
  • cannot_sell_any_pet: ليس لدى العميل ترخيص وليس لديه خبرة، أو ليس لديه مساحة

ورقة مرجعية

تسمح لك قوانين دي مورغان بتبسيط التعبيرات المنطقية عن طريق نقل معامل ! (ليس):

!(A && B) هو نفسه (!A) || (!B)

// ليس (بين 1 و 10)
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10)  // مكافئ

!(A || B) هو نفسه (!A) && (!B)

// ليس (طالب أو موظف)
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed  // مكافئ

جرّب بنفسك

// تهيئة المتغيرات

// حساب الشروط
let can_sell_regular_pet = 
let can_sell_exotic_pet = 
let cannot_sell_any_pet =

// لا تحذف الأسطر أدناه
console.log("Can sell regular pet:", can_sell_regular_pet)
console.log("Can sell exotic pet:", can_sell_exotic_pet)
console.log("Cannot sell any pet:", cannot_sell_any_pet)
quiz iconاختبر نفسك

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

جميع دروس Fundamentals