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

معامل باقي القسمة

جزء من قسم Fundamentals في رحلة Lua على Coddy — الدرس 13 من 90.

يُمثَّل عامل باقي القسمة (modulo operator) برمز النسبة المئوية %. يقوم هذا العامل بإيجاد الباقي المتبقي بعد قسمة رقم على آخر.


في لغة Lua، تُصرح الكلمة المفتاحية local عن متغير محلي (local variable) — وهو متغير لا يوجد إلا ضمن الكتلة البرمجية أو النطاق الحالي. من الممارسات الجيدة استخدام local عندما لا تحتاج إلى أن يكون المتغير متاحاً في كل مكان في برنامجك.

إليك كيفية عمل عامل باقي القسمة (modulo):

result = 10 % 3    -- النتيجة هي 1 (10 مقسومة على 3 تساوي 3 والباقي 1)
result = 15 % 4    -- النتيجة هي 3 (15 مقسومة على 4 تساوي 3 والباقي 3)
result = 8 % 2     -- النتيجة هي 0 (8 مقسومة على 2 تساوي 4 وبدون باقي)

أحد أكثر الاستخدامات العملية لمعامل باقي القسمة (modulo) هو تحديد ما إذا كان الرقم زوجياً أم فردياً. فعندما تقسم أي رقم على 2، إذا كان الباقي 0، يكون الرقم زوجياً. أما إذا كان الباقي 1، يكون الرقم فردياً:

number = 7
remainder = number % 2    -- الباقي هو 1، لذا 7 عدد فردي

number = 10
remainder = number % 2    -- الباقي هو 0، لذا 10 عدد زوجي
challenge icon

التحدي

سهل

تحقق مما إذا كانت درجة اللاعب من مضاعفات العدد 10 باستخدام عامل باقي القسمة (modulo). قم بإنشاء متغير يسمى playerScore وقم بتعيين القيمة 85 له. ثم استخدم عامل باقي القسمة (modulo) لإيجاد الباقي عند قسمة الدرجة على 10، وقم بتخزين هذه النتيجة في متغير يسمى remainder. اطبع قيمة الباقي.

ورقة مرجعية

يجد عامل باقي القسمة % الباقي بعد قسمة رقم على آخر:

result = 10 % 3    -- النتيجة هي 1 (10 مقسومة على 3 تساوي 3 والباقي 1)
result = 15 % 4    -- النتيجة هي 3 (15 مقسومة على 4 تساوي 3 والباقي 3)
result = 8 % 2     -- النتيجة هي 0 (8 مقسومة على 2 تساوي 4 بدون باقي)

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

number = 7
remainder = number % 2    -- الباقي هو 1، لذا 7 هو رقم فردي

number = 10
remainder = number % 2    -- الباقي هو 0، لذا 10 هو رقم زوجي

جرّب بنفسك

-- إنشاء متغير playerScore وتعيين القيمة 85 له
local playerScore = 85

-- TODO: اكتب كودك هنا لحساب الباقي باستخدام عامل المودولو (modulo)

-- طباعة الباقي
print(remainder)
quiz iconاختبر نفسك

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

جميع دروس Fundamentals