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

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

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

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

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

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

let result = 10 % 3;

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

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

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

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

let result: f64 = 5.2 % 2.0;
// result هي 1.2

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

مثال آخر:

let result: f64 = 7.8 % 3.5;
// النتيجة هي 0.8
challenge icon

التحدي

مبتدئ

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

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

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

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

ورقة مرجعية

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

let result = dividend % divisor;

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

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

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

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

باقي القسمة مع أرقام الفاصلة العائمة:

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

جرّب بنفسك

fn main() {
    // اكتب الكود الخاص بك أدناه
    
    
    // لا تغير السطر أدناه
    println!("a = {}", a);
    println!("b = {}", b);
    println!("c = {}", c);
    println!("d = {}", d);
    println!("e = {}", e);
    println!("f = {}", f);
    println!("g = {}", g);
    println!("h = {}", h);
}
quiz iconاختبر نفسك

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

جميع دروس Fundamentals