ما هي عملية باقي القسمة (mod)؟
عملية باقي القسمة، التي تُكتب على شكل a mod b، تُعطيك الباقي المتبقّي عند قسمة المقسوم a على المقسوم عليه b (الـ«مقياس» أو القاسم). تجدها في كل مكان في علوم الحاسب والرياضيات: حساب الساعات، ودوال التجزئة (hashing)، والتنقّل الدائري عبر عناصر القائمة، واختبار قابلية القسمة، والتشفير — جميعها تعتمد عليها. تحسب هذه الأداة الباقي للأعداد الموجبة والسالبة والكسور العشرية، وتعرض برهانًا كاملًا خطوة بخطوة.
طريقة الاستخدام
أدخِل المقسوم (a) والمقياس / المقسوم عليه (b). يمكن لأيٍّ من القيمتين أن تكون سالبة أو كسرًا عشريًا — استخدم زر +/- لتبديل الإشارة بسرعة. لا يجوز أن يكون المقسوم عليه صفرًا، لأن القسمة على صفر غير معرّفة. تُظهر النتيجة الباقي، وناتج القسمة الصحيح، وقيمة باقي القسمة المُقرَّبة للأسفل (اختيارية)، إضافةً إلى برهان مكتوب.
شرح المعادلة
تعتمد هذه الحاسبة على اصطلاح القسمة المبتورة (truncated-division)، وهو القاعدة نفسها التي يتبعها المعامل % في لغات C وJava وJavaScript. أولًا يُبتر ناتج القسمة نحو الصفر: \( q = \operatorname{trunc}(a / b) \). ثم يُحسب الباقي بالعلاقة \( n = a - q \cdot b \). وبما أن ناتج القسمة يُبتر بدلًا من تقريبه للأسفل، فإن الباقي يأخذ إشارة المقسوم a. على سبيل المثال، تكون النتيجة هنا -5 mod 2 = -1، بينما يعطي الاصطلاح البديل «المُقرَّب للأسفل» (المعروض كناتج ثانوي) القيمة 1، إذ يأخذ إشارة المقسوم عليه بدلًا من ذلك.
مثال محلول
عند a = 5 وb = 2: يكون ناتج القسمة \( \operatorname{trunc}(5/2) = \operatorname{trunc}(2.5) = 2 \)، والباقي \( 5 - 2 \times 2 = 1 \). البرهان: \( 5 \div 2 = 2 \) والباقي 1، و\( 2 \times 2 + 1 = 5 \). إذن \( 5 \bmod 2 = 1 \). أما في حالة كسرية: 7.5 mod 2 تعطي \( \operatorname{trunc}(3.75) = 3 \) و\( 7.5 - 3 \times 2 = 1.5 \).
الأسئلة الشائعة
لماذا تساوي -5 mod 2 القيمة -1 وليس 1؟ تتبع هذه الأداة اصطلاح البتر المستخدم في لغات البرمجة، لذا يتوافق الباقي مع إشارة المقسوم. ويعرض صفّ باقي القسمة المُقرَّب للأسفل إجابة الاصطلاح الرياضي (1) عندما تحتاج إلى إشارة المقسوم عليه.
كيف أختبر قابلية القسمة؟ يكون العدد x من مضاعفات b تمامًا عندما يكون \( x \bmod b = 0 \). مثلًا \( 496 \bmod 4 = 0 \) (مضاعف)، بينما \( 226 \bmod 4 = 2 \) (ليس مضاعفًا).
هل يمكن أن يكون المقسوم عليه صفرًا؟ لا. القسمة على صفر غير معرّفة، لذا تُرجِع الحاسبة خطأً إذا كان b = 0.