Цикл – алгоритмическая конструкция, представляющая собой последовательность действий, выполняющихся многократно.
Тело цикла – последовательность действий, многократно повторяющаяся в процессе выполнения алгоритма.
Виды циклов
Цикл с предусловием («пока»)
![]() |
while (условие){ тело цикла;} |
Цикл с постусловием («до»)
![]() |
do { тело цикла } while (условие); |
Цикл с заданным количеством повторений (с параметром)
![]() |
for (int i=m; i<n; i+=k) { тело цикла;} |
В циклах с условием тело цикла выполняется до тех пор, пока выполняется условие.
В цикле с параметром тело цикла выполняется от начального значения параметра i, равного m, до тех пор, пока оно не достигнет значения n с шагом k.
Циклы с условием, чаще всего, используются тогда, когда количество повторений неизвестно, а выполнение действий в цикле ограничено каким-либо условием. Однако цикл «пока» считается универсальным, его можно использовать для любой циклической задачи.
Циклы с параметром используют тогда, когда заранее известно количество повторов.
Пример: Вывести на экран числа от 1 до 15.
Фрагмент программы | Ход выполнения | ||||||||||||||||||||||||||||
int i=1; while (i<16){ cout << i << ” “; i++;} |
|
||||||||||||||||||||||||||||
int i=1; do { cout<<i<<” “; i++; } while (i<16); |
|
||||||||||||||||||||||||||||
for (int i=1; i<16; i++){ cout<<i<<” “; } |
После выполнения каждого шага цикла значение счетчика цикла i автоматически увеличивается на 1. |
Вопрос: каково минимальное количество выполнений тела цикла в цикле с предусловием и в цикле с постусловием?
Еще примеры задач
1. На вход программы подаются целые числа. Условие окончания ввода – ввод 0. Посчитать количество четных чисел.
Решение:
Цикл с предусловием | Цикл с постусловием |
//описываем счетчик количества четных чисел
int k=0; //описываем вводимые числа
int a; //водим первое число
cin>> a; |
//описываем счетчик количества четных чисел
int k=0; //описываем вводимые числа
int a; |
Что будет выведено на экран, если на вход подали числа 3, 15, 6, 7, 8, 0?
2. На вход программы подается n чисел. Найти сумму чисел, оканчивающихся на 3.
Решение:
int s=0; // счетчик суммы
int a, n; cin>>n;
for (int i=0; i<n; i++) { cin>> a;
if (a%10==3){
s+=a;
}
}
cout<<s;