حاسبة درجة الاختبار المعيارية
يصعب مقارنة درجة اختبار خام عندما تُصحَّح إحدى الورقات من خمسين وأخرى من ثمانين وثالثة بدرجة صفية من صفر إلى عشرة.
شغّل الأداة مجانًا
تمدّ المعايرة بالحد الأدنى والأقصى العلامة الخام أو تضغطها إلى مقياس هدف مشترك مستخدمة فقط الحد الأدنى والأقصى المنشورين لكل اختبار، فيقع الأداء النسبي نفسه على الرقم نفسه. تطبّق حاسبة الدرجة المعيارية هذه التطبيق الخطي: القيمة المعيارية تساوي target_min زائد الكسر (score ناقص min_score) مقسومًا على (max_score ناقص min_score)، مضروبًا في (target_max ناقص target_min). الهدف الافتراضي من صفر إلى مئة ويُقرأ نسبة مئوية من مدى المصدر. تغذي الحسابات النقية نفسها ودجة المتصفح المجانية ومسار API. فشل التحقق لا يُحاسب.
طريقة الاستخدام
أدخل القيم في النموذج أعلاه. تتحقق الأداة منها قبل الحساب ثم تعرض النتيجة في الصفحة نفسها.
راجع بياناتك
اتبع التسميات والوحدات الموضحة بجانب كل حقل. إذا كانت قيمة مفقودة أو خارج النطاق، توضح الصفحة الحقل الذي يحتاج إلى تصحيح.
أعد الحساب أو نفّذه آليًا
استخدم أداة الويب للفحوص الفردية، واستخدم الواجهة البرمجية عند دمج الإمكانية نفسها في سير عمل آلي.
حالات الاستخدام
احصل على النتيجة الآن
أدخل مجموعة من القيم وشاهد النتيجة من دون إعداد جدول بيانات أو برنامج نصي.
قارن السيناريوهات
غيّر قيمة واحدة في كل مرة وأعد الحساب لمعرفة ما الذي يؤثر في النتيجة.
أتمت العمل المتكرر
استخدم الواجهة البرمجية عندما تحتاج إلى تشغيل الحساب نفسه داخل منتجك أو سير عملك.
الأسئلة الشائعة
كيف تُعايَر درجة اختبار خام بالحد الأدنى والأقصى؟
احسبوا fraction = (score − min_score) / (max_score − min_score) ثم normalized = target_min + fraction × (target_max − target_min). على الهدف الافتراضي 0–100 تلك ببساطة النسبة المئوية لمدى المصدر.
ما مقياس الهدف الافتراضي؟
من صفر إلى مئة. احذفوا target_min وtarget_max لتحصلوا على درجة بأسلوب النسبة المئوية. حدّدوهما صراحة للرسم إلى 0–10 أو 0–20 أو 1–5 أو أي مقياس صف شائع آخر.
ماذا يحدث إذا خرجت الدرجة الخام عن min_score وmax_score؟
يستمر التطبيق الخطي (قد يعلو الرصيد الإضافي السقف المنشور). تكون in_range بقيمة false وقد يكون الكسر دون 0 أو فوق 1. يُرفض مدى مصدر أو هدف صفري.
بم تختلف عن درجة z أو درجة T للاختبار؟
تستخدم درجة z متوسط الفوج وانحرافه المعياري. تعيد درجة T توسيط z محسوب سلفًا على متوسط 50 وSD 10. تستخدم هذه الأداة الحد الأدنى والأقصى المنشورين للاختبار فقط، دون افتراض توزيع.
كم تكلفة حاسبة الدرجة المعيارية للاختبار؟
أداة المتصفح مجانية. تستخدم طلبات API رصيد KIT المدفوع مقدمًا بسعر $0.002 لكل استدعاء ناجح؛ والإدخال غير الصالح لا يُحاسب.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/edu/normalized-test-score \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"score":40,"min_score":0,"max_score":50}'const res = await fetch("https://api.kit.forhosting.com/edu/normalized-test-score", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"score": 40,
"min_score": 0,
"max_score": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/normalized-test-score",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"score": 40,
"min_score": 0,
"max_score": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/normalized-test-score", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"score":40,"min_score":0,"max_score":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"score":40,"min_score":0,"max_score":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/normalized-test-score", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"score": 40,
"min_score": 0,
"max_score": 50
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.normalized_test_score",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_abs | 1000000000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |