المعكوس الضربي المعياري
أوجد العدد الذي يلغي عملية ضرب بترديد m: معكوس 3 بترديد 11 هو 4، لأن 3 في 4 يترك الباقي 1. ترى أيضًا القاسم المشترك الأكبر وقيمة للتحقق، ورسالة واضحة عندما لا يوجد معكوس. مجانًا في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- A
- 3
- المقياس m ≥ 2
- 11
- A باقٍ
- 3
- المعكوس
- 4
- ق.م.أ
- 1
- تحقق
- 1
المعكوس الضربي المعياري لعدد صحيح a modulo m هو الباقي x الذي يحقق أن a مضروباً في x متطابق مع الواحد modulo m. يوجد هذا المعكوس إذا وفقط إذا كان a و m أوليين معاً — أي أن القاسم المشترك الأكبر يساوي واحداً. تحتاج دروس التشفير وخطوات المفتاح الخاص في RSA والقسمة المعيارية في البرمجة التنافسية وحسابات الزمر الدورية إلى هذه العملية، غير أن كثيراً من اللغات تعرض GCD ثنائياً فقط وتترك معاملات بيزو لكم. تأخذ هذه الحاسبة a و m، وتشغّل خوارزمية إقليدس الموسّعة بشكل حتمي، وتعيد المعكوس غير السالب الوحيد في المدى من صفر إلى m ناقص واحد، مع gcd وجداء تحقق حتى تتحققوا من النتيجة دون إعادة اشتقاق الخطوات.
ما المعكوس المعياري ومتى يوجد
في الحساب العادي لكل عدد غير صفري معكوس ضربي: اقسموا عليه فتحصلوا على واحد. في الحساب المعياري تصبح الفكرة نفسها تطابقاً. نقول إن x معكوس معياري لـ a modulo m عندما يترك a مضروباً في x باقياً واحداً عند القسمة على m.
لأن البواقي تدور كل m خطوة، ليس لكل a مثل هذا x. العائق عددي وليس عشرياً عائماً: إذا كان d يساوي gcd لـ a و m وكان d أكبر من واحد، فإن a مضروباً في أي عدد صحيح مضاعف لـ d، فلا يمكن للجداء أن يكون متطابقاً مع الواحد الذي ليس مضاعفاً لـ d. وعلى العكس تضمن هوية بيزو أعداداً صحيحة x و y بحيث a x زائد m y يساوي واحداً بالضبط عندما يكون ذلك gcd واحداً، واختزال x modulo m يعطي المعكوس.
يصادف المهندسون هذا الشرط عند القسمة في حقل منتهٍ، وعند اختيار أسس فك تشفير RSA التي تعكس الأس العام modulo phi لـ n، وعند التراجع عن ضرب معياري في مسارات التجزئة، أو عند حل التطابقات الخطية في البرمجة التنافسية. إرجاع خطأ صريح عندما لا يكون الزوج أولياً معاً أنفع من فشل صامت: يتعلم العميل أنه لا يوجد معكوس ويمكنه التفريع حسب gcd بدل التخمين أي مكتبة أعادت باقياً خاطئاً.
حالات الاستخدام
مختبرات التشفير وتعليم RSA
يمكن للمدرسين والطلاب عكس الأسس العامة modulo φ(n) عند الطلب وفحص gcd عندما لا يكون مقياس العينة أولياً مع الأس.
البرمجة التنافسية والقسمة المعيارية
يمكن لمبرمجي المسابقات استبدال مقتطفات GCD الموسّع العشوائية باستدعاء حتمي واحد عند التحقق من القسمة المعيارية تحت مقاييس أولية أو مركبة.
الأسئلة الشائعة
ماذا يحدث إن لم يكن a و m أوليين معاً؟
تتضمن الرسالة gcd(a, m) لتعرفوا لماذا لا يوجد معكوس ضربي معياري. التحقق الفاشل لا يُحاسب.
أي خوارزمية تحسب المعكوس؟
خوارزمية إقليدس الموسّعة. تجد معاملات بيزو لـ a mod m و m؛ عندما يكون gcd 1 يُختزل معامل a إلى المدى 0..m−1.
ما نطاقات a و m المقبولة؟
يجب أن يكون m عدداً صحيحاً من 2 إلى 1,000,000,000,000. ويجب أن يكون a عدداً صحيحاً قيمته المطلقة لا تتجاوز ذلك الحد نفسه. تُرفض القيم خارجه.
ما معكوس 3 بترديد 11؟
هو 4. عند ضرب 3 في 4 والقسمة على 11 يبقى 1، وهذا بالضبط ما يجب أن يحققه المعكوس. وقيمة التحقق المعروضة بجوار النتيجة هي هذا العدد 1.
فيمَ يُستخدم المعكوس المعياري؟
يُستخدم للقسمة بترديد m وحل التطابقات الخطية، وفي التشفير لإيجاد أس فك تشفير RSA بعكس الأس العام بترديد φ(n). وتحتاجه كثيرًا دروس الرياضيات ومسابقات البرمجة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/numth/modular-inverse \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":3,"m":11}'const res = await fetch("https://api.kit.forhosting.com/numth/modular-inverse", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 3,
"m": 11
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/modular-inverse",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 3,
"m": 11
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/modular-inverse", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":3,"m":11}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":3,"m":11}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/modular-inverse", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"a": 3,
"m": 11
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.modular_inverse",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_abs | 1000000000000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
كيف تشغّل هذه الحاسبة خوارزمية إقليدس الموسّعة
استدعوا القدرة بالحقلين الصحيحين a و m، حيث m لا يقل عن اثنين. القيم المطلقة محدودة بترليون واحد حتى يبقى كل جداء وسيط ضمن نطاق الأعداد الصحيحة الآمنة في JavaScript. تختزل التنفيذ أولاً a إلى صنف الباقي غير السالب a_mod من صفر إلى m ناقص واحد، ثم تطبق خوارزمية إقليدس الموسّعة على الزوج a_mod و m. تسجّل كل خطوة الحاصل الصحيح وتحدّث معاملات بيزو بحيث عند الانتهاء يضرب معامل a_mod في a_mod زائد معامل m يساوي gcd. إذا لم يكن ذلك gcd واحداً، يفشل الطلب بـ invalid_input ورسالة تسمي المدخلين و gcd؛ لا يُحسب شيء. إذا كان gcd واحداً، يُختزل معامل a_mod إلى المدى من صفر إلى m ناقص واحد ويُعاد كـ inverse. يعيد الرد أيضاً a و m و a_mod و gcd و check المساوي لـ a_mod مضروباً في inverse modulo m، ويجب أن يكون واحداً عند نجاح الاستدعاء.
الاستخدام العملي والحدود والتسعير والتسليم
استخدموا أداة المتصفح عندما تريدون معكوساً سريعاً أثناء قراءة ملاحظة تشفير أو التحقق من تطابق واجب أو تصحيح خطوة ضرب معياري. المدخلات المقبولة أعداد صحيحة a بقيمة مطلقة لا تتجاوز ترليوناً ووحدات قياس m من اثنين إلى ترليون. النتائج حتمية: الزوج نفسه يعطي دائماً المعكوس نفسه وحقل check نفسه. استخدموا API عندما يحتاج سكربت أو مصحح أو منصة تعليمية إلى معكوسات كثيرة دون تضمين روتين GCD موسّع. كل طلب ناجح بند قابل للفوترة بسعر $0.002؛ إخفاقات التحقق والأزواج غير الأولية معاً لا تستهلك الرصيد. اربطوا نقطة النهاية بمختبرات تعليم RSA وعروض الحقول المنتهية ومساعدات البرمجة التنافسية أو أي مسار أعداد صحيحة يفضّل الحساب الدقيق على الاستدلالات التقريبية. لأن الوحدة بند واحد والمحرك parse نقي، تبقى الكمون منخفضة والقناة المجانية تعكس API المدفوعة دون مسار شيفرة ثانٍ قد ينحرف.
حالات التكامل
مدققو الواجبات ومسارات نظرية الأعداد
يمكن للمصححين والسكربتات الآلية تأكيد المعكوسات وكشف المدخلات غير الأولية معاً عبر invalid_input وإبقاء كل جداء وسيط ضمن الحدود الموثقة.
أسئلة تقنية
كيف أحسب معكوساً معيارياً بهذه API؟
أرسلوا JSON بحقلين صحيحين a و m (m ≥ 2) إلى numth.modular_inverse. عند النجاح يعيد الرد inverse في 0..m−1 مع a_mod و gcd و check مساوياً لـ 1.
هل حاسبة المعكوس المعياري مجانية؟
أداة المتصفح تعمل مجاناً على جهازكم. استدعاءات API تستخدم رصيد KIT مدفوعاً مسبقاً بسعر $0.002 لكل بند ناجح؛ المدخلات غير الصالحة أو غير الأولية معاً لا تُحاسب.