From b63313ca9ce383e4ec94ea329be78f495ae3478c Mon Sep 17 00:00:00 2001 From: j0rgejuni0r Date: Thu, 19 Sep 2024 11:08:38 -0300 Subject: [PATCH] =?UTF-8?q?feat:=20Implementa=C3=A7=C3=A3o=20do=20desafio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DesafioFundamentos/.vscode/launch.json | 26 +++++++++++++ DesafioFundamentos/.vscode/tasks.json | 41 +++++++++++++++++++++ DesafioFundamentos/Models/Estacionamento.cs | 22 +++++------ 3 files changed, 78 insertions(+), 11 deletions(-) create mode 100644 DesafioFundamentos/.vscode/launch.json create mode 100644 DesafioFundamentos/.vscode/tasks.json diff --git a/DesafioFundamentos/.vscode/launch.json b/DesafioFundamentos/.vscode/launch.json new file mode 100644 index 000000000..eb780666c --- /dev/null +++ b/DesafioFundamentos/.vscode/launch.json @@ -0,0 +1,26 @@ +{ + "version": "0.2.0", + "configurations": [ + { + // Usar o IntelliSense para descobrir quais atributos existem para a depuração de C# + // Passe o mouse sobre a tela para ver a descrição dos atributos existentes + // Para obter mais informações, acesse https://github.com/dotnet/vscode-csharp/blob/main/debugger-launchjson.md + "name": ".NET Core Launch (console)", + "type": "coreclr", + "request": "launch", + "preLaunchTask": "build", + // Se tiver alterado as estruturas de destino, certifique-se de atualizar o caminho do programa. + "program": "${workspaceFolder}/bin/Debug/net6.0/DesafioFundamentos.dll", + "args": [], + "cwd": "${workspaceFolder}", + // Para obter mais informações sobre o campo \"console\", confira https://aka.ms/VSCode-CS-LaunchJson-Console + "console": "internalConsole", + "stopAtEntry": false + }, + { + "name": ".NET Core Attach", + "type": "coreclr", + "request": "attach" + } + ] +} \ No newline at end of file diff --git a/DesafioFundamentos/.vscode/tasks.json b/DesafioFundamentos/.vscode/tasks.json new file mode 100644 index 000000000..a3f7697ce --- /dev/null +++ b/DesafioFundamentos/.vscode/tasks.json @@ -0,0 +1,41 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build", + "command": "dotnet", + "type": "process", + "args": [ + "build", + "${workspaceFolder}/DesafioFundamentos.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "publish", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "${workspaceFolder}/DesafioFundamentos.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "watch", + "command": "dotnet", + "type": "process", + "args": [ + "watch", + "run", + "--project", + "${workspaceFolder}/DesafioFundamentos.csproj" + ], + "problemMatcher": "$msCompile" + } + ] +} \ No newline at end of file diff --git a/DesafioFundamentos/Models/Estacionamento.cs b/DesafioFundamentos/Models/Estacionamento.cs index 70ce2c910..f8b2145e3 100644 --- a/DesafioFundamentos/Models/Estacionamento.cs +++ b/DesafioFundamentos/Models/Estacionamento.cs @@ -14,32 +14,30 @@ 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 = ""; + 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 = 0; decimal valorTotal = 0; + + horas = Convert.ToInt32(Console.ReadLine()); + 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 +53,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(string placa in veiculos) + { + Console.WriteLine($"{placa}"); + } } else {