Начиная с C# 9 можно итерироваться по числам:
foreach (int x in 5)
Console.Write($"{x} ");
// Вывод: 1 2 3 4 5
foreach (var n in 42..46)
Console.Write($"{n} ");
// Вывод: 42 43 44 45 46
Для этого достаточно добавить расширение метода
GetEnumerator:public static class Extensions
{
public static IEnumerator<int> GetEnumerator(this int x)
=> Enumerable.Range(1, x).GetEnumerator();
public static IEnumerator<int> GetEnumerator(this Range range)
=> Enumerable.Range(range.Start.Value, range.End.Value - range.Start.Value + 1).GetEnumerator();
}
💬 Уже использовали в работе или всё ещё балуетесь обычными циклами?
🐸Библиотека шарписта #буст