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

مراجعة - تحريك نقطة

جزء من قسم Object Oriented Programming في رحلة Lua على Coddy — الدرس 5 من 70.

challenge icon

التحدي

سهل

قم بإنشاء جدول باسم point يحتوي على حقلين:

  • x - إحداثي x
  • y - إحداثي y

أضف طريقة :move(dx, dy) باستخدام صيغة النقطتين الرأسيتين (colon syntax) التي تضيف dx إلى self.x و dy إلى self.y.

ستتلقى أربعة مدخلات:

  1. إحداثي x الأولي
  2. إحداثي y الأولي
  3. Delta x (مقدار التحرك أفقيًا)
  4. Delta y (مقدار التحرك عموديًا)

بعد إنشاء النقطة بالإحداثيات الأولية واستدعاء :move() بقيم delta، اطبع الموقع النهائي بهذا التنسيق تمامًا:

[x], [y]

على سبيل المثال، إذا كان الموقع الأولي هو (3, 5) وتحركت بمقدار (2, -1)، يجب أن يكون الناتج:

5, 4

جرّب بنفسك

-- قراءة المدخلات
local initial_x = tonumber(io.read())
local initial_y = tonumber(io.read())
local dx = tonumber(io.read())
local dy = tonumber(io.read())

-- TODO: اكتب الكود الخاص بك أدناه
-- 1. قم بإنشاء جدول باسم 'point' يحتوي على الحقول x و y (باستخدام الإحداثيات الأولية)
-- 2. أضف طريقة :move(dx, dy) باستخدام صيغة النقطتين (colon syntax) التي تعدل self.x و self.y


-- استدعاء طريقة move وطباعة النتيجة
point:move(dx, dy)
print(point.x .. ", " .. point.y)

جميع دروس Object Oriented Programming