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

O laço certo para o problema

List<double> notas = new List<double>
        {
    8.5,
    6.2,
    9.1,
    5.8,
    7.4
        };

for (int i = 0; i < notas.Count; i++)
{
    if (notas[i] < 7)
    {
        Console.WriteLine($"O aluno com a nota {notas[i]} está abaixo da média!");
    }
    else
    {
        Console.WriteLine($"O aluno com a nota {notas[i]} está indo muito bem!");

    }
}

O que pode ser melhorado no meu código?

1 resposta
solução!

Olá Horizon! Tudo joia?

Seu código está funcionando corretamente para o que você precisa, mas podemos melhorar a legibilidade e simplicidade utilizando o laço foreach. Esse tipo de laço é especialmente útil quando você precisa iterar sobre todos os elementos de uma coleção, como a sua lista de notas, sem a necessidade de gerenciar um índice manualmente. Isso torna o código mais limpo e fácil de entender.

Aqui está como você poderia reescrever seu código usando foreach:

List<double> notas = new List<double>
{
    8.5,
    6.2,
    9.1,
    5.8,
    7.4
};

foreach (double nota in notas)
{
    if (nota < 7)
    {
        Console.WriteLine($"O aluno com a nota {nota} está abaixo da média!");
    }
    else
    {
        Console.WriteLine($"O aluno com a nota {nota} está indo muito bem!");
    }
}

Neste exemplo, o foreach percorre cada elemento da lista notas diretamente, atribuindo-o à variável nota em cada iteração. Isso elimina a necessidade de acessar elementos por meio de um índice, como no for, e torna o código mais conciso.

Espero ter ajudado e bons estudos!

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