Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] A minha média nao exibe valores double

Fiz a aplicação como nas aulas, mas no final a minha média só retorna valores Inteiros e nao numeros Reais, como solucionar isso no código?


void Media_dos_livros()
{
    {
        Console.Clear();
        Console.WriteLine(@"
█▀▄▀█ █▀▀ █▀▄ █ ▄▀█   █▀▄ █▀█   █   █ █ █ █▀█ █▀█
█ ▀ █ ██▄ █▄▀ █ █▀█   █▄▀ █▄█   █▄▄ █ ▀▄▀ █▀▄ █▄█");
        Console.WriteLine("\n");
        Console.Write("Digite o livro que vocë deseja saber a média de avaliação: ");
        string Nome_do_livro = (Console.ReadLine())!;
        if (Livros_registrados.ContainsKey(Nome_do_livro))
        {
            List<int> Avaliação_dos_livros = Livros_registrados [Nome_do_livro];
            Console.WriteLine($"A média do livro {Nome_do_livro} é: {Avaliação_dos_livros.Average()}!");
            Console.WriteLine("\n Digite qualquer tecla para voltar ao menu principal!");
            Console.ReadKey();
            Console.Clear();
            Exibir_opcoes_do_menu();

        }
        else
        {
            Console.WriteLine($"\n O livro {Nome_do_livro} não foi encontrado!");
            Console.WriteLine("\n Digite qualquer tecla para voltar ao menu principal!");
            Console.ReadKey();
            Console.Clear();
            Exibir_opcoes_do_menu();
        }

    }
1 resposta
solução!

Olá Leonardo!

No seu código, você está usando uma List<int>, que é uma lista de inteiros. Quando você utiliza o método Average() em uma lista de inteiros, ele retorna um valor double, mas se o resultado for exibido diretamente sem formatação, pode parecer que está retornando um inteiro.

Para fazer com que a média seja exibida como um número com casas decimais, você pode formatar a saída. Para algo nessa linha:

Console.WriteLine($"A média do livro {Nome_do_livro} é: {Avaliação_dos_livros.Average():F2}!");

O :F2 no final da interpolação de string indica que você deseja formatar o número como um número de ponto flutuante com duas casas decimais.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!