حاسبة المضروب الفرعي
عُدّ الاختلالات لعدد n من العناصر، أي الترتيبات التي لا يبقى فيها أي عنصر في مكانه الأصلي: المضروب الفرعي للعدد 4 يساوي 9، وتحصل أيضًا على احتمال أن يكون الخلط العشوائي واحدًا منها. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- عدد العناصر n
- 0
- عدد التبديلات بلا نقاط ثابتة
- 1
- احتمال عدم وجود نقاط ثابتة
- 1
تحسب هذه الوجهة المضروب الفرعي ! n، أي عدد اختلالات n عنصرًا — التباديل التي لا يبقى فيها أي عنصر في موضعه الأصلي. من عدد صحيح n تعيد عدد الاختلالات واحتمال أن يكون تبديل عشوائي اختلالًا.
ماذا يعدّ المضروب الفرعي والمتسلسلة المستخدمة
يعدّ المضروب الفرعي ! n الاختلالات: تباديل n عنصرًا متمايزًا التي لا يُترَك فيها أي عنصر في موضعه الأصلي. تُقيّمه هذه القدرة من المتسلسلة المتناوبة !
n = n! · Σ (−1)^k / k! حيث يمتد k من 0 إلى n، وهي نتيجة الإدماج والإقصاء الكلاسيكية. ويجمّع التنفيذُ ذلك المجموع حدًّا حدًّا بينما يبني k!
تدريجيًا، ثم يضرب في n! ويقرّب إلى أقرب عدد صحيح ليمتص ضجيج الفاصلة العائمة، فتكون القيمة المعادة عدًّا صحيحًا دقيقًا. والقيم الأولى هي !
0 = 1 و! 1 = 0 و! 2 = 1 و! 3 = 2 و! 4 = 9 و! 5 = 44.
فالتبديل الخالي الوحيد لصفر عنصر هو اختلال على نحو تفريغي، ولهذا ! 0 = 1، في حين لا يمكن لعنصر وحيد أن يتزحزح فيكون ! 1 = 0.
احتمال الاختلال وصلته بـ 1/e
إلى جانب العدد تعيد الأداة probability، أي احتمال أن يكون تبديل n عنصرًا مسحوبًا بانتظام عشوائيًا اختلالًا، محسوبًا بالصيغة value / n! ولأن المتسلسلة أعلاه هي بالضبط بسط تايلور المقطوع لـ e^(−1)، يتقارب هذا الاحتمال بسرعة كبيرة إلى 1/e ≈ 0.367879 كلما كبر n. وهو قريب منه أصلًا عند n صغير: فـ !
4 = 9 من أصل 4! ويُقرَّب الاحتمال تقريب half-up إلى ستة مواضع عشرية افتراضيًا. وهذا هو اللبّ الرياضي لمسألة تسليم القبعات أو سانتا السري الكلاسيكية، حيث لا تكاد الإجابة تتغير متى صار العدد أكبر من حفنة أشخاص.
مجال الإدخال والتقريب والتحقق
المُدخل الوحيد المطلوب هو n، ويجب أن يكون عددًا صحيحًا من 0 إلى 20. والحد الأعلى 20 مقصود: إذ يبلغ 20! نحو 2.43 × 10^18، قرب حافة ما يمثّله عدد مزدوج الدقة تمامًا، فحصر n يُبقي عدد الاختلالات الصحيح دقيقًا بدل أن يفقد الدقة في صمت.
ويضبط معامِل decimals الاختياري تقريب half-up للاحتمال.
حالات الاستخدام
سانتا السري وتبادل الهدايا
احسب احتمال ألّا يترك سحب عشوائي أحدًا مسندًا إلى نفسه، أو عُدّ الاختلالات الصالحة، قبل إجراء إسناد هدايا أو شركاء.
مقررات التوافقيات
أنتج قيم !n دقيقة واحتمال الإدماج والإقصاء لبناء مفاتيح إجابات أو مقارنة صيغ مشتقة بالمتسلسلة المغلقة الشكل.
تصميم اختبارات عشوائية
قدّر مقدار احتمال أن يترك تبديل مخلوط عنصرًا في مكانه، وهو مفيد عند توليد خلطات يجب أن تُزحزح كل عنصر.
الأسئلة الشائعة
ما المضروب الفرعي؟
المضروب الفرعي ! n هو عدد اختلالات n عنصرًا — التباديل التي لا يبقى فيها أي عنصر في موضعه الأصلي — ويُعطى بالصيغة n! ·Σ(−1)^k/k!.
لماذا !0 يساوي 1 و!1 يساوي 0؟
التبديل الخالي لصفر عنصر اختلال على نحو تفريغي، فـ ! 0 = 1؛ ولا يمكن لعنصر وحيد أن يتجنب موضعه، فـ ! 1 = 0.
ما احتمال الاختلال؟
هو value / n!، أي احتمال أن يكون تبديل عشوائي اختلالًا. ويتقارب بسرعة إلى 1/e ≈ 0.367879 كلما ازداد n.
ما قيم n المسموح بها؟
يجب أن يكون n عددًا صحيحًا من 0 إلى 20؛ فالحصر يُبقي العدد دقيقًا في الدقة المزدوجة.
بكم طريقة يمكن لخمسة أشخاص سحب الأسماء دون أن يسحب أحد اسمه؟
هناك 44 طريقة، وهو المضروب الفرعي للعدد 5. ولأربعة أشخاص تكون 9 سحبات من أصل 24 ممكنة، وتحوّل الحاسبة هذه النسبة إلى احتمال قدره 0.375 لتقدّر نتيجة تبادل الهدايا قبل إجرائه.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/math/subfactorial \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":4}'const res = await fetch("https://api.kit.forhosting.com/math/subfactorial", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/subfactorial",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/subfactorial", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/subfactorial", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"n": 4
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.subfactorial",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
احتمال الاختلال وصلته بـ 1/e
(ومعرَّفًا بأنه 1 عند n = 0). = 24 يعطي 0.375، وبحلول n = 6 أو 7 تصبح القيمة لا تُميَّز عن 1/e بالدقة اليومية.
مجال الإدخال والتقريب والتحقق
وأي عدد غير صحيح أو قيمة سالبة أو n فوق 20 يُطلق خطأ invalid_input مُصنَّفًا برسالة "n inválido"، فيدع نموذجًا أو عميلًا يستجيب على رمز الخطأ دون تحليل نص. والمخرجات حتمية — فالـ n نفسه يعطي دومًا القيمة والاحتمال نفسيهما — فتصلح النتائج تجهيزات انحدار ثابتة، مثل المثال المرفق n = 0 الذي يعيد value مقداره 1 وprobability مقداره 1.
أسئلة تقنية
هل هي مجانية وكيف أؤتمتها؟
يعمل widget من الفئة tier A مجانًا في المتصفح؛ ويعيد API الحتمي JSON نفسه للقيمة والاحتمال ابتداءً من $0.002 لكل نداء.