حاسبة إكمال المربع
تستقبل واجهة برمجة تطبيقات إكمال المربع المعاملات الثلاثة للتعبير التربيعي — a وb وc في ax² + bx + c — وتعيد كتابته بصيغة إكمال المربع، المعروفة أيضًا بصيغة الرأس: a(x − h)² + k.
شغّل الأداة مجانًا
وتُرجع المُعاملين اللذين يحددان هذا التحويل، h وk، مع رأس القطع المكافئ. إعادة الكتابة بأكملها عملية حسابية واحدة حتمية: h = −b/(2a) وk = c − b²/(4a). لا يوجد حلّ ولا تخمين ولا تقريب يتجاوز دقة التقريب التي تطلبها، فالمعاملات نفسها تنتج دائمًا صيغة الرأس نفسها. استخدمها لقراءة رأس القطع المكافئ مباشرةً، أو لتهيئة معادلة للحلّ، أو لتوحيد الحدود التربيعية في مسار معالجة أكبر — استدعاء واحد بدلًا من إجراء العمليات الجبرية يدويًا.
ما معنى إكمال المربع فعليًا
المعادلة التربيعية المكتوبة على الصورة ax² + bx + c لا تُظهر شكلها إلا بشكل غير مباشر. أما التعبير نفسه المعاد كتابته على الصورة a(x − h)² + k فيخبرك بالأمرين اللذين يريدهما معظم الناس فعلًا: أين يقع رأس القطع المكافئ، عند النقطة (h, k)، وهل ينفتح إلى الأعلى أم إلى الأسفل، من إشارة a. والأسلوب الكامن وراء إعادة الكتابة — إكمال المربع — يأخذ حدّي x² وx ويضيف ويطرح بالضبط الثابت اللازم لتحويلهما إلى ثلاثي حدود مربع كامل، يُختزل بعدها إلى الحدّ المربع. لا شيء يتغير في التعبير: عوّض بأي قيمة لـ x في أيٍّ من الصورتين فتحصل على العدد نفسه. ما يتغير هو ما يمكنك قراءته بنظرة واحدة. يُنقل المعامل a كما هو دون تعديل، فالمعامل الرئيس الذي ترسله هو نفسه الذي يضرب الحد المربع في الإجابة. تُجري نقطة النهاية إعادة الترتيب رمزيًا على المعاملات العددية الثلاثة، مما يعني أنها تعمل مع القيم الصحيحة والعشرية والسالبة على حدٍّ سواء، وترفض الحالة المنحلّة الوحيدة — أن يساوي a صفرًا — حيث يكون التعبير في الحقيقة خطًّا مستقيمًا وتفقد صيغة إكمال المربع معناها.
كيف يُحسب h وk
يأتي المُعاملان من متطابقتين مغلقتي الصيغة. الإزاحة الأفقية هي h = −b/(2a)، وهي بالضبط الإحداثي السيني لمحور تماثل القطع المكافئ. والإزاحة الرأسية هي k = c − b²/(4a)، وهي القيمة التي تأخذها المعادلة التربيعية عند ذلك المحور — أو بمعنى آخر، ما تحصل عليه بتعويض x = h في التعبير الأصلي. ولأنها صيغ دقيقة وليست إجراءً تكراريًا، فإن النتيجة حتمية: شغّلها مرتين على المعاملات نفسها فتتلقى مخرجات متطابقة تمامًا، وهذا ما يجعل الاستجابة آمنة للتخزين المؤقت والمقارنة والتضمين في الاختبارات. التقريب هو الموضع الوحيد الذي يدخله الاختيار. افتراضيًا يُقرَّب h وk إلى عشر خانات عشرية لتكون المخرجات مستقرة عبر الأجهزة واللغات؛ ويمكنك طلب ما بين صفر وخمس عشرة خانة عبر حقل الدقة الاختياري. القيم التي هي أعداد صحيحة دقيقة تبقى صحيحة مهما كانت الدقة، فالتعبير 2x² − 8x + 5 يُرجع h = 2 وk = −3، وليس 2.0000000000. يمكن إرسال المعاملات أعدادًا أو سلاسل نصية رقمية، ويجب أن يكون كل معامل عددًا منتهيًا — فالقيمتان Infinity وNaN مرفوضتان برسالة خطأ واضحة بدلًا من إنتاج نتائج بلا معنى بصمت.
أين يقع موضعها في التطبيق العملي
نادرًا ما يكون إكمال المربع الهدف النهائي؛ فهو الخطوة التي تفتح الخطوة التالية. إنه الطريق القياسي إلى القانون العام للمعادلات التربيعية، وأسرع وسيلة لإيجاد الرأس دون حساب التفاضل، والخطوة التي تحوّل معادلة الدائرة أو القطع الناقص إلى صيغة المركز ونصف القطر. في منتج تعليمي يتيح لك عرض صيغة الرأس إلى جانب الصيغة القياسية ليرى الطلاب العلاقة بينهما. وفي مسار معالجة رسوميات أو فيزياء يحوّل معادلة تربيعية مُطابَقة إلى موضع القمة وقيمتها مباشرةً: طابق ax² + bx + c على عيناتك، وأرسل المعاملات الثلاثة، واقرأ القيمة العظمى أو الصغرى من k. وفي خدمة تحسين يوحّد حدود الجزاء التربيعية قبل تسليمها إلى خوارزمية الحلّ. تعمل هذه القدرة كحساب خالص على خوادمنا الطرفية دون تخزين أي شيء، والشيفرة نفسها تعمل مجانًا في متصفحك على هذه الصفحة — ألصق المعاملات الثلاثة، وشاهد صيغة الرأس، ولا تدفع إلا عند ربطها بمسار آلي بسعر $0.002 لكل طلب.
حالات الاستخدام
أوجد رأس القطع المكافئ دون حساب تفاضلي
أرسل a وb وc واقرأ الرأس (h, k) مباشرةً من صيغة الرأس — دون مشتقة ودون خطوة رسم بياني.
هيّئ معادلة للحلّ
حوّل ax²+bx+c إلى a(x−h)²+k لتظهر الجذور على الصورة x = h ± √(−k/a)، وهو الطريق نفسه الذي يُشتق منه القانون العام.
استخرج قمة مُطابَقة في مسار معالجة بيانات
طابق معادلة تربيعية على قياسات مأخوذة بالعينات، ثم أرسل معاملاتها إلى هنا لتحصل على موضع القمة h وقيمتها k كأعداد نظيفة.
الأسئلة الشائعة
كم تبلغ التكلفة؟
$0.002 لكل طلب عبر API. كما يمكن تشغيلها مجانًا في متصفحك على هذه الصفحة.
ماذا تُرجع بالضبط؟
المعامل a دون تغيير، ومُعاملَي الرأس h وk، والصيغة المعاد كتابتها كسلسلة نصية a(x−h)²+k، والرأس كنقطة (x, y).
لماذا ترفض a = 0؟
لأن التعبير بمعامل رئيس يساوي صفرًا يصبح خطيًّا لا تربيعيًّا، وتصبح صيغة إكمال المربع غير معرّفة — إذ لن يكون للقسمة على 2a معنى.
هل يمكنني إرسال المعاملات كسلاسل نصية؟
نعم. تُقبل الأعداد والسلاسل النصية الرقمية كلاهما، لكن يجب أن يكون كل معامل عددًا منتهيًا؛ فالقيمتان Infinity وNaN مرفوضتان.
كيف تُقرَّب النتائج؟
يُقرَّب h وk افتراضيًا إلى عشر خانات عشرية؛ ويمكنك ضبط الدقة من 0 إلى 15. والأعداد الصحيحة الدقيقة تُرجَع كأعداد صحيحة عند أي دقة.
هل يُخزَّن أي شيء؟
لا. الحساب عملية حسابية خالصة على المعاملات الثلاثة التي ترسلها؛ ولا يُسجَّل شيء ولا يُحتفظ به.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/math/completing-the-square \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":2,"b":-8,"c":5}'const res = await fetch("https://api.kit.forhosting.com/math/completing-the-square", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 2,
"b": -8,
"c": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/completing-the-square",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 2,
"b": -8,
"c": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/completing-the-square", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":2,"b":-8,"c":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":2,"b":-8,"c":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/completing-the-square", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"a": 2,
"b": -8,
"c": 5
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.completing_the_square",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_abs_coeff | 1000000000000000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |