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