Visualizza tutte le spese
Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 87 di 93.
Sfida
MedioNella lezione precedente hai implementato la funzionalità "Add Expense". Ora implementa la funzionalità "View All Expenses" per l’opzione 2.
Modifica il programma per gestire l’opzione 2:
- Se la lista
expensesè vuota, stampaNo expenses recorded. - Se ci sono spese, stampa
Your expenses:seguito da ogni spesa su una nuova riga, nel formato- $amount(dove amount è il valore della spesa)
Tutte le altre opzioni devono continuare a funzionare come prima:
- Opzione
1: aggiungi una spesa - Opzione
5: stampaGoodbye!ed esci - Opzioni
3,4o non valide: stampaInvalid option
Formato dell’input:
Scelte del menu e importi delle spese come stringhe.
Formato dell’output:
Il menu, seguito dalla risposta appropriata per ogni azione.
Esempio:
Se gli input sono 2, 1, 15.50, 1, 8.25, 2 e 5, l’output dovrebbe essere:
--- 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!Provalo tu
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")
}
}
}Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloAssegnazione compostaOperatori di confrontoRipasso: matematica semplice7Input/output di base
Funzione printlnTemplate di stringheInput con readLineConversione di tipoRiepilogo - Anni alla pensioneRiepilogo - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori di ritornoArgomenti denominatiValori predefinitiFunzioni a espressione singolaRiepilogo - Funzione SigmaRiepilogo - Funzione di validazione2Variabili
Val vs VarInferenza del tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Ternario con espressione ifRipasso - Logica semplice8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con un tocco
Panoramica del giocoLa funzione FizzBuzz3Nullabilità
Cos'è la null safetyTipi nullableOperatore di chiamata sicuraOperatore ElvisBasi della sfida sulle funzioniAsserzione non-nullRiepilogo - Accesso sicuro6Prendere decisioni
Istruzione ifIf-elseIf come espressioneEspressione whenwhen con intervalliRiepilogo - Calcolatrice semplice9Cicli
Ciclo forCiclo whileCiclo do-whilebreakcontinueIntervalli nei cicliCiclo annidatoRipasso - fattorialeRipasso - input dinamico12Nozioni di base sulle liste
List vs MutableListAccesso agli elementiModificare le listeMetodi delle listePair e TripleRipasso - Lista dei prodottiRipasso - Lista invertita15Gestore delle spese giornaliere
Panoramica del progettoEsci dal programmaEsercitati da solo: Playground Kotlin