public void Menu() { Console.Clear(); bool menu = true; while (menu) { Console.WriteLine("\nDigite 1 para Cadastrar Veiculos, 2 para ver Veiculo, 3 para viajar e 4 para sair\n"); var decisao = Console.ReadLine(); switch (decisao) { case "1": var novoVeiculo = new Veiculo(); novoVeiculo.CadastrarVeiculo(); Veiculos.Add(novoVeiculo); Operacoes.SalvarArquivo(this); break; case "2": Console.WriteLine("\nVeiculos registrados:\n"); Veiculos.ForEach(v => Console.WriteLine(v)); break; case "3": Console.WriteLine("\nSeja bem vindo(a)\n"); Console.WriteLine("\nO clima está bom ?\n"); var Clima = Console.ReadLine().ToUpper() == "SIM" ? true : false; Console.WriteLine("\nPor quantos km quer viajar ?\n"); var Distancia = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("\nVeiculos registrados:\n"); Veiculos.ForEach(v => Console.WriteLine(v)); Console.WriteLine("\nEscolha um veiculo por Id para viajar!\n"); var id = Convert.ToInt32(Console.ReadLine()); var Viagem = new Viagem(Veiculos.FirstOrDefault(c => c.IdDoVeiculo == id), Clima, Distancia); Viagem.RealizaViagem(); Viagens.Add(Viagem); Operacoes.SalvarArquivo(this); break; case "4": Console.WriteLine("Viagens registradas"); Veiculos.ForEach(v => Console.WriteLine(v)); break; case "5": menu = false; break; default: Console.WriteLine("\nOpção inválida!\n"); break; } } }
static void Main() { var start = Operacoes.RecuperarArquivo(); start = start ?? new View(); start.Menu(); }
public void CadastrarVeiculo() { Console.WriteLine("\nQual é o tipo do veiculo ? Carro ou Moto\n"); Tipo = Enum.Parse <TipoDosVeiculos>(Console.ReadLine()); Console.WriteLine($"\nDigite o Fabricante do(a) {Tipo}\n"); Fabricante = Console.ReadLine(); Console.WriteLine($"\nDigite o modelo do do(a) {Tipo}\n"); Modelo = Console.ReadLine(); Console.WriteLine($"\nDigite a Capacide total do Tanque do(a) {Tipo}\n"); CapacidadeTanque = Convert.ToDouble(Console.ReadLine()); Console.WriteLine($"\nDigite quantos KM o(a) {Tipo} faz por litro de combustivel\n"); AutonomiaLitro = Convert.ToDouble(Console.ReadLine()); Console.WriteLine($"\n O(a) {Tipo} é flex ?\n"); Flex = Console.ReadLine().ToUpper() == "SIM" ? true : false; Console.WriteLine($"\n Digite o ano de Fabricação do(a) {Tipo}\n"); Ano = Console.ReadLine(); Console.WriteLine($"\n O(a) {Tipo} está com quanto de combustivel ?\n"); Tanque = Convert.ToDouble(Console.ReadLine()); Operacoes.ValidaTipoDoCombustivel(this); Console.WriteLine($"\nVeiculo cadastrado com sucesso! o Id é: {IdDoVeiculo} \n"); }
public double Dirigir(bool Clima, double KmAtual) { Operacoes.DesgastaPneuDeAcordoComAViagem(KmAtual, this); AutonomiaAtual = Operacoes.CalculaAutonomiaAtual(Tanque, AutonomiaLitro, NivelPneu, Clima); if (AutonomiaAtual == 0) { return(0); } Console.WriteLine("Por quantos Km quer dirigir ?"); var kmAPercorrer = Convert.ToDouble(Console.ReadLine()); if (kmAPercorrer > AutonomiaAtual) { return(0); } var aDescontarTanque = Math.Round(kmAPercorrer / AutonomiaLitro); Tanque -= Clima ? aDescontarTanque : Math.Round(aDescontarTanque + aDescontarTanque * 0.1); return(kmAPercorrer); }
public double Abastecer(double Litros) { if (Litros > CapacidadeTanque) { return(0); } if (Litros <= 0) { return(-1); } Tanque += Math.Round(Litros); Operacoes.ValidaTipoDoCombustivel(this); return(Tanque); }