حاسبة التباديل والتوافيق

يخلط كثيرون بين التباديل والتوافيق رغم أن الفرق بينهما بسيط: هل يهم ترتيب العناصر المختارة أم لا؟ أدخل عدد العناصر الكلي n وعدد العناصر المختارة r لتحصل فوراً على قيمة nPr (التباديل) وnCr (التوافيق) معاً، محسوبتين بدقة كاملة حتى مع الأعداد الكبيرة جداً دون أي تقريب.



احسب nPr و nCr

الحد الأقصى المسموح: 1000
يجب أن يكون r أصغر من أو يساوي n

مفهوم التباديل والتوافيق والمعادلات

التباديل والتوافيق فرعان من علم التوافيقيات (Combinatorics) يهدفان لعدّ عدد الطرق الممكنة لاختيار أو ترتيب عناصر من مجموعة أكبر. السؤال الفاصل بينهما دائماً هو: هل يهمنا ترتيب العناصر؟

  • التباديل (Permutations): nPr = n! / (n-r)! — يهم فيها الترتيب
  • التوافيق (Combinations): nCr = n! / (r! × (n-r)!) — لا يهم فيها الترتيب

حيث n! (يُقرأ "مضروب n") يعني حاصل ضرب جميع الأعداد الصحيحة من 1 إلى n. لأن هذا العدد يكبر بسرعة مذهلة (مثلاً 20! يتجاوز 2.4 كوينتيليون)، تستخدم هذه الحاسبة صيغة مختصرة تحسب فقط حاصل ضرب الأعداد من (n-r+1) إلى n بدلاً من حساب n! الكامل، ثم تقسم على r! للحصول على nCr، وكل ذلك باستخدام BigInt لضمان دقة تامة مهما كبرت الأرقام.

استخدامات التباديل والتوافيق في الحياة العملية

في الألعاب والرياضة:

  • توزيع الميداليات: ترتيب الفائزين بالمراكز الأول والثاني والثالث هو مسألة تباديل، لأن المركز يهم
  • تشكيل فرق من لاعبين: اختيار 5 لاعبين أساسيين من فريق 12 دون تحديد أدوارهم هو مسألة توافيق
  • ترتيب أوراق اللعب: حساب احتمالات أيدي البوكر يعتمد بالكامل على التوافيق

في إدارة الأعمال والموارد البشرية:

  • تشكيل لجان ومجالس: اختيار أعضاء لجنة من موظفين هو دائماً مسألة توافيق
  • جدولة المهام المتسلسلة: ترتيب مهام مشروع بترتيب تنفيذ محدد هو مسألة تباديل
  • توزيع جوائز أو مناصب مختلفة: إسناد أدوار قيادية مختلفة لأشخاص هو مسألة تباديل لأن كل دور مختلف عن الآخر

في التقنية وعلوم الحاسوب:

  • تحليل قوة كلمات المرور: حساب عدد التركيبات الممكنة لكلمة مرور بطول معين
  • خوارزميات الترتيب والبحث: تحليل تعقيد الخوارزميات التي تجرب كل الترتيبات الممكنة
  • اختيار عينات عشوائية من قواعد البيانات: حساب عدد العينات الممكنة عند اختيار سجلات دون تكرار

في الإحصاء والاحتمالات:

  • حساب الاحتمالات الكلاسيكية: تُستخدم التوافيق كمقام في حساب احتمال حدوث نتيجة معينة
  • التوزيع ذو الحدين: يعتمد بشكل مباشر على معامل ذي الحدين (n اختيار r) وهو نفسه nCr
جدول مرجعي: قيم nCr عند n=5

هذا الجدول يوضح كيف تنمو قيم التوافيق (nCr) لمجموعة ثابتة من 5 عناصر مع تغيّر عدد العناصر المختارة r، وهو صف مأخوذ من مثلث باسكال الشهير:

r012345
C(5, r)15101051
💡 ملاحظة: لاحظ التماثل: C(5,0)=C(5,5)=1، وC(5,1)=C(5,4)=5، وC(5,2)=C(5,3)=10. هذا التماثل C(n,r) = C(n, n-r) صحيح دائماً لأي n وr.
أمثلة محلولة بالكامل

مثال 1: n=5، r=3

nPr = 5×4×3 = 60
nCr = 60 / (3×2×1) = 60/6 = 10

مثال 2: n=10، r=4

nPr = 10×9×8×7 = 5,040
nCr = 5,040 / (4×3×2×1) = 5,040/24 = 210

مثال 3: توزيع أوراق البوكر (n=52، r=5)

nPr = 52×51×50×49×48 = 311,875,200
nCr = 311,875,200 / 120 = 2,598,960
هذا الرقم الشهير هو بالضبط عدد أيدي البوكر الممكنة من مجموعة أوراق قياسية.

مثال 4: أعداد كبيرة (n=1000، r=2)

nPr = 1000×999 = 999,000
nCr = 999,000 / 2 = 499,500
حتى مع n القريب من الحد الأقصى، تحسب الحاسبة النتيجة الدقيقة فوراً بفضل استخدام BigInt.
نصائح وأخطاء شائعة
  • اسأل نفسك دائماً "هل الترتيب مهم؟": هذا السؤال وحده يحل معظم الالتباس بين التباديل والتوافيق
  • تذكر أن nCr ≤ nPr دائماً: إذا حصلت على نتيجة عكسية فهناك خطأ في المعادلة المستخدمة
  • احذر من الحساب اليدوي لعوامل مضروب كبيرة: استخدم دائماً الصيغة المختصرة بدلاً من حساب n! كاملاً ثم القسمة
  • تحقق من الحالات الحدّية: عندما r=0 تكون النتيجة دائماً 1 (طريقة واحدة لعدم اختيار شيء)، وعندما r=n تكون nCr=1 أيضاً
⚠️ خطأ شائع: الخلط بين "اختيار لجنة من 3 أشخاص" (توافيق) و"اختيار رئيس ونائب وأمين سر من 3 أشخاص" (تباديل)، رغم أن كلا السؤالين يبدوان متشابهين لأول وهلة.

أسئلة متكررة

ما الفرق بين التباديل والتوافيق؟

التباديل (nPr) تحسب عدد الطرق لترتيب r عنصراً من أصل n مع اعتبار الترتيب مهماً، مثل توزيع مراكز فوز في سباق. أما التوافيق (nCr) فتحسب عدد الطرق لاختيار نفس العناصر دون اعتبار للترتيب، مثل اختيار أعضاء لجنة. النتيجة الحسابية للتوافيق دائماً أصغر من أو تساوي التباديل.

ما هي معادلة nPr و nCr؟

معادلة التباديل: nPr = n! / (n-r)!. معادلة التوافيق: nCr = n! / (r! × (n-r)!) = nPr / r!. مثلاً لـ n=5 وr=3: nPr=60 وnCr=60/6=10.

لماذا تستخدم الحاسبة BigInt بدلاً من الأرقام العادية؟

لأن قيم المضروب تكبر بسرعة هائلة تتجاوز حدود الدقة الآمنة للأرقام العادية في جافاسكريبت (Number.MAX_SAFE_INTEGER)، فمثلاً 20! يتجاوز 2.4 كوينتيليون. استخدام BigInt يضمن حساب النتيجة الصحيحة بالضبط دون أي تقريب، حتى مع n يصل إلى 1000.

لماذا تحدّ الحاسبة n بـ 1000؟

عند n كبيرة جداً وr قريبة من n، قد تحتوي النتيجة على آلاف الأرقام، ما يجعل عرضها وحسابها في المتصفح أبطأ دون فائدة عملية إضافية. الحد الأقصى 1000 يوازن بين تغطية معظم الاستخدامات العملية والحفاظ على استجابة فورية للحاسبة.

ماذا يحدث إذا كان r أكبر من n؟

هذا غير ممكن رياضياً، لأنك لا تستطيع اختيار أو ترتيب عدد عناصر أكبر مما تملكه أصلاً. تعرض الحاسبة رسالة تنبيه في هذه الحالة وتطلب منك التأكد من أن r أصغر من أو يساوي n.

ماذا تعني النتيجة عندما يكون r=0؟

عندما r=0 تكون كل من nPr وnCr تساوي 1، لأن هناك طريقة واحدة فقط "لعدم اختيار أي عنصر" سواء اعتبرنا الترتيب أم لا. هذه حالة حدّية طبيعية وليست خطأ.

هل تُستخدم التوافيق في حساب الاحتمالات؟

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

لماذا nCr(5,2) تساوي nCr(5,3)؟

لأن اختيار عنصرين من 5 لتكوين مجموعة يكافئ تماماً اختيار العناصر الثلاثة المتبقية لاستبعادها. هذا التماثل الرياضي C(n,r) = C(n, n-r) صحيح دائماً، ويمكنك رؤيته بوضوح في الجدول المرجعي أعلاه حيث C(5,2) = C(5,3) = 10.