Читайте также: |
|
Глава 9. Все в нашей жизни циклично...
Все в нашей жизни циклично...дни недели, месяцы, года... И в программировании тоже не обойтись без этого...
В этой главе мы с вами будем рассматривать, так называемые циклы, а именно цикл while и цикл for. Для чего они нужны? Для того, чтобы ответить на этот вопрос давайте представим себе такую ситуацию: ну к примеру вы хотите напечатать на экране свое имя ровно 20 раз. Как вы уже знаете для этого мы должны воспользоваться оператором консольного вывода (cout - поместить в поток). Вот такая строка кода должна выводить ваше имя:
cout << "Your name" << endl;Для того, чтобы вывести имя 20 раз нам нужно написать в своей программе эту строку ровно 20 раз! Хорошо, если вы решили вывести свое имя 20 раз, а не, к примеру, 100 или 1000! Конечно же, вы понимаете, что это очень накладно и нереально. В этом случае на помощь программисту приходят циклы while и for, которые позволяют выполнять определенный участок кода (в нашем случае это печать имени) столько раз, сколько мы укажем. Иными словами, пока не выполнится какое-либо условие, требуемое для завершения цикла. В нашем случае этим условием, как вы уже догадываетесь, является число 20, т.к. печатать нам нужно именно 20 раз. Рассмотрим цикл while.
Операторы циклов: цикл while
Цикл while с предусловием
Синтаксис данного оператора цикла таков:
while (условие выполнения цикла){ оператор 1; оператор 2;... оператор n;}А теперь давайте с вами запрограммируем эту программу. Итак, программа, печатающая имя, будет выглядеть так:
//Операторы циклов - цикл while #include <iostream> using namespace std; int main(){ int i; i = 1; while (i <= 20) { cout << "Your name" << endl; i = i + 1; } return 0;}Мы определяем переменную i, которая у нас будет служить счетчиком, задаем нашему счетчику начальное значение равное единице перед входом в цикл. В цикле определяем условие, при котором у нас будет он работать, т.е. выполняться заключенные в него операторы. После того, как условие перестанет выполняться, цикл завершится и программа выйдет из него и перейдет к выполнению следующих после цикла операторов (у нас это оператор return 0;). Как я уже сказал, для того, чтобы цикл работал должно выполняться указанное в нем условие (у нас это i <= 20), когда i становится равным 21, то операторы заключенные в тело цикла уже выполняться не будут. Естественно, программист должен обязательно позаботиться, чтобы это условие выхода из цикла когда-нибудь сработало, иначе произойдет зацикливание и программа никогда не завершиться (придется аварийно завершать ее). Для этого у нас есть счетчик, который в каждой итерации (одно выполнения цикла) увеличивает свое значение на единицу:
(Небольшое отступление) Как видите здесь используется оператор присваивания. В предыдущих главах я объяснял как он работает, повторим: то, что находится от оператора присваивания (=) справа, считается и помещается в переменную, расположенную слева от оператора присваивания (=). То есть, если в предыдущей итерации (шаге выполнения цикла) i было равно 2, то новое значение будет с помощью данной строчки кода посчитано так:
3 = 2 + 1;Есть и сокращенная форма записи этой строки кода, которая увеличивает значение переменной на единицу:
i++;++ - это оператор инкремента.
Рассмотренный способ использования оператора цикла while, называется цикл с предусловием.
Важно! Запомнить:
1. Циклы в программировании позволяют выполнять отдельный кусочек программы, заключенной в его тело (между {}), столько раз - сколько мы укажем, либо пока не наступит определенное условие его завершения.
2. Обязательно нужно предусмотреть условие выхода из цикла, иначе произойдет ошибка зацикливания программы.
3. В языке программирования С++ существует возможность увеличения значения переменной на единицу с помощью оператора инкремента (++).
Дата добавления: 2015-01-29; просмотров: 26 | Поможем написать вашу работу | Нарушение авторских прав |