סיכום – חלוקה בטוחה
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-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.concat()בניית טבלה ו־unpack()table.sort()מיון מותאם אישית באמצעות פונקציותסיכום – לוח שיאיםתרגלו בעצמכם: קומפיילר Lua אונליין