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

مراجعة - القسمة الآمنة

جزء من قسم Logic & Flow في رحلة Lua على Coddy — الدرس 34 من 54.

challenge icon

التحدي

سهل

اكتب دالة safeDivide تأخذ a و b وتعيد نتيجة قسمة a على b، أو رسالة خطأ إذا فشلت عملية القسمة.

يجب أن تستخدم الدالة pcall() لتنفيذ عملية القسمة بأمان. أنشئ دالة داخلية تقوم بعملية القسمة وتُطلق خطأً إذا كان b يساوي صفراً، ثم قم بتغليفها بـ pcall() لالتقاط أي أخطاء.

المنطق:

  • أنشئ دالة داخلية تتحقق مما إذا كان b هو 0
  • إذا كان b هو 0، استدعِ error("Cannot divide by zero")
  • خلاف ذلك، أعد a / b
  • استخدم pcall() لتنفيذ الدالة الداخلية
  • إذا نجحت العملية، أعد "Result: " متبوعة بنتيجة القسمة
  • إذا حدث خطأ، أعد "Error: " متبوعة برسالة الخطأ

المعاملات:

  • a (رقم): المقسوم
  • b (رقم): المقسوم عليه

المخرجات: سلسلة نصية تحتوي إما على "Result: " متبوعة بنتيجة القسمة، أو "Error: " متبوعة برسالة الخطأ (سلسلة نصية)

جرّب بنفسك

function safeDivide(a, b)
    -- اكتب الكود هنا
end

جميع دروس Logic & Flow