Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

معامل باقي القسمة (Modulo)

جزء من قسم Fundamentals في رحلة Java على Coddy — الدرس 16 من 73.

عامل باقي القسمة (modulo) % يعطي باقي عملية القسمة. في لغة Java، يتم استخدامه بصيغة بسيطة:

result = dividend % divisor;
  • dividend: العدد الذي يتم تقسيمه.
  • divisor: العدد الذي يقسم المقسوم.
  • result: باقي عملية القسمة.

على سبيل المثال:

result = 10 % 3;

هنا، يتم تقسيم 10 على 3. الرقم 3 يتكرر في 10 ثلاث مرات، مع بقاء 1. لذا، ستكون قيمة result هي 1.

ماذا لو كان المقسوم أصغر من المقسوم عليه؟ في هذه الحالة، يتكرر المقسوم عليه 0 مرة، لذا يكون الباقي هو المقسوم نفسه ببساطة. على سبيل المثال، 2 % 3 يساوي 2، لأن 3 تتكرر في 2 صفر من المرات مع بقاء 2.

عادةً ما يُستخدم المعامل modulo للتحقق مما إذا كان الرقم زوجيًا أم فرديًا:

  • إذا كان الرقم زوجيًا، فإن قسمته على 2 ستترك باقيًا قدره 0.
  • إذا كان الرقم فرديًا، فإن قسمته على 2 ستترك باقيًا قدره 1.

عند استخدام باقي القسمة (modulo) مع الأرقام ذات الفاصلة العائمة (doubles)، فإنه يعمل بشكل مشابه للأعداد الصحيحة ولكنه يحافظ على الدقة العشرية. على سبيل المثال:

double result = 5.2 % 2.0;
// النتيجة هي 1.2

إليك كيف يعمل الأمر: 2.0 تتكرر في 5.2 مرتين (4.0)، والباقي هو 1.2 (5.2 - 4.0 = 1.2).

مثال آخر:

double result = 7.8 % 3.5;
// result هي 0.8
challenge icon

التحدي

مبتدئ

اكتب كودًا يقوم بتهيئة ثلاثة متغيرات، a (int) و b (double) و c (int) بالقيم 9 و 2.6 و 11 (على التوالي).

بعد ذلك، قم بتهيئة المتغيرات التالية:

  • d (int) الذي سيحمل نتيجة a modulo 2 
  • e (int) الذي سيحمل نتيجة a modulo 3
  • f (double) الذي سيحمل نتيجة b modulo 1.5
  • g (double) الذي سيحمل نتيجة b modulo 3.9
  • h (int) الذي سيحمل نتيجة c modulo 10

تحقق من النتيجة وانظر كيف تؤثر المقسوم والمقسوم عليه المختلفان على النتيجة.

ورقة مرجعية

يعطي عامل باقي القسمة % باقي عملية القسمة:

result = dividend % divisor;

مثال مع الأعداد الصحيحة:

result = 10 % 3; // النتيجة هي 1

حالة استخدام شائعة - التحقق مما إذا كان الرقم زوجياً أم فردياً:

  • الأعداد الزوجية: number % 2 == 0
  • الأعداد الفردية: number % 2 == 1

باقي القسمة مع أرقام الفاصلة العائمة (floating-point):

double result = 5.2 % 2.0; // النتيجة هي 1.2
double result = 7.8 % 3.5; // النتيجة هي 0.8

جرّب بنفسك

public class Main {
    public static void main(String[] args) {
        // اكتب الكود الخاص بك أدناه
        
        
        // لا تغير السطر أدناه
        System.out.println("a = " + a);
        System.out.println("b = " + b);
        System.out.println("c = " + c);
        System.out.println("d = " + d);
        System.out.println("e = " + e);
        System.out.println("f = " + f);
        System.out.println("g = " + g);
        System.out.println("h = " + h);
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals