הצגת כל ההוצאות
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 82 מתוך 88.
אתגר
קלהרחב את מעקב ההוצאות שלך על ידי הוספת הפונקציונליות "View Expenses".
התוכנית שלך צריכה:
- לאתחל מערך ריק בשם
expenses - ליצור
loop doשמציג את התפריט וקורא את קלט המשתמש - כשהמשתמש מזין
"1", לבקש את שם ההוצאה ואת הסכום, ליצור hash עם המפתחות:nameו-:amount, להוסיף אותו למערךexpensesולהדפיסExpense added! - כשהמשתמש מזין
"2", להציג את כל ההוצאות או הודעה אם אין הוצאות - כשהמשתמש מזין
"5", להדפיסGoodbye!ולצאת מהלולאה
התפריט צריך להופיע בדיוק כמו קודם:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: כאשר נבחרת אפשרות "2":
- אם אין הוצאות, יש להדפיס:
No expenses recorded yet. - אם יש הוצאות, יש להדפיס תחילה שורה ריקה ואחריה
--- Your Expenses ---, ואז להדפיס כל הוצאה בפורמט:Name: $Amount
לדוגמה, אם הקלטים הם 2 ואז 5 (צפייה כשהרשימה ריקה), הפלט צריך להיות:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: No expenses recorded yet.
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!אם הקלטים הם 1, Coffee, 4.5, 1, Lunch, 12.0, 2 ואז 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:
--- Your Expenses ---
Coffee: $4.5
Lunch: $12.0
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Goodbye!נסו בעצמכם
expenses = []
loop do
puts "--- Expense Tracker ---"
puts "1. Add Expense"
puts "2. View Expenses"
puts "3. Total & Average"
puts "4. Clear All"
puts "5. Exit"
print "Choose an option: "
choice = gets.chomp
if choice == "1"
print "Expense name: "
name = gets.chomp
print "Amount: "
amount = gets.chomp.to_f
expenses.push({name: name, amount: amount})
puts "Expense added!"
puts ""
elsif choice == "5"
puts "Goodbye!"
break
end
endכל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין