مراجعة - القسمة الآمنة
جزء من قسم المنطق وتسلسل التنفيذ في رحلة Lua على Coddy. الدرس 34 من 54.
التحدي
سهلاكتب دالة safeDivide تأخذ a وb وتُرجع نتيجة قسمة a على b، أو رسالة خطأ إذا فشلت عملية القسمة.
ينبغي أن تستخدم الدالة pcall() لتنفيذ عملية القسمة بأمان. أنشئ دالة داخلية تُجري عملية القسمة وتُطلق خطأً إذا كانت قيمة b تساوي صفرًا، ثم استخدم pcall() لاستدعائها والتقاط أي أخطاء.
المنطق:
- أنشئ دالة داخلية تتحقق مما إذا كانت قيمة
bتساوي 0 - إذا كانت قيمة
bتساوي 0، فاستدعِerror("Cannot divide by zero", 0)(تؤدي قيمة0إلى استبعاد اسم الملف ورقم السطر من الرسالة) - وإلا، فأعِد
a / b - استخدم
pcall()لتنفيذ الدالة الداخلية - إذا نجح التنفيذ، فأعِد
"Result: "متبوعًا بنتيجة القسمة - إذا حدث خطأ، فأعِد
"Error: "متبوعًا برسالة الخطأ
المعاملات:
a(number): المقسومb(number): المقسوم عليه
القيمة المُعادة: سلسلة نصية تحتوي إما على "Result: " متبوعة بنتيجة القسمة، أو على "Error: " متبوعة برسالة الخطأ (سلسلة نصية)
جرّب بنفسك
function safeDivide(a, b)
-- اكتب الكود هنا
end
جميع دروس المنطق وتسلسل التنفيذ
1التكرار المتقدم عبر الجداول
التكرار باستخدام pairs()التكرار باستخدام ipairs()pairs() مقابل ipairs()مراجعة - ورقة الشخصية2المزيد من دوال مكتبة Table
table.concat()إنشاء الجداول و unpack()table.sort()فرز مخصص باستخدام الدوالمراجعة - لوحة أعلى النتائجتدرّب بنفسك: مترجم Lua عبر الإنترنت