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

حلقة while

جزء من قسم الأساسيات في رحلة Lua على Coddy. الدرس 71 من 90.

حلقة while مثالية لهذا الأمر - فهي تستمر في تشغيل الشيفرة نفسها مرارًا وتكرارًا ما دام شرط ما يظل true.

تبدو الصياغة الأساسية لحلقة while كما يلي:

while condition do
    -- الكود للتكرار
end

إليك مثالًا بسيطًا يطبع الأرقام من 1 إلى 3:

local count = 1

while count <= 3 do
    print(count)
    count = count + 1
end

يعمل loop هذا من خلال التحقق أولًا مما إذا كان count <= 3 صحيحًا. إذا كان كذلك، يُنفَّذ الكود الموجود بداخله، فيطبع الرقم current ويزيد العداد. ثم يتحقق من condition مرة أخرى، وتتكرر العملية حتى تصبح condition خاطئة.

challenge icon

التحدي

سهل

أنشئ نظامًا لمراقبة الصحة يستخدم حلقة while لتتبّع عملية تعافي player. ابدأ بإنشاء متغير يُسمّى playerHealth وأسند إليه القيمة 25. ثم أنشئ متغيرًا آخر يُسمّى maxHealth وأسند إليه القيمة 100.

اكتب حلقة while تستمر ما دامت قيمة health الخاصة بـ player أقل من maximum health. داخل الحلقة، نفّذ أولًا print لقيمة health الحالية، ثم زد playerHealth بمقدار 15. وبما أن print يحدث قبل الزيادة، فستكون آخر قيمة تتم طباعتها هي 85: يُعاد التحقق من condition بعد إضافة 15 (فتصبح قيمة playerHealth مساوية لـ 100)، وبما أن 100 ليست أقل من maxHealth، تتوقف الحلقة دون طباعة 100.

الناتج المتوقع هو:
25
40
55
70
85

جرّب بنفسك

-- تهيئة صحة اللاعب والصحة القصوى
local playerHealth = 25
local maxHealth = 100

-- TODO: اكتب الكود الخاص بك هنا
-- أنشئ حلقة while تستمر طالما playerHealth < maxHealth
-- داخل الحلقة: اطبع الصحة الحالية، ثم زد playerHealth بمقدار 15
quiz iconاختبر نفسك

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

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Lua عبر الإنترنت