Menu
Coddy logo textTech

Limpar Tudo

Parte da seção Fundamentos do Journey de Swift da Coddy — lição 82 de 86.

challenge icon

Desafio

Fácil

Na lição anterior, você implementou o recurso "Show total and average". Agora, implemente o recurso "Clear all expenses" para a opção "4".

Modifique seu código para lidar com a opção "4":

  1. Quando o usuário inserir "4", remova todos os elementos do array expenses
  2. Imprima All expenses cleared! após limpar o array
  3. Todas as outras opções ("1", "2", "3" e "5") devem continuar funcionando como antes

Dica: Use o método removeAll() para limpar todos os elementos do array.

Comportamento esperado:

  • Quando "4" for inserido, limpe o array de despesas e confirme com uma mensagem
  • Após a limpeza, a visualização das despesas deve mostrar No expenses recorded.
  • Após a limpeza, a exibição do total/média deve mostrar No expenses to calculate.

Exemplo de interação:

1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
15.0
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
25.0
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
2
Your expenses:
- $15.0
- $25.0
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
4
All expenses cleared!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
2
No expenses recorded.
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
5
Goodbye!

Experimente você mesmo

// Daily Expense Tracker - Menu Display

var expenses: [Double] = []

while true {
    // TODO: Write your code below to print the menu options
    // Each option should be on its own line with the format: "number. option text"
    print("1. Add expense")
    print("2. View all expenses")
    print("3. Show total and average")
    print("4. Clear all expenses")
    print("5. Exit")
    
    let choice = readLine()
    
    if choice == "1" {
        print("Enter expense amount:")
        if let input = readLine(), let amount = Double(input) {
            expenses.append(amount)
            print("Expense added!")
        }
    } else if choice == "2" {
        if expenses.isEmpty {
            print("No expenses recorded.")
        } else {
            print("Your expenses:")
            for expense in expenses {
                print("- $\(expense)")
            }
        }
    } else if choice == "3" {
        if expenses.isEmpty {
            print("No expenses to calculate.")
        } else {
            let total = expenses.reduce(0, +)
            let average = total / Double(expenses.count)
            print("Total: $\(total)")
            print("Average: $\(average)")
        }
    } else if choice == "4" {
        print("Coming soon...")
    } else if choice == "5" {
        print("Goodbye!")
        break
    } else {
        print("Coming soon...")
    }
}

Todas as lições de Fundamentos