Summe und Durchschnitt
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 83 von 88.
Aufgabe
EinfachErweitern Sie Ihren Ausgaben-Tracker, indem Sie die Funktionalität "Total & Average" hinzufügen.
Ihr Programm sollte:
- Ein leeres Array namens
expensesinitialisieren - Einen
loop doerstellen, der das Menü anzeigt und Benutzereingaben liest - Wenn der Benutzer
"1"eingibt, nach dem Namen der Ausgabe und dem Betrag fragen, einen Hash mit den Schlüsseln:nameund:amounterstellen, diesen zumexpensesArray hinzufügen undExpense added!ausgeben - Wenn der Benutzer
"2"eingibt, alle Ausgaben anzeigen oder eine Nachricht, falls keine vorhanden sind - Wenn der Benutzer
"3"eingibt, die Summe und den Durchschnitt aller Ausgaben berechnen und anzeigen, oder eine Nachricht, falls keine vorhanden sind - Wenn der Benutzer
"5"eingibt,Goodbye!ausgeben und die Schleife beenden
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:
- Falls keine Ausgaben vorhanden sind, geben Sie aus:
No expenses to calculate. - Falls Ausgaben vorhanden sind, geben Sie die Summe und den Durchschnitt in diesem Format aus:
Total: $XAverage: $Y
Berechnen Sie die Summe, indem Sie alle :amount Werte addieren. Berechnen Sie den Durchschnitt, indem Sie die Summe durch die Anzahl der Ausgaben teilen.
Wenn die Eingaben beispielsweise 3 und dann 5 sind (Berechnung im leeren Zustand), 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 sind, 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 47Rechnungs-Splitter
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit Twist
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array Slicing mit BereichenArray Slicing mit IndizesArray-OperatorenInclude? Methode2Variablen und Datentypen
Zahlen und VariablenDatentyp StringDatentyp BooleanDatentyp SymbolDatentypen prüfenBenennungskonventionenZusammenfassung – Erstellung von Variablen5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachtelte If - Else-AnweisungenUnless-Anweisung8Schleifen
For-Schleife mit RangesWhile-SchleifeBreakNextRückblick - FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsChomp-MethodeTypumwandlungWiederholung - AltersrechnerWiederholung - Wahr oder Falsch9Methoden
Eine Methode definierenMethodenparameterRückgabewerteRückblick - Sigma-MethodeRückblick - ValidierungsmethodeStandard-Parameterwerte15Täglicher Ausgaben-Tracker
ProjektübersichtProgramm beenden