2
respostas

[Dúvida] Está correto dessa forma?

No for eu utilizei o índice "i" para verificar se o número é par. Tem problema?

// For e Foreach

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

//for
Console.WriteLine(" Os números pares no for são: ");
for (int i = 0; i <= numeros.Count; i++)
{
    if (i % 2 == 0)
    {
        Console.WriteLine(i);
    }
}

Console.WriteLine();

//foreach
Console.WriteLine(" Os números pares no foreach são: ");
foreach (int numero in numeros)
{
    if (numero % 2 == 0)
    {
        Console.WriteLine(numero);
    };
}
2 respostas

Olá Yasmin, tudo bem?

Respondendo à sua pergunta, não há problema em utilizar o índice "i" para verificar se o número é par no seu código. Na verdade, é uma forma comum de se fazer isso em um loop "for".

Bons estudos!

Olá, Yasmin!

Sua lista de números contêm números parecidos com os números da iteração (for), com exceção do zero.

Veja sua lista:

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

Ela contém números sequenciais de 1 a 10.

Agora veja o seu for:

for (int i = 0; i <= numeros.Count; i++)
{
  ...
}

a variável de controle do seu for, i, assumirá os seguintes valores no decorrer das iterações:

  • 0 (zero) na primeira iteração;
  • 1 (um) na segunda iteração;
  • 2 (dois) na terceira iteração;
  • 3 (três) na quarta iteração;
  • 4 (quatro) na quinta iteração;
  • 5 (cinco) na sexta iteração;
  • 6 (seis) na sétima iteração;
  • 7 (sete) na oitava iteração;
  • 8 (oito) na nona iteração;
  • 9 (nove) na décima iteração;
  • 10 (dez) na décima primeira iteração.

Veja que nesse caso os valores assumidos pela variável i são parecidos com os valores que você colocou na sua lista de números (à exceção do zero, como dito), por ter atribuído 0 (zero) à variável i no laço for.

Mas esteja ciente que usar i e usar numeros[i] são coisas diferentes, já que usando apenas i você terá acesso ao valor da variável de controle do laço e usando numeros[i] você terá acesso ao número da sua lista.

Isso fica evidente se você utilizar números aleatórios na sua lista de números. Ou outros números sequenciais que não coincidam com os valores de i.