Циклы. Оператор for

Циклы. Оператор for


Часть 1. Простые Циклы.

Представим, что нас нужно вывести какое-нибудь число не один, а десять раз. Это можно сделать при помощи циклического оператора for.

for(int i = 0; i < 10; i++) {
  cout << a;
}


Например если a = 5, то в выходном файле мы увидим

5555555555


Рассмотрим оператор for поподробней.


for(, , ) {
}


В круглых скобках указывается условие, при котором цикл будет выполняться, а в фигурных скобках сами действия.

В круглые скобках находятся три параметра.

Первый - это начальное значения некоторой переменной, наша отправная точка. В примере мы прямо в цикле объявляем переменную i целочисленного типа int. Если бы переменная была объявлена раньше, то параметр начало выглядел бы так: i = 0.

Второй параметр это - условие при котором будет выполняться цикл. В нашем примере это i < 10 - т.е. пока i будет меньше 10 цикл будет работать.

И последний параметр это изменение значения переменной. Здесь переменная i будет увеличиваться на 1 за одну итерацию. i++ означает, что i увеличивается на 1. С тем же успехом можно написать i = i + 1;

Далее я приведу несколько примеров с описанием того, что будет происходить в цикле.

1) Программа, увеличивающая некоторое значение n на 5 три раза подряд. После выполнения цикла получим
n = 15.


int n = 0;
for(int i = 0; i < 3; i++) {
    n = n + 5;
}


2) Программа, 5 раз выводящая слово Hello. Каждый раз слово появляется в новой строке. Это происходит из-за команды endl, которая и переводит строку. Сама команда endl, как нетрудно догадаться, расшифровывается как end line. Если её убрать то в выходном файле получим HelloHelloHelloHelloHello


for(int j = 0; j < 5; j++) {
    cout << "Hello" << endl;
}


Часть 2. Вложенные циклы.

Теперь поговорим о несколько более сложной конструкции - о вложенных циклах. Что будет если один цикл поместить в другой? Например вот так:


int n = 0;
for(int i = 0; i < 3; i++) {
    for(int j = 0; j < 5; j++) {
       n = n + 2;
    }
}


Вложенные циклы можно сравнить, например, с календарем. Год - это цикл из 12 месяцев. А в каждом месяце есть вложенный цикл в виде дней. То есть что бы пройти один круг на внешнем цикле нужно сначала полностью отмотать внутренний цикл. Рассмотрим программу, написанную выше.

Здесь внешний цикл - это тот, в котором принимает участие переменная i. Внутренний цикл соответственно с переменной j. Сначала, при i = 0, j пробежит по всем своим значениям от 0 до 4. Потом i перейдет на 1, а j вновь начнет нарезать круги с 0 до 4. И так, пока не закончится внешний цикл. То есть всего будет 3 * 5 = 15 итераций. А n в конце будет равно 30.

Примеры с вложенными циклами:

1) Программа, выводящая строку "01234" три раза подряд, в три разные строки. Внутренний цикл будет увеличивать значение j и выводить эту переменную, а после завершения внутреннего цикла следует перевод строки, который повторится 3 раза.

 for(int i = 0; i < 3; i++) {
    for(int j = 0; j < 5; j++) {
        cout << j;
    }
    cout << endl;
}



2) Необязательно должно быть так, чтобы был только один вложенный цикл. Можно во вложенный цикл вложить еще один, тогда у нас появится как бы еще один внутренний круг. В этом примере у нас три цикла, а значение n принимает значения от 0 до 999


int n = 0;
for(int i = 0; i < 10; i++){
    for(int j = 0; j < 10; j++) {
        for(int k = 0; k < 10; k++) {
            n++;
        }
    }
}
Ключевые теги: циклы, оператор for
Понравилась новость? Добавь в закладки!
Хочешь получать свежие новости? Подпишись на обновления с сайта!
Рекомендуем посмотреть:

Добавление комментария

Ваше Имя:
Ваш E-Mail:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Вставка исходного кода Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера

Введите два слова, показанных на изображении: