معامل باقي القسمة
جزء من قسم الأساسيات في رحلة PHP على Coddy. الدرس 16 من 71.
يعيد عامل modulo (%) remainder بعد القسمة. عند قسمة number واحد على آخر، يمنحك modulo ما تبقّى.
<?php
echo 10 % 3; // المخرجات: 1
?>هنا، 10 مقسومة على 3 تساوي 3 مع باقي قسمة قدره 1. يُرجع معامل modulo ذلك الباقي.
من الاستخدامات الشائعة لـ modulo التحقق مما إذا كان number زوجيًا أم فرديًا. عند القسمة على 2، تكون القيمتان المحتملتان الوحيدتان لـ remainder هما 0 أو 1، لذا إذا لم يكن لدى number المقسوم على 2 أي remainder فهو even؛ وإذا كانت قيمة remainder هي 1، فهو odd:
<?php
$number = 8;
echo $number % 2; // المخرجات: 0 (زوجي)
$number = 7;
echo $number % 2; // المخرجات: 1 (فردي)
?>يعمل هذا فقط لفحوصات even/odd لأن القسمة على 2 تعطي دائمًا remainder إما بقيمة 0 أو 1. أما مع القواسم الأخرى، فقد تكون remainder أي قيمة من 0 إلى قيمة تقل عن divisor بواحد.
المزيد من الأمثلة لمساعدتك على فهم النمط:
<?php
echo 15 % 4; // المخرجات: 3 (15 = 4*3 + 3)
echo 20 % 5; // المخرجات: 0 (20 = 5*4 + 0)
$dividend = 17;
$divisor = 5;
echo $dividend % $divisor; // المخرجات: 2 (17 = 5*3 + 2)
?>التحدي
سهلاقرأ رقمين من input: dividend وdivisor.
احسب واطبع remainder عند قسمة الرقم الأول على الرقم الثاني.
مثال:
إذا كان الرقمان المُدخلان هما 17 و5، فيجب أن يكون الناتج 2 (لأن 17 ÷ 5 = 3 مع remainder قدره 2).
جرّب بنفسك
<?php
// اقرأ المدخلات
$dividend = intval(fgets(STDIN));
$divisor = intval(fgets(STDIN));
// TODO: اكتب الكود الخاص بك أدناه لحساب الباقي
// أخرج النتيجة
echo $remainder;
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4معاملات المقارنة والمنطق
معاملات المقارنةالمساواة والتطابقالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيط2المتغيرات وأنواع البيانات
الأرقامالنصوص وعلامات الاقتباسالقيم المنطقية (Booleans)قواعد التسميةملخص - تهيئة المتغيراتالمتغيرات الفارغةدمج النصوصاستقبال مدخلات المستخدمتحويل أنواع البيانات5المنطق الشرطي
جملة Ifجملة If - Elseالعامل الثلاثي (Ternary Operator)عامل Null Coalescingجملة Switchمراجعة - اتخاذ القرارات3المعاملات الأساسية
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسالتعيين المركبالزيادة والنقصانأسبقية المعاملاتمراجعة - الحسابات البسيطةمعاملات النصوصتدرّب بنفسك: مترجم PHP عبر الإنترنت