From 252d08d49aaa6836f9fd9d0bfc8ae7a0cce44921 Mon Sep 17 00:00:00 2001 From: manuelazotavio Date: Sun, 22 Sep 2024 17:53:34 -0300 Subject: [PATCH 1/3] fix: resolvendo os "to-dos" do desafio --- DesafioFundamentos/Models/Estacionamento.cs | 19 +++++++++------- trilha-net-fundamentos-desafio.sln | 25 +++++++++++++++++++++ 2 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 trilha-net-fundamentos-desafio.sln diff --git a/DesafioFundamentos/Models/Estacionamento.cs b/DesafioFundamentos/Models/Estacionamento.cs index 70ce2c910..20e57f7b6 100644 --- a/DesafioFundamentos/Models/Estacionamento.cs +++ b/DesafioFundamentos/Models/Estacionamento.cs @@ -15,17 +15,16 @@ 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 placa = Console.ReadLine(); + veiculos.Add(placa); } 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 placa = Console.ReadLine(); // Verifica se o veículo existe if (veiculos.Any(x => x.ToUpper() == placa.ToUpper())) @@ -35,11 +34,13 @@ public void RemoverVeiculo() // 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 = int.Parse(Console.ReadLine()); + + decimal valorTotal = precoInicial + (precoPorHora * horas); // TODO: Remover a placa digitada da lista de veículos // *IMPLEMENTE AQUI* + veiculos.Remove(placa); Console.WriteLine($"O veículo {placa} foi removido e o preço total foi de: R$ {valorTotal}"); } @@ -55,8 +56,10 @@ 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 (var veiculo in veiculos) + { + Console.WriteLine(veiculo); + } } else { diff --git a/trilha-net-fundamentos-desafio.sln b/trilha-net-fundamentos-desafio.sln new file mode 100644 index 000000000..d635afec4 --- /dev/null +++ b/trilha-net-fundamentos-desafio.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DesafioFundamentos", "DesafioFundamentos\DesafioFundamentos.csproj", "{F10D10A8-7D6E-4B9B-A22D-4C2ABCAC33AE}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F10D10A8-7D6E-4B9B-A22D-4C2ABCAC33AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F10D10A8-7D6E-4B9B-A22D-4C2ABCAC33AE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F10D10A8-7D6E-4B9B-A22D-4C2ABCAC33AE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F10D10A8-7D6E-4B9B-A22D-4C2ABCAC33AE}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {7E949E54-19A8-4511-BAC8-BF7168A74281} + EndGlobalSection +EndGlobal From f6f9a885cd8ba1b0356c52eaf755ef5e3af9edee Mon Sep 17 00:00:00 2001 From: Victor Souza Lima Date: Tue, 24 Sep 2024 23:58:54 -0300 Subject: [PATCH 2/3] =?UTF-8?q?Movendo=20mudan=C3=A7as=20da=20main=20para?= =?UTF-8?q?=20a=20nova=20branch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MinhaAplicacao/MinhaAplicacao.csproj | 8 +++ DesafioFundamentos/MinhaAplicacao/Program.cs | 12 ++++ DesafioFundamentos/Models/Estacionamento.cs | 60 ++++--------------- DesafioFundamentos/Program.cs | 31 +++++----- 4 files changed, 47 insertions(+), 64 deletions(-) create mode 100644 DesafioFundamentos/MinhaAplicacao/MinhaAplicacao.csproj create mode 100644 DesafioFundamentos/MinhaAplicacao/Program.cs diff --git a/DesafioFundamentos/MinhaAplicacao/MinhaAplicacao.csproj b/DesafioFundamentos/MinhaAplicacao/MinhaAplicacao.csproj new file mode 100644 index 000000000..208270428 --- /dev/null +++ b/DesafioFundamentos/MinhaAplicacao/MinhaAplicacao.csproj @@ -0,0 +1,8 @@ + + + + Exe + net5.0 + + + diff --git a/DesafioFundamentos/MinhaAplicacao/Program.cs b/DesafioFundamentos/MinhaAplicacao/Program.cs new file mode 100644 index 000000000..f85404135 --- /dev/null +++ b/DesafioFundamentos/MinhaAplicacao/Program.cs @@ -0,0 +1,12 @@ +using System; + +namespace MinhaAplicacao +{ + class Program + { + static void Main(string[] args) + { + Console.WriteLine("Hello World!"); + } + } +} diff --git a/DesafioFundamentos/Models/Estacionamento.cs b/DesafioFundamentos/Models/Estacionamento.cs index 20e57f7b6..9536d0e31 100644 --- a/DesafioFundamentos/Models/Estacionamento.cs +++ b/DesafioFundamentos/Models/Estacionamento.cs @@ -1,68 +1,34 @@ -namespace DesafioFundamentos.Models -{ - public class Estacionamento - { +namespace DesafioFundamentos.Models{ + public class Estacionamento{ private decimal precoInicial = 0; private decimal precoPorHora = 0; private List veiculos = new List(); - public Estacionamento(decimal precoInicial, decimal precoPorHora) - { + public Estacionamento(decimal precoInicial, decimal precoPorHora){ this.precoInicial = precoInicial; this.precoPorHora = precoPorHora; } - - public void AdicionarVeiculo() - { - // TODO: Pedir para o usuário digitar uma placa (ReadLine) e adicionar na lista "veiculos" - Console.WriteLine("Digite a placa do veículo para estacionar:"); - string placa = Console.ReadLine(); + public void AdicionarVeiculo(string placa){ veiculos.Add(placa); } - - public void RemoverVeiculo() - { - Console.WriteLine("Digite a placa do veículo para remover:"); - - string placa = Console.ReadLine(); - - // Verifica se o veículo existe - if (veiculos.Any(x => x.ToUpper() == placa.ToUpper())) - { - 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 = int.Parse(Console.ReadLine()); - + public bool RemoverVeiculo(string placa, int horas){ + if (veiculos.Any(x => x.ToUpper() == placa.ToUpper())){ decimal valorTotal = precoInicial + (precoPorHora * horas); - - // TODO: Remover a placa digitada da lista de veículos - // *IMPLEMENTE AQUI* veiculos.Remove(placa); - Console.WriteLine($"O veículo {placa} foi removido e o preço total foi de: R$ {valorTotal}"); - } - else - { + return true; + }else{ Console.WriteLine("Desculpe, esse veículo não está estacionado aqui. Confira se digitou a placa corretamente"); + return false; } } - - public void ListarVeiculos() - { - // Verifica se há veículos no estacionamento - if (veiculos.Any()) - { + public void ListarVeiculos(){ + if (veiculos.Any()){ Console.WriteLine("Os veículos estacionados são:"); - foreach (var veiculo in veiculos) - { + foreach (var veiculo in veiculos){ Console.WriteLine(veiculo); } - } - else - { + }else{ Console.WriteLine("Não há veículos estacionados."); } } diff --git a/DesafioFundamentos/Program.cs b/DesafioFundamentos/Program.cs index 3c0724eef..e7483084f 100644 --- a/DesafioFundamentos/Program.cs +++ b/DesafioFundamentos/Program.cs @@ -6,22 +6,19 @@ decimal precoInicial = 0; decimal precoPorHora = 0; -Console.WriteLine("Seja bem vindo ao sistema de estacionamento!\n" + - "Digite o preço inicial:"); +Console.WriteLine("Seja bem vindo ao sistema de estacionamento!\n"+"Digite o preço inicial:"); precoInicial = Convert.ToDecimal(Console.ReadLine()); Console.WriteLine("Agora digite o preço por hora:"); precoPorHora = Convert.ToDecimal(Console.ReadLine()); -// Instancia a classe Estacionamento, já com os valores obtidos anteriormente Estacionamento es = new Estacionamento(precoInicial, precoPorHora); - string opcao = string.Empty; bool exibirMenu = true; +string placa; + +while (exibirMenu){ -// Realiza o loop do menu -while (exibirMenu) -{ Console.Clear(); Console.WriteLine("Digite a sua opção:"); Console.WriteLine("1 - Cadastrar veículo"); @@ -29,30 +26,30 @@ Console.WriteLine("3 - Listar veículos"); Console.WriteLine("4 - Encerrar"); - switch (Console.ReadLine()) - { + switch (Console.ReadLine()){ case "1": - es.AdicionarVeiculo(); + Console.WriteLine("Digite a placa do veículo para estacionar:"); + placa = Console.ReadLine(); + es.AdicionarVeiculo(placa); break; - case "2": - es.RemoverVeiculo(); + Console.WriteLine("Digite a placa do veículo para remover:"); + placa = Console.ReadLine(); + Console.WriteLine("Digite a quantidade de horas que o veículo permaneceu estacionado:"); + int horas = int.Parse(Console.ReadLine()); + es.RemoverVeiculo(placa,horas); break; - case "3": es.ListarVeiculos(); break; - case "4": exibirMenu = false; break; - default: Console.WriteLine("Opção inválida"); break; } - - Console.WriteLine("Pressione uma tecla para continuar"); + Console.WriteLine("Aperte uma tecla para continuar"); Console.ReadLine(); } From 52d6f7ddfd3955aeece2a28febe5d25b22b9561f Mon Sep 17 00:00:00 2001 From: Victor Souza Lima Date: Wed, 25 Sep 2024 08:07:33 -0300 Subject: [PATCH 3/3] leitura de dados foi movida para Program.cs --- DesafioFundamentos/Models/Estacionamento.cs | 2 +- DesafioFundamentos/Program.cs | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/DesafioFundamentos/Models/Estacionamento.cs b/DesafioFundamentos/Models/Estacionamento.cs index 9536d0e31..3ba53bdd7 100644 --- a/DesafioFundamentos/Models/Estacionamento.cs +++ b/DesafioFundamentos/Models/Estacionamento.cs @@ -13,8 +13,8 @@ public void AdicionarVeiculo(string placa){ } public bool RemoverVeiculo(string placa, int horas){ if (veiculos.Any(x => x.ToUpper() == placa.ToUpper())){ - decimal valorTotal = precoInicial + (precoPorHora * horas); veiculos.Remove(placa); + decimal valorTotal = precoInicial + (precoPorHora * horas); Console.WriteLine($"O veículo {placa} foi removido e o preço total foi de: R$ {valorTotal}"); return true; }else{ diff --git a/DesafioFundamentos/Program.cs b/DesafioFundamentos/Program.cs index e7483084f..a6772b2ab 100644 --- a/DesafioFundamentos/Program.cs +++ b/DesafioFundamentos/Program.cs @@ -17,7 +17,7 @@ bool exibirMenu = true; string placa; -while (exibirMenu){ +while(exibirMenu){ Console.Clear(); Console.WriteLine("Digite a sua opção:"); @@ -52,5 +52,4 @@ Console.WriteLine("Aperte uma tecla para continuar"); Console.ReadLine(); } - -Console.WriteLine("O programa se encerrou"); +Console.WriteLine("O programa se encerrou"); \ No newline at end of file