Циклы по массивам
for и foreach.
«Циклы по массивам» — бесплатный урок C# Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 4 уроков всего.
Зачем нужен цикл
В массивах часто хранится много значений, и обычно не хочется вводить каждый индекс вручную. Цикл автоматически повторяет действие для каждого элемента.
Это позволяет вывести, сложить или проверить все значения всего несколькими строками.
Цикл for
В цикле for используется счётчик. Начните его с 0 и продолжайте цикл, пока счётчик меньше Length, увеличивая его на единицу после каждой итерации.
Счётчик одновременно служит индексом, поэтому вы можете обратиться к каждому элементу.
int[] nums = { 10, 20, 30 };
for (int i = 0; i < nums.Length; i++)
{
Console.WriteLine(nums[i]);
}Полная программа с for
Эта полная программа перебирает цвета и выводит каждый из них в отдельной строке.
Запустите её и обратите внимание, как одна и та же строка кода обрабатывает каждый элемент.
string[] colors = { "red", "green", "blue" };
for (int i = 0; i < colors.Length; i++)
{
Console.WriteLine(colors[i]);
}Цикл foreach
Если нужны только значения, а не индексы, foreach проще использовать. Он передаёт вам каждый элемент по порядку.
Вам не нужно управлять счётчиком, а значит, вероятность ошибок ниже.
string[] colors = { "red", "green", "blue" };
foreach (string c in colors)
{
Console.WriteLine(c);
}foreach с var
В foreach можно использовать var, чтобы C# самостоятельно определил тип элемента.
Так цикл остаётся коротким и при этом сохраняет безопасность типов.
int[] nums = { 1, 2, 3 };
foreach (var n in nums)
{
Console.WriteLine(n * 2);
}for и foreach
Используйте for, когда нужен индекс, требуется пропустить элементы или необходимо изменить массив. Используйте foreach, когда нужно просто прочитать каждое значение.
Нельзя изменить переменную цикла в foreach, чтобы записать значение обратно в массив; для этого используйте for.
int[] nums = { 1, 2, 3 };
for (int i = 0; i < nums.Length; i++)
{
nums[i] = nums[i] + 1; // updates the array
}
Console.WriteLine(nums[0]); // 2Суммирование элементов
Распространённая задача — сложить все значения. Храните текущую сумму и добавляйте к ней каждый элемент внутри цикла.
Этот шаблон подходит для подсчёта количества, сумм и средних значений.
int[] nums = { 4, 8, 15 };
int total = 0;
foreach (int n in nums)
{
total += n;
}
Console.WriteLine(total); // 27Поиск максимального значения
Чтобы найти наибольшее значение, сначала предположите, что первый элемент является максимальным, а затем сравните его со всеми остальными элементами.
Каждый раз, когда находите большее значение, обновляйте максимум.
int[] nums = { 3, 9, 2, 7 };
int max = nums[0];
foreach (int n in nums)
{
if (n > max) max = n;
}
Console.WriteLine(max); // 9Поиск значения
С помощью цикла можно проверить, существует ли значение. Как только найдёте совпадение, выйдите из цикла, чтобы не выполнять лишнюю работу.
Переменная-флаг запоминает, найден ли элемент.
string[] names = { "Ana", "Bo", "Cy" };
bool found = false;
foreach (string n in names)
{
if (n == "Bo") { found = true; break; }
}
Console.WriteLine(found); // TrueВывод с индексом
Иногда нужно показать и позицию. Цикл for предоставляет индекс вместе со значением.
Это особенно удобно для нумерованных списков.
string[] tasks = { "Wake", "Eat", "Code" };
for (int i = 0; i < tasks.Length; i++)
{
Console.WriteLine((i + 1) + ". " + tasks[i]);
}Перебор диапазона
Не обязательно перебирать весь массив. Измените начало или конец цикла for, чтобы обработать только его часть.
Здесь мы пропускаем первый элемент, начиная с индекса 1.
int[] nums = { 10, 20, 30, 40 };
for (int i = 1; i < nums.Length; i++)
{
Console.WriteLine(nums[i]); // 20, 30, 40
}Быстрая проверка
Проверьте свои знания о циклах.
Повторение
Вы научились перебирать массивы с помощью for (счётчик и индекс) и foreach (непосредственный доступ к каждому значению).
Используйте for, когда нужен индекс или требуется изменить элементы, а foreach — для удобного чтения без изменений. Вы также научились суммировать значения, выполнять поиск и находить максимум. Далее вы будете работать с таблицами с помощью многомерных массивов.
Часто задаваемые вопросы
Урок «Циклы по массивам» бесплатный?
Да — полный текст урока «Циклы по массивам» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 4 уроков всего.
Чему я научусь в уроке «Циклы по массивам»?
for и foreach. Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать C# Academy?
Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Циклы по массивам»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке C# Academy?
Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Объявление массивов
- Индексация и длина
- Циклы по массивам
- Многомерные массивы