1
resposta

08 Desafio: hora da prática

static void ExercicioListaAluno()
{
    Dictionary<string, List<float>> aluno = new Dictionary<string, List<float>>();

    string nomeAluno;

    float notaAluno1;
    float notaAluno2;
    float notaAluno3;

    Console.Write("\nDigite o nome do aluno: ");
    nomeAluno = Console.ReadLine()!;
    aluno.Add(nomeAluno, new List<float>());

    Console.Write("\nDigite a primeira nota: ");
    notaAluno1 = float.Parse(Console.ReadLine()!);
    aluno[nomeAluno].Add(notaAluno1);

    Console.Write("\nDigite a segunda nota: ");
    notaAluno2 = float.Parse(Console.ReadLine()!);
    aluno[nomeAluno].Add(notaAluno2);

    Console.Write("\nDigite a terceira nota: ");
    notaAluno3 = float.Parse(Console.ReadLine()!);
    aluno[nomeAluno].Add(notaAluno3);

    float mediaAluno = 0f;

    foreach (List<float> notasDoAluno in aluno.Values)
    {
        foreach(float nota in notasDoAluno)
        {
            mediaAluno = mediaAluno + nota;
        }
    }

    mediaAluno = mediaAluno / 3;
    Console.WriteLine();
    Console.WriteLine($"A média do aluno {nomeAluno} é: {mediaAluno}");


}

static void ControleDeEstoque()
{
    Dictionary<string, int> produtos = new Dictionary<string, int>();
    MenuEstoque();
    void MenuEstoque()
    {
        Console.WriteLine("1 - Cadastrar novo produto");
        Console.WriteLine("2 - Consultar Produto");
        int escolhaUsuario = int.Parse(Console.ReadLine()!);

        switch (escolhaUsuario)
        {
            case 1: CadastrarProduto();
                break;
            case 2: ConsultarProduto();
                break;
        }
    }
    void CadastrarProduto()
    {
        Console.Write("\nDigite o nome do Produto: ");
        string nomeProduto = Console.ReadLine()!;
        Console.Write($"\nDigite a quantidade {nomeProduto}: ");
        int quantidadeProduto = int.Parse(Console.ReadLine()!);

        produtos.Add(nomeProduto, quantidadeProduto);

        Console.WriteLine($"Foi cadastrado ao estoque {quantidadeProduto} unidades do produto {nomeProduto}");
        MenuEstoque();
    }
    void ConsultarProduto()
    {
        Console.Clear();
        Console.Write("Digite o nome do produto: ");
        string produtoPesquisado = Console.ReadLine()!;

        if (produtos.ContainsKey(produtoPesquisado))
        {
            Console.WriteLine($"\nO estoque possui {produtos[produtoPesquisado]} do produto {produtoPesquisado}");
        }
        else
        {
            Console.WriteLine("\nO produto pesquisado não se encontra cadastrado no estoque");
            Console.WriteLine("\nPressione 1 para pesquisar novamente");
            Console.WriteLine("\nPressione 2 para voltar ao menu inicial");
            int escolhaUsuario = int.Parse(Console.ReadLine()!);

            switch (escolhaUsuario)
            {
                case 1: ConsultarProduto();
                    break;
               case 2: MenuEstoque();
                    break;
            }
           
        }
    }
}

static void Quiz()
{
    Dictionary<string, string> perguntasERespostas = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
    {
        ["\nFruta para fazer torta de maça?"] = "maça",
        ["\nFruta para fazer torta de uva?"] = "uva",
        ["\nFruta para fazer torta de banana?"] = "banana",
        ["\nFruta para fazer torta de pera?"] = "pera",
    };
    int respostaCerta = 0;
    int respostaErrada = 0;


    foreach(string pergunta in perguntasERespostas.Keys)
    {
        Console.WriteLine(pergunta);
        string resposta = Console.ReadLine()!;
        if(resposta == perguntasERespostas[pergunta])
        {
            Console.WriteLine("Parabens, você acertou!\n");
            respostaCerta++;
        }
        else
        {
            Console.WriteLine("Você errou!\n");
            respostaErrada++;
        }
    }
    if(respostaCerta == 4)
    {
        Console.WriteLine("Incrivel, você acertou todas as perguntas");
    }
    else
    {
        Console.WriteLine($"Você acertou {respostaCerta} e errou {respostaErrada}");
    }
}
1 resposta

Olá, Rafael! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de Dictionary para organizar dados de forma estruturada, utilizou muito bem funções locais para separar responsabilidades em cada exercício e ainda compreendeu a importância de laços de repetição para calcular médias, consultar estoque e validar respostas em um quiz.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!