סכום וממוצע
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 83 מתוך 88.
אתגר
קלשדרגו את מעקב ההוצאות שלכם על ידי הוספת הפונקציונליות "Total & Average".
התוכנית שלכם צריכה:
- לאתחל מערך ריק בשם
expenses - ליצור
loop doשמציג את התפריט וקורא את קלט המשתמש - כשהמשתמש מזין
"1", לבקש את שם ההוצאה ואת הסכום, ליצור hash עם המפתחות:nameו-:amount, להוסיף אותו למערךexpensesולהדפיסExpense added! - כשהמשתמש מזין
"2", להציג את כל ההוצאות או הודעה אם אין הוצאות - כשהמשתמש מזין
"3", לחשב ולהציג את הסכום הכולל ואת הממוצע של כל ההוצאות, או הודעה אם אין הוצאות - כשהמשתמש מזין
"5", להדפיסGoodbye!ולצאת מהלולאה
התפריט צריך להיות מוצג בדיוק כמו קודם:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: כאשר נבחרת האפשרות "3":
- אם אין הוצאות, יש להדפיס:
No expenses to calculate. - אם יש הוצאות, יש להדפיס את הסכום הכולל ואת הממוצע בפורמט הזה:
Total: $XAverage: $Y
חשבו את הסכום הכולל על ידי חיבור כל הערכים של :amount. חשבו את הממוצע על ידי חלוקת הסכום הכולל במספר ההוצאות.
לדוגמה, אם הקלט הוא 3, ואז 5 (חישוב כשהרשימה ריקה), הפלט צריך להיות:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: No expenses to calculate.
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!אם הקלט הוא 1, Coffee, 5.0, 1, Lunch, 15.0, 3, ואז 5, הפלט צריך להיות:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Expense name: Amount: Expense added!
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Total: $20.0
Average: $10.0
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!נסו בעצמכם
# אתחלו את המערך expenses
expenses = []
# TODO: כתבו את הקוד שלכם למטה
# צרו לולאה שעושה את הפעולות הבאות:
# - מציגה את התפריט
# - קוראת קלט מהמשתמש
# - מטפלת באפשרויות 1, 2, 3 ו־5
#
# עבור האפשרות "1": בקשו שם וסכום, צרו hash והוסיפו אותו ל־expenses
# עבור האפשרות "2": הציגו את כל ההוצאות, או הודעה אם אין הוצאות
# עבור האפשרות "3": חשבו והציגו את הסכום הכולל ואת הממוצע, או הודעה אם אין הוצאות
# עבור האפשרות "5": הדפיסו "Goodbye!" וצאוכל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין