معامل باقي القسمة
جزء من قسم الأساسيات في رحلة Swift على Coddy — الدرس 17 من 86.
إنّ عامل باقي القسمة (%) يعيد القيمة المتبقية بعد قسمة رقم على آخر. فبينما تخبرك عملية القسمة بعدد المرات التي يتناسب فيها رقم مع آخر، يخبرك عامل باقي القسمة (المودولو) بما تبقى.
let remainder = 10 % 3 // 1
print(remainder) // 1هنا، يتكرر الرقم 3 في الرقم 10 بالضبط 3 مرات (ما يساوي 9)، مما يترك باقي قسمة قدره 1. هذا المعامل مفيد للغاية لتحديد ما إذا كان الرقم يقبل القسمة على رقم آخر — فعندما يكون باقي القسمة 0، تكون القسمة تامة.
let evenCheck = 8 % 2 // 0 (8 زوجي)
let oddCheck = 7 % 2 // 1 (7 فردي)من حالات الاستخدام الشائعة هي التحقق مما إذا كان الرقم زوجيًا أم فرديًا. إذا كان الرقم modulo 2 يساوي 0، فهو زوجي؛ وإلا فهو فردي. ستجد أيضًا أن modulo مفيد لمهام مثل التدوير عبر القيم أو حصر الأرقام ضمن نطاق معين.
التحدي
سهلاكتب دالة getRemainder تأخذ عددين صحيحين dividend و divisor، وتُعيد باقي القسمة عند قسمة المقسوم على المقسوم عليه.
استخدم عامل باقي القسمة (modulo operator) لحساب ما تبقى بعد عملية القسمة.
المعاملات:
dividend(Int): العدد الذي يتم تقسيمه (المقسوم)divisor(Int): العدد الذي يُقسم عليه (المقسوم عليه)
القيمة المرجعة: باقي القسمة بعد قسمة dividend على divisor (Int)
ورقة مرجعية
يعيد عامل باقي القسمة (%) الباقي بعد قسمة رقم على آخر:
let remainder = 10 % 3 // 1
print(remainder) // 1عندما يكون الباقي 0، تكون القسمة تامة (العدد يقبل القسمة):
let evenCheck = 8 % 2 // 0 (8 زوجي)
let oddCheck = 7 % 2 // 1 (7 فردي)حالة استخدام شائعة: التحقق مما إذا كان الرقم زوجياً أم فردياً. إذا كان number % 2 يساوي 0، فهو زوجي؛ وإلا فهو فردي.
جرّب بنفسك
func getRemainder(dividend: Int, divisor: Int) -> Int {
// اكتب الكود هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةالإسناد المركبمراجعة - عمليات رياضية بسيطةمعاملات المقارنة7أساسيات الإدخال والإخراج
دالة الطباعةتضمين النصوصإدخال ReadLineتحويل الأنواعمراجعة - حتى 120مراجعة - True أو False10الدوال
تعريف دالةالمعاملات والوسائطقيم الإرجاعتسميات الوسائطمراجعة - دالة Sigmaمراجعة - دالة Validationالقيم الافتراضية2المتغيرات
Let مقابل Varتوصيف الأنواع (Type Annotations)الأرقامStringBooleanقواعد التسميةمراجعة - تهيئة المتغيرات5المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعامل الثلاثي (Ternary Operator)8حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على المدخلات3القيم الاختيارية (Optionals)
ما هي القيم الاختياريةفك القيم باستخدام If Letاستخدام Guard Letمعامل دمج Nilمراجعة - فك القيم بأمان9حلقات التكرار
حلقة For-Inحلقة Whileحلقة Repeat-WhileBreakContinueمراجعة - المضروب (Factorial)النطاقات في حلقات التكرارالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)