حلقة for مع خطوة
جزء من قسم Fundamentals في رحلة Lua على Coddy — الدرس 74 من 90.
تصبح حلقة for الرقمية أكثر قوة عندما تضيف وسيطاً ثالثاً يسمى الخطوة (step). تتحكم الخطوة في مقدار تغير متغير الحلقة في كل مرة يتم فيها تنفيذ الحلقة.
تبدو الصيغة الموسعة كما يلي:
for variable = start, finish, step do
-- الكود المراد تكراره
endإليك مثال يقوم بالعد بمقدار 2 بدلاً من 1:
for i = 2, 10, 2 do
print(i)
endتبدأ هذه الحلقة عند 2، وتصل إلى 10، وتزداد بمقدار 2 في كل مرة، وتطبع: 2، 4، 6، 8، 10.
يمكنك أيضاً استخدام خطوات سالبة للعد التنازلي:
for i = 5, 1, -1 do
print(i)
endهذا يقوم بالعد التنازلي من 5 إلى 1، ويطبع: 5، 4، 3، 2، 1.
تمنحك الخطوة (step) تحكماً دقيقاً في كيفية تقدم الحلقة (loop) الخاصة بك، مما يجعلها مثالية لمهام مثل معالجة كل عنصر ثانٍ في قائمة، أو إنشاء عد تنازلي، أو العمل مع أنماط أرقام محددة.
التحدي
سهلأنشئ مولد جدول ضرب يستخدم حلقة for رقمية مع خطوة (step) لعرض مضاعفات العدد 3. اكتب حلقة for تبدأ من 3، وتصل إلى 15، وتستخدم خطوة مقدارها 3 لطباعة مضاعفات العدد 3 فقط.
داخل الحلقة، اطبع كل قيمة من المضاعفات في سطر منفصل. سيوضح هذا كيف تتحكم معلمة الخطوة (step parameter) في تقدم الحلقة عن طريق تخطي القيم.
ورقة مرجعية
يمكن أن تتضمن حلقة for الرقمية وسيطًا ثالثًا يسمى الخطوة (step) للتحكم في مقدار تغير متغير الحلقة في كل تكرار:
for variable = start, finish, step do
-- الكود المراد تكراره
endالعد بمقدار 2:
for i = 2, 10, 2 do
print(i) -- يطبع: 2, 4, 6, 8, 10
endالعد التنازلي بخطوة سالبة:
for i = 5, 1, -1 do
print(i) -- يطبع: 5, 4, 3, 2, 1
endجرّب بنفسك
-- TODO: اكتب كودك هنا
-- أنشئ حلقة for تبدأ من 3، وتصل إلى 15، بخطوة قدرها 3
-- اطبع كل مضاعف في سطر منفصليتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات 2: العمليات العلائقية والمنطقية
معاملات التساويالمعاملات العلائقيةالمعامل 'and'المعامل 'or'المعامل 'not'التقييم قصير الدائرةقيم Truthy و Falsyمراجعة - المنطق البسيط10الجداول الجزء 1: نمط القائمة
ما هو الجدول؟إنشاء جدولالوصول إلى العناصر عبر الفهرستعديل العناصر عبر الفهرسمعامل الطول '#'table.insert()table.remove()ملخص - إدارة أعضاء الفريق13مشروع: متجر جرعات بسيط
إعداد المشروعإضافة جرعة2المتغيرات وأنواع البيانات
ما هو المتغير؟الأرقامالسلاسل النصيةالقيم المنطقيةالقيمة 'nil'الدالة type()قواعد التسميةمراجعة - ملف الشخصية5الإخراج الأساسي
طباعة القيم الحرفيةطباعة المتغيراتطباعة قيم متعددةدمج النصوص والمتغيراتدالة tostring()الإدخال (Input)التحويل (Cast)مراجعة - تقرير الحالةمراجعة - حتى 1208أساسيات معالجة النصوص
string.len()string.upper و string.lowerstring.sub()string.rep()string.find()مراجعة - تنسيق اسم المستخدم3المعاملات 1: العمليات الحسابية والدمج
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسدمج النصوصأولوية المعاملاتملخص - حسابات بسيطة6مشروع: عرض إحصائيات الشخصية
رسالة ترحيبتعريف إحصائيات الشخصية9أساسيات الدوال
تعريف دالةاستدعاء دالةدوال مع معاملاتدوال بمعاملات متعددةجملة 'return'مراجعة - حاسبة المساحة12أساسيات الحلقات التكرارية
حلقة whileحلقة repeat-untilحلقة for الرقميةحلقة for مع خطوةجملة 'break'مراجعة - العد التنازلي