Tratamento de Erros
Parte da seção Fundamentos do Journey de GDScript da Coddy. Lição 89 de 92.
Desafio
FácilPor fim, trate qualquer opção que não seja de 1 a 5. Mantenha tudo o que você escreveu nas etapas anteriores e imprima:
Invalid choice. Please try again.Após a mensagem, o loop lê a próxima opção como antes.
Experimente você mesmo
extends Node
func _ready():
print("Welcome to the Daily Expense Tracker!")
# Exibir o menu uma vez
print("\nMenu:")
print("1. Add a new expense")
print("2. View all expenses")
print("3. Calculate total and average expense")
print("4. Clear all expenses")
print("5. Exit")
# Um array vazio para as despesas
var expenses: Array[float] = []
while true:
# Obter a escolha do usuário
var choice := OS.read_string_from_stdin()
if choice == "1":
# Adicionar uma nova despesa
var amount := float(OS.read_string_from_stdin())
expenses.append(amount)
print("Expense added successfully!")
elif choice == "2":
# Visualizar todas as despesas
if expenses.is_empty():
print("No expenses recorded yet.")
else:
print("Your expenses:")
for i in range(expenses.size()):
print(i + 1, ". ", expenses[i])
elif choice == "3":
# Calcular o total e a média
if expenses.is_empty():
print("No expenses recorded yet.")
else:
var total := 0.0
for expense in expenses:
total += expense
var average := total / expenses.size()
print("Total expense: ", total)
print("Average expense: ", average)
elif choice == "4":
# Limpar todas as despesas
expenses.clear()
print("All expenses cleared.")
elif choice == "5":
# Sair do programa
print("Exiting the Daily Expense Tracker. Goodbye!")
break
Todas as lições de Fundamentos
4Operadores - Parte 1
Operadores aritméticosDivisão inteiraOperador móduloAtalhos aritméticosRevisão - Matemática básicaOperadores de comparação7Entrada e Saída Básicas
SaídaSaída com VariáveisFormatação de StringsEntradaConversão de TipoRevisão - Até 120Revisão - Verdadeiro ou Falso10Funções
Declare uma funçãoArgumentosRetornoTipos de retornoRevisão - Função SigmaRevisão - Função de validaçãoValores padrão13Percorrendo Arrays
Percorrendo elementosPercorrendo com índicesPercorrendo strings — Parte 1Percorrendo strings — Parte 216Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Revisão - Lógica simplesOperadores lógicos Parte 3Operador ternário8Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo Dados de Entrada11FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz3Variáveis - Parte 2
Declaração de tipoInferência de tipoConstantesRevisão - Inicialização de variáveisConversão de tipo6Tomada de decisões
Instrução ifIf - ElseRevisão - Calculadora simplesIf - Else aninhadoInstrução match9Laços de repetição
Laço forLaço whileInterromperContinuarRevisão - FatorialA função rangeLaço aninhadoRevisão - Entrada dinâmicaPratique por conta própria: Compilador de GDScript online