Освоение цикла for в C++: пошаговое руководство
Цикл for в C++
В этом уроке мы изучим цикл for в C++ и его работу с помощью примеров.
В программировании циклы используются для повторения блока кода.
Например, если нужно показать сообщение 100 раз, вместо написания оператора печати 100 раз можно использовать цикл.
Это был простой пример; с эффективным использованием циклов можно достичь гораздо большей эффективности и изощренности в программах.
В C++ существует 3 типа циклов:
forциклwhileциклdo...whileцикл
Этот урок фокусируется на цикле for в C++. О других типах циклов мы узнаем в следующих уроках.
Цикл for в C++
Синтаксис цикла for:
for (initialization; condition; update) {
// тело цикла
}
Здесь:
initialization— инициализирует переменные и выполняется только один разcondition— еслиtrue, выполняется тело циклаfor; еслиfalse, цикл завершаетсяupdate— обновляет значение инициализированных переменных и снова проверяет условие
Подробнее об conditions см. в уроке об операторах отношения и логических операторах C++.
Блок-схема цикла for в C++

Пример 1: вывод чисел от 1 до 5
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
cout << i << " ";
}
return 0;
}
Результат
1 2 3 4 5
Как работает эта программа:
| Итерация | Переменная | i <= 5 | Действие |
|---|---|---|---|
| 1-я | i = 1 | true | 1 выводится. i увеличивается до 2. |
| 2-я | i = 2 | true | 2 выводится. i увеличивается до 3. |
| 3-я | i = 3 | true | 3 выводится. i увеличивается до 4. |
| 4-я | i = 4 | true | 4 выводится. i увеличивается до 5. |
| 5-я | i = 5 | true | 5 выводится. i увеличивается до 6. |
| 6-я | i = 6 | false | Цикл завершается |
Пример 2: вывод текста 5 раз
// Программа для вывода текста 5 раз
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; ++i) {
cout << "Hello World! " << endl;
}
return 0;
}
Результат
Hello World! Hello World! Hello World! Hello World! Hello World!
Как работает эта программа:
| Итерация | Переменная | i <= 5 | Действие |
|---|---|---|---|
| 1-я | i = 1 | true | Hello World! выводится, i становится 2. |
| 2-я | i = 2 | true | Hello World! выводится, i становится 3. |
| 3-я | i = 3 | true | Hello World! выводится, i становится 4. |
| 4-я | i = 4 | true | Hello World! выводится, i становится 5. |
| 5-я | i = 5 | true | Hello World! выводится, i становится 6. |
| 6-я | i = 6 | false | Цикл завершается |
Пример 3: сумма первых n натуральных чисел
// Программа для нахождения суммы первых n натуральных чисел
// натуральные числа — положительные целые: 1,2,3,...n
#include <iostream>
using namespace std;
int main() {
int num, sum;
sum = 0;
cout << "Enter a positive integer: ";
cin >> num;
for (int i = 1; i <= num; ++i) {
sum += i;
}
cout << "Sum = " << sum << endl;
return 0;
}
Результат
Enter a positive integer: 10 Sum = 55
В примере две переменные num и sum. sum инициализируется 0, а num — значением от пользователя.
Используется цикл for:
for(int i = 1; i <= num; ++i)
Здесь:
int i = 1: инициализация переменной ii <= num: цикл выполняется, пока i меньше или равно num++i: увеличивает i на 1 в каждой итерации
Когда i становится 11, условие false, и sum равно 0 + 1 + 2 + ... + 10.
Range-based for Loop (диапазонный цикл for)
В C++11 был введен новый range-based for цикл для работы с коллекциями, такими как массивы и векторы. Его синтаксис:
for (variable : collection) {
// тело цикла
}
Здесь для каждого значения в collection цикл выполняется, и значение присваивается variable.
Пример 4: Range-based for Loop
#include <iostream>
using namespace std;
int main() {
int num_array[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (int n : num_array) {
cout << n << " ";
}
return 0;
}
Результат
1 2 3 4 5 6 7 8 9 10
В программе объявлен и инициализирован массив int с именем num_array. В нем 10 элементов.
Использован range-based for для доступа ко всем элементам массива.
Бесконечный цикл for в C++
Если condition в цикле for всегда true, он выполняется бесконечно (до переполнения памяти). Например,
// бесконечный цикл for
for(int i = 1; i > 0; i++) {
// блок кода
}
В программе условие всегда true, поэтому код выполняется бесконечно.
Посмотрите эти примеры для дополнительного изучения:
- C++ Программа для вычисления суммы натуральных чисел
- C++ Программа для нахождения факториала
- C++ Программа для генерации таблицы умножения
В следующем уроке мы изучим циклы while и do...while.
Язык C
- Освоение операторов C++: полное руководство с практическими примерами
- Основные критерии при выборе CNC станка
- Лучшие практики превентивного обслуживания CNC
- Частые причины отказов станков с ЧПУ и как их предотвратить
- Выбор правильного СОЖ для ЧПУ: типы, преимущества и обслуживание
- Цикл do-while в C++: синтаксис, примеры и вложенные циклы
- Java-программа для идентификации чисел Армстронга с использованием for-цикла
- Термография: как инфракрасное изображения обнаружение температурных вариаций
- Ключевые критерии выбора надежного поставщика металлов
- Фосфорная бронза: ключевые применения и преимущества