Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
22
Разбор поведения итератора с оператором yield в C#
Условие задачи
Определите, какой вывод получит программа при выполнении следующего кода.
var start = 0;
var iterator = GenerateSequence(start);
static IEnumerator<int> GenerateSequence(int start)
{
if (start % 2 != 0)
{
yield break;
}
if (start < 3)
{
start++;
yield return start;
}
}
iterator.MoveNext();
iterator.MoveNext();
iterator.MoveNext();
Console.WriteLine(iterator.Current);