Gesamtsumme und Durchschnitt
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 83 von 88.
Aufgabe
EinfachBaue deinen Ausgaben-Tracker weiter aus, indem du die Funktionalität „Total & Average“ hinzufügst.
Dein Programm sollte:
- Ein leeres Array namens
expensesinitialisieren - Eine
loop do-Schleife erstellen, die das Menü anzeigt und die Benutzereingabe liest - Wenn der Benutzer
"1"eingibt, nach dem Namen und dem Betrag der Ausgabe fragen, einen Hash mit den Schlüsseln:nameund:amounterstellen, ihn zum Arrayexpenseshinzufügen undExpense added!ausgeben - Wenn der Benutzer
"2"eingibt, alle Ausgaben anzeigen oder eine Nachricht ausgeben, wenn keine vorhanden sind - Wenn der Benutzer
"3"eingibt, die Gesamtsumme und den Durchschnitt aller Ausgaben berechnen und anzeigen oder eine Nachricht ausgeben, wenn keine vorhanden sind - Wenn der Benutzer
"5"eingibt,Goodbye!ausgeben und die Schleife verlassen
Das Menü sollte genau wie zuvor angezeigt werden:
--- Expense Tracker ---
1. Add Expense
2. View Expenses
3. Total & Average
4. Clear All
5. Exit
Choose an option: Wenn die Option "3" ausgewählt wird:
- Wenn keine Ausgaben vorhanden sind, gib Folgendes aus:
No expenses to calculate. - Wenn Ausgaben vorhanden sind, gib die Gesamtsumme und den Durchschnitt in diesem Format aus:
Total: $XAverage: $Y
Berechne die Gesamtsumme, indem du alle Werte von :amount addierst. Berechne den Durchschnitt, indem du die Gesamtsumme durch die Anzahl der Ausgaben teilst.
Wenn die Eingaben beispielsweise 3 und dann 5 lauten (Berechnung bei leerer Liste), sollte die Ausgabe wie folgt aussehen:
--- 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!Wenn die Eingaben 1, Coffee, 5.0, 1, Lunch, 15.0, 3 und dann 5 lauten, sollte die Ausgabe wie folgt aussehen:
--- 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!Probier es selbst
# Initialisiere das Ausgaben-Array
expenses = []
# TODO: Schreibe deinen Code unten
# Erstelle eine Schleife, die Folgendes tut:
# - Zeigt das Menü an
# - Liest die Benutzereingabe
# - Verarbeitet die Optionen 1, 2, 3 und 5
#
# Für Option "1": Frage nach Name und Betrag, erstelle einen Hash, füge ihn zu expenses hinzu
# Für Option "2": Zeige alle Ausgaben an oder eine Nachricht, falls keine vorhanden sind
# Für Option "3": Berechne und zeige Summe & Durchschnitt an, oder eine Nachricht, falls keine vorhanden sind
# Für Option "5": Gib "Goodbye!" aus und beende das ProgrammAlle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechner zum Aufteilen der Rechnung
WillkommensnachrichtBenutzereingaben erfassen10FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array-Slicing mit BereichenArray-Slicing mit IndizesArray-OperatorenInclude?-Methode2Variablen und Datentypen
Zahlen und VariablenString-DatentypBoolean-DatentypSymbol-DatentypDatentypen überprüfenNamenskonventionenWiederholung – Variablen erstellen5Entscheidungsfindung
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerVerschachteltes If - ElseUnless-Anweisung8Schleifen
For-Schleife mit BereichenWhile-SchleifeBreakNextRückblick – FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick – Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische KurzschreibweisenRückblick – Einfache MathematikVergleichsoperatoren6Grundlegende Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsDie chomp-MethodeTypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder Falsch9Methoden
Eine Methode definierenMethodenparameterRückgabewerteWiederholung – Sigma-MethodeWiederholung – ValidierungsmethodeStandardparameterwerte15Täglicher Ausgaben-Tracker
ProjektübersichtProgramm beendenÜbe selbstständig: Online-Ruby-Compiler