סיכום – לוח שיאים
חלק מהיחידה לוגיקה וזרימת התוכנית במסלול ה-Lua של Coddy. שיעור 9 מתוך 54.
אתגר
קלכתוב פונקציה updateHighScores שמקבלת טבלת scores ומספר newScore, ומחזירה את טבלת השיאים המעודכנת שמכילה רק את 5 התוצאות הגבוהות ביותר בסדר יורד.
הוסף את התוצאה החדשה לטבלה, מיין את כל התוצאות מהגבוהה לנמוכה והשאר רק את 5 התוצאות הגבוהות ביותר.
לוגיקה:
- השתמש ב־
table.insert()כדי להוסיף את התוצאה החדשה לטבלת התוצאות - השתמש ב־
table.sort()עם פונקציית השוואה מותאמת אישית כדי למיין את התוצאות בסדר יורד (מהגבוהה לנמוכה) - אם יש בטבלה יותר מ־5 תוצאות, השתמש ב־
table.remove()כדי להסיר את התוצאות שמעבר ל־5 הגבוהות ביותר - החזר את טבלת התוצאות המעודכנת
פרמטרים:
scores(טבלה): טבלה בסגנון רשימה המכילה את שיאי הניקוד הנוכחיים כמספריםnewScore(מספר): התוצאה החדשה שיש להוסיף לטבלה
ערך מוחזר: טבלה המכילה את 5 התוצאות הגבוהות ביותר, ממוינות מהגבוהה לנמוכה (טבלה)
נסו בעצמכם
function updateHighScores(scores, newScore)
-- כתבו כאן קוד
endכל השיעורים ביחידה לוגיקה וזרימת התוכנית
1איטרציה מתקדמת בטבלאות
איטרציה באמצעות pairs()איטרציה באמצעות ipairs()pairs() לעומת ipairs()סיכום – גיליון דמות2פונקציות נוספות של ספריית הטבלאות
table.concat()בניית טבלה ו־unpack()table.sort()מיון מותאם אישית באמצעות פונקציותסיכום – לוח שיאיםתרגלו בעצמכם: קומפיילר Lua אונליין