حاسبة القاسم المشترك الأكبر (GCD) عبر الإنترنت
القاسم المشترك الأكبر للعددين 1071 و462 هو 21، ويُستخرج في ثلاث خطوات من طريقة إقليدس دون تحليل أي منهما إلى عوامل. أدخل عددين صحيحين، ولو كان أحدهما سالبًا أو صفرًا، واستعمل النتيجة لاختزال 462/1071 إلى 22/51. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- A
- 1,071
- B
- 462
- Gcd
- 21
تستقبل واجهة القاسم المشترك الأكبر عددين صحيحين وتُعيد أكبر عدد صحيح موجب يقسم كليهما دون باقٍ، محسوبًا بخوارزمية إقليدس الكلاسيكية. تُتجاهل الإشارات، ويُعالَج وجود صفر واحد وفق القاعدة gcd(n, 0) = |n|، والحالة الوحيدة المرفوضة هي gcd(0, 0) غير المعرَّفة رياضيًّا.
ما القاسم المشترك الأكبر حقًّا
القاسم المشترك الأكبر لعددين صحيحين هو أكبر عدد صحيح موجب يقسم كليهما تمامًا. ففي حالة 1071 و462 يساوي 21، لأن 1071 = 21 × 51 و462 = 21 × 22، ولا يوجد عدد أكبر يقسمهما معًا. وعندما تكون النتيجة 1 يُقال إن العددين أوليان فيما بينهما، أي لا يشتركان في أي عامل.
المفهوم قديم جدًّا — فهو في صميم كتاب «العناصر» لإقليدس — وما زال أسرع طريقة للإجابة عن أسئلة عملية للغاية: اختزال كسر إلى أبسط صورة، أو التحقق مما إذا كانت عمليتان دوريتان ستتزامنان يومًا، أو تبسيط نسبة قبل عرضها. لا تقريب ولا تقريب عددي أبدًا: عدد صحيح في الدخل، وعدد صحيح دقيق في الخرج.
كيف تحسبه خوارزمية إقليدس
يعتمد التنفيذ على صيغة إقليدس الخالية من الطرح: استبدال العدد الأكبر بباقي قسمته على الأصغر مرارًا حتى يصبح الباقي صفرًا، فيكون آخر باقٍ غير صفري هو الجواب. فمع 1071 و462: 1071 mod 462 = 147، ثم 462 mod 147 = 21، ثم 147 mod 21 = 0، فالنتيجة 21. تعمل الحلقة في زمن O(log min(a, b)) من التكرارات، ما يعني أن الأعداد القريبة من حد الأعداد الصحيحة الآمنة تنتهي في خطوات قليلة، دون تحليل إلى عوامل ودون فاصلة عائمة.
تُزال الإشارات أولًا لأن القابلية للقسمة لا تتعلق بها، ولذلك gcd(-12, 18) = 6.
أين يقع موضعه في العمل الفعلي
اختزال الكسور هو الاستخدام الأمثل: اقسم البسط والمقام على قاسمهما المشترك الأكبر فيصبح الكسر في أبسط صورة، وهذا ما تحتاجه أنظمة الفوترة ومضاعفات الوصفات وشاشات عرض النِّسب قبل تقديم أي رقم. ويقوم عليه أيضًا فحص التباين النسبي — فالنتيجة 1 هي الاختبار — وكذلك آليات باقي القسمة الصينية والمعكوس القياسي المستخدمة في التشفير، حيث يمثل القاسم المشترك الأكبر الخطوة الأولى في خوارزمية إقليدس الموسَّعة. تعمل هذه القدرة على بنيتنا الطرفية دون تخزين أي شيء: يصل العددان ويغادر القاسم، ولا يُحتفظ بأي سجل لأرقامك.
حالات الاستخدام
اختزال الكسور إلى أبسط صورة
اقسم البسط والمقام على قاسمهما المشترك الأكبر قبل تخزين النسبة أو عرضها، فيتحول 462/1071 إلى 22/51.
التحقق من أن عددين أوليان فيما بينهما
النتيجة 1 تعني أن الزوج لا يشترك في أي عامل، وهي الشرط المسبق لكثير من بنى الجدولة والتجزئة والتشفير.
مزامنة العمليات الدورية
إلى جانب المضاعف المشترك الأصغر، يخبرك القاسم المشترك الأكبر متى تتزامن دورتان مختلفتا الطول وكيف تقسّم العمل إلى دفعات متساوية.
الأسئلة الشائعة
كم تبلغ التكلفة؟
كما يمكن تشغيلها مجانًا في متصفحك على هذه الصفحة بالشيفرة نفسها تمامًا.
هل يمكن أن تكون المدخلات سالبة؟
نعم. تُتجاهل الإشارات لأن القابلية للقسمة لا تتعلق بها: gcd(-12, 18) = 6، دائمًا كعدد صحيح موجب.
ماذا يحدث مع الصفر؟
تُعيد gcd(n, 0) القيمة |n| لأي n غير صفري.
ما أكبر حجم ممكن للأعداد الصحيحة؟
أي عدد صحيح آمن بمعايير JavaScript، حتى 2^53 − 1 من حيث القيمة المطلقة. القيم الخارجة عن هذا النطاق تُرفَض بدلًا من حسابها بدقة ناقصة.
ما الخوارزمية المستخدمة؟
خوارزمية إقليدس: خطوات قسمة متكررة حتى يصبح الباقي صفرًا. تعمل في زمن O(log min(a, b)) من التكرارات دون تحليل إلى عوامل ودون فاصلة عائمة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/math/gcd \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":1071,"b":462}'const res = await fetch("https://api.kit.forhosting.com/math/gcd", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 1071,
"b": 462
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/gcd",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 1071,
"b": 462
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/gcd", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":1071,"b":462}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":1071,"b":462}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/gcd", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"a": 1071,
"b": 462
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.gcd",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
إنها أداة صغيرة ودقيقة: الشيفرة الحتمية نفسها تعمل مجانًا في متصفحك وخلف نقطة النهاية المدفوعة، فالنتيجة التي تراها أثناء التجربة هي ذاتها التي ستحصل عليها منظومتك في بيئة الإنتاج.
ما القاسم المشترك الأكبر حقًّا
تستقبل نقطة النهاية العددين في الحقلين a وb، وتقبل أيًّا من الإشارتين، وتُعيد كائنًا واحدًا يتضمن القاسم الموجب.
كيف تحسبه خوارزمية إقليدس
أما الحالات الحدّية فتتبع الاصطلاح القياسي: gcd(n, 0) = |n| لأي n غير صفري، بينما gcd(0, 0) غير معرَّفة وتُرفَض بخطأ invalid_input بدلًا من صفر صامت خاطئ.
أين يقع موضعه في العمل الفعلي
يمكنك تجربتها مجانًا في هذه الصفحة بالشيفرة نفسها التي تخدم API، ولا تدفع $0.002 لكل طلب إلا عند استدعائها من أنظمتك الخاصة، ما يجعلها رخيصة بما يكفي لتضمينها في خطوة تنقية بيانات تعالج ملايين الأزواج.