diff --git a/DesafioFundamentos/Models/Estacionamento.cs b/DesafioFundamentos/Models/Estacionamento.cs index 70ce2c91..f67a2ea3 100644 --- a/DesafioFundamentos/Models/Estacionamento.cs +++ b/DesafioFundamentos/Models/Estacionamento.cs @@ -1,3 +1,5 @@ +using System.Security.Cryptography.X509Certificates; + namespace DesafioFundamentos.Models { public class Estacionamento @@ -6,6 +8,7 @@ public class Estacionamento private decimal precoPorHora = 0; private List veiculos = new List(); + public Estacionamento(decimal precoInicial, decimal precoPorHora) { this.precoInicial = precoInicial; @@ -14,34 +17,47 @@ public Estacionamento(decimal precoInicial, decimal precoPorHora) public void AdicionarVeiculo() { - // TODO: Pedir para o usuário digitar uma placa (ReadLine) e adicionar na lista "veiculos" - // *IMPLEMENTE AQUI* + Console.WriteLine("Digite a placa do veículo para estacionar:"); + + string placaVeiculo = Console.ReadLine(); + + veiculos.Add(placaVeiculo); + } public void RemoverVeiculo() { Console.WriteLine("Digite a placa do veículo para remover:"); - // Pedir para o usuário digitar a placa e armazenar na variável placa - // *IMPLEMENTE AQUI* - string placa = ""; + string placaVeiculoRemover = Console.ReadLine(); // Verifica se o veículo existe - if (veiculos.Any(x => x.ToUpper() == placa.ToUpper())) + if (veiculos.Any(x => x.ToUpper() == placaVeiculoRemover.ToUpper())) { - Console.WriteLine("Digite a quantidade de horas que o veículo permaneceu estacionado:"); + Console.WriteLine("Digite a quantidade de horas que o veículo permaneceu estacionado:"); - // TODO: Pedir para o usuário digitar a quantidade de horas que o veículo permaneceu estacionado, - // TODO: Realizar o seguinte cálculo: "precoInicial + precoPorHora * horas" para a variável valorTotal - // *IMPLEMENTE AQUI* - int horas = 0; - decimal valorTotal = 0; + + int horas; + while (true) + { + string entradaHoras = Console.ReadLine(); - // TODO: Remover a placa digitada da lista de veículos - // *IMPLEMENTE AQUI* - - Console.WriteLine($"O veículo {placa} foi removido e o preço total foi de: R$ {valorTotal}"); + if (int.TryParse(entradaHoras, out horas) && horas >= 0) + { + break; + } + else + { + Console.WriteLine("Entrada inválida. Por favor, digite um número inteiro válido para as horas:"); + } + } + decimal precoInicial = 5; + int precoPorHora = 2; + decimal valorTotal = precoInicial + (precoPorHora * horas); + + veiculos.Remove(placaVeiculoRemover); + Console.WriteLine($"O veículo {placaVeiculoRemover} foi removido e o preço total foi de: R$ {valorTotal}"); } else { @@ -55,8 +71,12 @@ public void ListarVeiculos() if (veiculos.Any()) { Console.WriteLine("Os veículos estacionados são:"); - // TODO: Realizar um laço de repetição, exibindo os veículos estacionados - // *IMPLEMENTE AQUI* + + foreach(string item in veiculos) + { + Console.WriteLine(item); + } + } else {