حاسبة النجاح في الامتحان والنسبة والهامش
تحول هذه الحاسبة ثلاث قيم خام إلى نتيجة واضحة: الدرجة المحرزة، والدرجة الكلية الممكنة، والحد الأدنى للنجاح. وتبين هل تحققت نتيجة النجاح، وتحول الدرجة والحد إلى نسبتين مئويتين، ثم تعرض المسافة عن الحد بالنقاط الخام والنقاط المئوية. وبذلك يمكنكم فهم النتيجة بدقة حتى عندما يستخدم الامتحان مقياس درجات غير مألوف.
شغّل الأداة مجانًا
أدخلوا الدرجة والحد على المقياس نفسه
استخدموا الدرجة الخام المحرزة، والدرجة الكلية للامتحان، والحد الأدنى الخام للنجاح، ويجب أن تكون القيم الثلاث على المقياس نفسه. فإذا كان الامتحان من 80 نقطة، وكانت الدرجة 58، وكان النجاح يتطلب 48، فأدخلوا 58 و80 و48. لا تدخلوا 60 حداً للنجاح لمجرد أن 48 من 80 تساوي 60 في المئة؛ فالأداة تجري هذا التحويل. تقبل القيم العشرية عند منح أجزاء من النقاط. يجب أن تقع الدرجة وحد النجاح بين الصفر والدرجة الكلية، وأن تكون الدرجة الكلية أكبر من الصفر. يمنع ذلك الخطأ الشائع المتمثل في مقارنة نسبة مئوية بنقاط خام. لا تفترض الحاسبة سياسة تقييم إضافية، بل تطبق الحد الذي تقدمونه فقط.
اقرؤوا نتيجة النجاح والنسب والهامش
تكون قيمة passed صحيحة عندما تساوي الدرجة الخام حد النجاح أو تتجاوزه. وتعد المساواة نجاحاً لأن الحد هو أدنى درجة مقبولة. تعرض percentage حصة النقاط المحرزة من المجموع، بينما تعرض passing_percentage حد النجاح على المقياس المئوي نفسه. وتحسب margin_points بطرح الحد من الدرجة؛ فالقيمة الموجبة تعني أن الدرجة أعلى، والصفر يعني التطابق، والقيمة السالبة تبين مقدار النقص. أما margin_percentage_points فتعبر عن الفرق نفسه نسبة إلى مجموع الامتحان. والانتقال من حد قدره 60 في المئة إلى نتيجة قدرها 65 في المئة يعني فرقاً من خمس نقاط مئوية. تقرب النتائج إلى ست منازل عشرية كحد أقصى للمحافظة على الدقة والثبات.
استخدموا الحساب باتساق ومسؤولية
تفيد الأداة عندما تكون قاعدة النجاح الرسمية معروفة، لكن مقياس النقاط الخام يصعب تفسيره. يستطيع المعلم مراجعة النتيجة قبل نشرها، ويستطيع الطالب فهم المسافة عن الشرط، وتستطيع الإدارة تطبيق الحد نفسه على سجلات متعددة. لا تختار الأداة حد النجاح، ولا تضيف منحنى درجات، ولا تستبعد أسئلة، ولا تطبق أوزان الفئات أو قواعد التقريب المؤسسية. يجب حسم هذه السياسات قبل الإدخال. وإذا جمعت المادة واجبات بأوزان مختلفة، فاحسبوا أولاً الدرجة الخام الرسمية والمجموع الموافق لها، أو استخدموا نظام الدرجات المعتمد. تعاملوا مع الهامش بوصفه تفسيراً حسابياً لا سلطة لتجاوز اللائحة. وفي التشغيل الآلي تبلغ كلفة كل طلب API مقدار $0.002.
حالات الاستخدام
تأكيد نتيجة امتحان فردية
قارنوا نقاط الطالب بحد النجاح المنشور، واعرضوا النسبة والهامش الدقيق بوضوح.
شرح الإخفاق بفارق ضئيل
بينوا عدد النقاط الخام والمئوية الناقصة من دون تحويل المقياس يدوياً.
أتمتة فحص حدود النجاح
طبقوا حداً معلوماً باتساق واحتفظوا بقيم واضحة للتقارير والمراجعة.
الأسئلة الشائعة
هل تعد الدرجة المساوية تماماً لحد النجاح ناجحة؟
نعم. الحد هو أدنى درجة للنجاح، لذلك تكون passed صحيحة ويكون الهامشان صفراً.
هل أدخل حد النجاح نقاطاً أم نسبة مئوية؟
أدخلوه نقاطاً خاماً على مقياس الدرجة والمجموع نفسه، وستحسب الأداة النسبة.
هل تقبل القيم العشرية؟
نعم. تقبل الأعداد العشرية المحدودة للامتحانات التي تمنح أجزاء من النقاط.
ماذا يعني الهامش السالب؟
يعني أن الدرجة أدنى من الحد، وتبين القيمة المطلقة مقدار النقص بالنقاط الخام أو المئوية.
هل تطبق الأداة منحنى درجات أو أوزاناً؟
لا. إنها تقارن الدرجة بالحد المدخلين فقط، ويجب تطبيق أي تعديل مسبقاً.
ما كلفة طلب API؟
تبلغ كلفة كل طلب API مقدار $0.002. ويمكن لنسخة المتصفح إجراء الحساب الحتمي نفسه محلياً.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/edu/exam-pass-threshold \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"score":72,"total":100,"passing_mark":70}'const res = await fetch("https://api.kit.forhosting.com/edu/exam-pass-threshold", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"score": 72,
"total": 100,
"passing_mark": 70
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/exam-pass-threshold",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"score": 72,
"total": 100,
"passing_mark": 70
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/exam-pass-threshold", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"score":72,"total":100,"passing_mark":70}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"score":72,"total":100,"passing_mark":70}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/exam-pass-threshold", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"score": 72,
"total": 100,
"passing_mark": 70
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.exam_pass_threshold",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |