Как создать массив с последовательностью целых чисел в С#? F # имеет последовательности, которые позволяют создавать последовательности: seq { 0 .. 10 } Создать последовательность чисел от 0 до 10. Есть ли что-то подобное в С#? Ответ 1 Вы можете использовать Enumerable.Range(0, 10);. Пример: var seq = Enumerable.Range(0, 10); Страница MSDN здесь. Ответ 2 Enumerable.Range(0, 11); Создает последовательность целых чисел в пределах заданного диапазона. http://msdn.microsoft.com/en-us/library/system.linq.enumerable.range.aspx Ответ 3 Вы можете создать простую функцию. Это будет работать для более сложной последовательности. В противном случае следует выполнить Enumerable.Range. IEnumerable<int> Sequence(int n1, int n2) { while (n1 <= n2) { yield return n1++; } } Ответ 4 Моя реализация: private static IEnumerable<int> Sequence(int start, int end) { switch (Math.Sign(end - start)) { case -1: while (start >= end) { yield return start--; } break; case 1: while (start <= end) { yield return start++; } break; default: yield break; } }
Ответ 1 Вы можете использовать Enumerable.Range(0, 10);. Пример: var seq = Enumerable.Range(0, 10); Страница MSDN здесь.
Ответ 2 Enumerable.Range(0, 11); Создает последовательность целых чисел в пределах заданного диапазона. http://msdn.microsoft.com/en-us/library/system.linq.enumerable.range.aspx
Ответ 3 Вы можете создать простую функцию. Это будет работать для более сложной последовательности. В противном случае следует выполнить Enumerable.Range. IEnumerable<int> Sequence(int n1, int n2) { while (n1 <= n2) { yield return n1++; } }
Ответ 4 Моя реализация: private static IEnumerable<int> Sequence(int start, int end) { switch (Math.Sign(end - start)) { case -1: while (start >= end) { yield return start--; } break; case 1: while (start <= end) { yield return start++; } break; default: yield break; } }