FGV — Analista de Tecnologia da Informação - Desenvolvimento — Analise o código C# mostrado abaixo. namespace ConsoleApplication1 { class Program { — 2015

Enunciado

Analise o código C# mostrado abaixo. namespace ConsoleApplication1 { class Program { static IEnumerable XPTO(int from, int to) { for (int i = from; i < to; i+=3) { yield return i; } yield break; } static void Main() { foreach (int x in XPTO(-10, 10) { Console.WriteLine(x); } } } } O resultado exibido pelo programa é:

Alternativas

  1. A)

    -10

  2. B)

    -10, -7, -4, -1, 2, 5, 8

  3. C)

    -7, -4, -1, 2, 5, 8

  4. D)

    -7, -4, -1, 2, 5, 8, 11

  5. E)

    0

Gabarito e comentário

Resposta correta: B

O laço começa em −10, incrementa de três em três e para antes de 10. Os valores emitidos por yield return são −10, −7, −4, −1, 2, 5 e 8; yield break encerra a sequência.

Questões relacionadas