Dodawanie wydatku
Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 86 z 93.
Wyzwanie
ŚredniW poprzedniej lekcji utworzono pętlę menu, która kończy działanie, gdy użytkownik wybierze opcję 5. Teraz zaimplementuj funkcjonalność "Add Expense" dla opcji 1.
Zmodyfikuj program, aby:
- Utworzyć przed pętlą
MutableList<Double>o nazwieexpenses, która będzie przechowywać kwoty wydatków - Gdy użytkownik wybierze opcję
1:- Wyświetlić
Enter expense amount: - Odczytać kolejne dane wejściowe, przekonwertować je na
Doublei dodać do listyexpenses - Wyświetlić
Expense added!
- Wyświetlić
- Opcja
5powinna nadal wyświetlaćGoodbye!i kończyć działanie - W przypadku wszystkich pozostałych opcji (2, 3, 4 lub nieprawidłowej) nadal wyświetlać
Invalid option
Format danych wejściowych:
Wybory z menu i kwoty wydatków podane jako ciągi znaków. Po wybraniu opcji 1 kolejnymi danymi wejściowymi będzie kwota wydatku.
Format danych wyjściowych:
Menu, a następnie odpowiednia odpowiedź dla każdej akcji.
Przykład:
Jeśli dane wejściowe to 1, 25.50, 1, 10.00, 3 i 5, dane wyjściowe powinny wyglądać następująco:
--- 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:
Invalid option
--- 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() {
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 == "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