Wyświetlanie wszystkich wydatków
Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 87 z 93.
Wyzwanie
ŚredniW poprzedniej lekcji zaimplementowano funkcjonalność „Add Expense”. Teraz zaimplementuj funkcjonalność „View All Expenses” dla opcji 2.
Zmodyfikuj program, aby obsługiwał opcję 2:
- Jeśli lista
expensesjest pusta, wypiszNo expenses recorded. - Jeśli są wydatki, wypisz
Your expenses:, a następnie każdy wydatek w nowym wierszu, w formacie- $amount(gdzie amount to wartość wydatku)
Wszystkie pozostałe opcje powinny nadal działać jak wcześniej:
- Opcja
1: Dodaj wydatek - Opcja
5: WypiszGoodbye!i zakończ działanie - Opcje
3,4lub nieprawidłowa opcja: WypiszInvalid option
Format wejściowy:
Wybory z menu i kwoty wydatków jako ciągi znaków.
Format wyjściowy:
Menu, a następnie odpowiednia odpowiedź dla każdej akcji.
Przykład:
Jeśli dane wejściowe to 2, 1, 15.50, 1, 8.25, 2 i 5, wynikiem powinno być:
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
No expenses recorded.
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Enter expense amount:
Expense added!
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Your expenses:
- $15.5
- $8.25
--- Expense Tracker ---
1. Add Expense
2. View All Expenses
3. Total and Average
4. Clear All
5. Exit
Choose an option:
Goodbye!Spróbuj swoich sił
fun main() {
val expenses = mutableListOf<Double>()
while (true) {
println("--- Expense Tracker ---")
println("1. Add Expense")
println("2. View All Expenses")
println("3. Total and Average")
println("4. Clear All")
println("5. Exit")
println("Choose an option:")
val choice = readLine()
if (choice == "1") {
println("Enter expense amount:")
val amount = readLine()!!.toDouble()
expenses.add(amount)
println("Expense added!")
} else if (choice == "5") {
println("Goodbye!")
break
} else {
println("Invalid option")
}
}
}Wszystkie lekcje w sekcji Podstawy
4Operatory – część 1
Operatory arytmetyczneOperator moduloPrzypisanie z operatoremOperatory porównaniaPowtórka – proste działania matematyczne7Podstawowe wejście/wyjście
Funkcja printlnSzablony ciągów znakówWczytywanie danych przez ReadLineKonwersja typówPowtórka — lata do emeryturyPowtórka — prawda czy fałsz10Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneArgumenty nazwaneWartości domyślneFunkcje z pojedynczym wyrażeniemPowtórka – funkcja SigmaPowtórka – funkcja walidująca2Zmienne
Val a VarWnioskowanie o typieLiczbyŁańcuch znakówWartość logicznaKonwencje nazewnictwaPowtórzenie – inicjalizacja zmiennych5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Operatory logiczne, część 3Operator trójargumentowy z wyrażeniem ifPowtórka — prosta logika8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych11FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz3Obsługa wartości null
Czym jest bezpieczeństwo nullTypy dopuszczające nullOperator bezpiecznego wywołaniaOperator ElvisPodstawy wyzwania z funkcjamiAsercja wartości niebędącej nullPodsumowanie — bezpieczny dostęp6Podejmowanie decyzji
Instrukcja ifIf - elseIf jako wyrażenieWyrażenie whenWhen z zakresamiPowtórka — prosty kalkulator9Pętle
Pętla forPętla whilePętla do-whileBreakContinueZakresy w pętlachPętla zagnieżdżonaPowtórka – silniaPowtórka – dynamiczne wprowadzanie danych12Podstawy list
List a MutableListDostęp do elementówModyfikowanie listMetody listPair i TriplePowtórka – lista produktówPowtórka – odwrócona lista15Codzienny rejestr wydatków
Przegląd projektuZakończenie programuPoćwicz samodzielnie: Edytor online Kotlin