Комментарий к коду.
Код реализации.
Постановка задачи.
Пример 1.
Практические примеры.
Комментарии к примеру.
Оператор continue
Комментарии к примеру.
1. Согласно правилу, условие цикла всегда истинно, так как его просто нет.
2. При значениях 1,2 и 3 переменной x условие оператора if выполняться не будет. break, естесственно не сработает, так как находится в теле if. Между тем, на экран последовательно будут выводиться числа 1,2,3.
3. Когда х станет равно 4, программа попадет в тело if и выполнится break. Цикл сразу же будет остановлен, а выполнение программы перейдет на следующую строчку за закрывающейся фигурной скобкой оператора for.
4. На экране появится надпись Bye!
5. Цифра 4 на экране никогда не появится, так как, если сработал break, все что находится в цикле ниже него уже не выполнится.
Примечание:break может быть использован либо в цикле, либо в операторе switch. Любое другое размещение приводит к ошибке на этапе компиляции.
Оператор continue используется для прерывания текущей итерации цикла и осуществления перехода на следующий шаг. В ряде случаев, такие действия являются необходимыми. Если выполняется оператор continue, то в зависимости от вида цикла происходит следующее:
Циклы while и do while останавливают выполнение шага и переходят к проверке условия.
Цикл for также останавливает выполнение шага. Но, сначала переходит к изменению управляющей переменной, а потом уже к проверке условия.
Рассмотрим пример: показать на экран все нечетные целые числа, в диапазоне от нуля до 25 включительно.
#include <iostream> using namespace std; void main() { for(int i=0;i<26;i++) { if(i%2==0)// если число делится на два без остатка { continue;// остановить итерацию цикла и перейти к i++ } cout<<i<<"\n"; } } |
1. Цикл начинает свое движение с нуля и проходит итерации до 25 включительно.
2. Внутри цикла предусмотренно условие: если число i - четное, нужно остановить текущий шаг цикла (continue;)и перейти к конструкции i++.
3. То, что располагается ниже сработавшего оператора continue на текущем шаге уже не выполнится.
4. Если условие if не выполняется, значит число i нечетное, if будет проигнорирован, а число - отображено на экран.
Часы бьют каждый час, столько раз, сколько времени. Написать программу, которая подсчитает, сколько раз пробьют часы за 12 часов.
#include <iostream> using namespace std; void main(){ int sum=0; for(int bom=1; bom<=12;bom++){ sum+=bom;// накопление суммы ударов } // Часы пробили 78 раз. cout<<" Hours have punched "<<sum<<"times.\n\n"; } |
1. Изначально объявляется переменная sum равная нулю.
2. Цикл формируется из трех конструкций int bom=1; - начальная инициализация, bom<=12; - условие, bom++ - изменение управляющей переменной.
3. Внутри тела цикла накапливается сумма ударов путем прибавления управляющей переменной к значению общей суммы.
4. Когда i достигнет значения 13, цикл остановится и на экран покажется результат.