Para este desafio, você precisará usar seus conhecimentos adquiridos no módulo de fundamentos, da trilha .NET da DIO.
Você foi contratado para construir um sistema para um estacionamento, que será usado para gerenciar os veículos estacionados e realizar suas operações, como por exemplo adicionar um veículo, remover um veículo (e exibir o valor cobrado durante o período) e listar os veículos.
Você precisará construir uma classe chamada "Estacionamento", conforme o diagrama abaixo:
A classe contém três variáveis, sendo:
precoInicial: Tipo decimal. É o preço cobrado para deixar seu veículo estacionado.
precoPorHora: Tipo decimal. É o preço por hora que o veículo permanecer estacionado.
veiculos: É uma lista de string, representando uma coleção de veículos estacionados. Contém apenas a placa do veículo.
A classe contém três métodos, sendo:
AdicionarVeiculo: Método responsável por receber uma placa digitada pelo usuário e guardar na variável veiculos.
RemoverVeiculo: Método responsável por verificar se um determinado veículo está estacionado, e caso positivo, irá pedir a quantidade de horas que ele permaneceu no estacionamento. Após isso, realiza o seguinte cálculo: precoInicial * precoPorHora, exibindo para o usuário.
ListarVeiculos: Lista todos os veículos presentes atualmente no estacionamento. Caso não haja nenhum, exibir a mensagem "Não há veículos estacionados".
Por último, deverá ser feito um menu interativo com as seguintes ações implementadas:
- Cadastrar veículo
- Remover veículo
- Listar veículos
- Encerrar
-
Eu implementei um metodo de verificação de uma placa valida. O metodo IsValidPlate() faz a verificação da placa conforme um padrão regular (regex).
-
Nesse mesmo caminho de validação,eu implentei uma validação nos campos preçoInicial e precoPorHora. Antes,eles aceitavem qualquer valores menores ou ate o proprio zero e se caso nada fosse digitado retornaria um erro.
O código está pela metade, e você deverá dar continuidade obedecendo as regras, para que no final, tenhamos um programa funcional. Procure pela palavra comentada "TODO" no código, em seguida, implemente conforme as regras acima.