2
respostas

Sugestão de solução

List<int> numbers = new List<int>{1,2,3,4,5,6,7,8,9,10};

bool IsPairNumber(int number)
    {
        return number % 2 == 0;
    }

void ShowTextPair(int number)
    {
        Console.WriteLine($"Exibindo números pares: {number}");
    }

void ShowTextOdd(int number)
    {
        Console.WriteLine($"Exibindo números impar: {number}");
    }

for(int i = 0; i < numbers.Count; i++)
    {
        bool isPair = IsPairNumber(numbers[i]);
        
        // if(isPair) ShowTextPair(numbers[i]);
        if(!isPair) ShowTextPair(numbers[i]);
    }

// foreach(int number in numbers)
//     {
//         bool isPair = IsPairNumber(number);
        
//         // if(isPair) ShowTextPair(number);
//         // if(!isPair) ShowTextPair(number);
//     }
2 respostas

Olá, Estudante. Tudo bem?

Obrigado por compartilhar aqui com a gente.

Achei interessante como você estruturou as funções IsPairNumber, ShowTextPair e ShowTextOdd para verificar a paridade e exibir mensagens de forma clara. Só uma observação: na linha onde você usa if(!isPair) ShowTextPair(numbers[i]);, parece que a condição está exibindo números ímpares em vez dos pares, devido à negação (!isPair). Para mostrar apenas números pares, basta remover a negação para que a condição seja if(isPair).

Você também pode explorar o uso do loop foreach, que deixa o código mais conciso ao evitar o uso do índice manual. Veja como ficaria com foreach:

foreach(int number in numbers)
{
    if (IsPairNumber(number)) 
        ShowTextPair(number);
    else
        ShowTextOdd(number);
}

Esse código percorre a lista e, para cada número, verifica a paridade, exibindo a mensagem correta. Fica mais simples, evitando a contagem manual do for.

Conte com o apoio do Fórum. Abraços e bons estudos!

Oi Renan, muito obrigado pela analise. Vou implementar no código