|
|||
Циклы в C++. Цикл for. Описание синтаксиса. Пример кода. include <iostream>Циклы в C++. Цикл for Иногда необходимо повторять одно и то же действие несколько раз подряд. Для этого используют циклы. В этом уроке мы научимся программировать циклы на C++, после чего посчитаем сумму всех чисел от 1 до 1000. Если мы знаем точное количество действий (итераций) цикла, то можем использовать цикл for. Синтаксис его выглядит примерно так: for (действие до начала цикла; условие продолжения цикла; действия в конце каждой итерации цикла) { инструкция цикла; инструкция цикла 2; инструкция цикла N; } Итерацией цикла называется один проход этого цикла Существует частный случай этой записи, который мы сегодня и разберем: for (счетчик = значение; счетчик < значение; шаг цикла) { тело цикла; } Счетчик цикла — это переменная, в которой хранится количество проходов данного цикла. Описание синтаксиса 1. Сначала присваивается первоначальное значение счетчику, после чего ставится точка с запятой. 2. Затем задается конечное значение счетчика цикла. После того, как значение счетчика достигнет указанного предела, цикл завершится. Снова ставим точку с запятой. 3. Задаем шаг цикла. Шаг цикла — это значение, на которое будет увеличиваться или уменьшаться счетчик цикла при каждом проходе. Пример кода Напишем программу, которая будет считать сумму всех чисел от 1 до 1000. #include <iostream> using namespace std;
int main() { int i; // счетчик цикла int sum = 0; // сумма чисел от 1 до 1000. setlocale(0, ""); for (i = 1; i <= 1000; i++) // задаем начальное значение 1, конечное 1000 и задаем шаг цикла - 1. { sum = sum + i; } cout << "Сумма чисел от 1 до 1000 = " << sum << endl; return 0; } Если мы скомпилируем этот код и запустим программу, то она покажет нам ответ: 500500. Это и есть сумма всех целых чисел от 1 до 1000. Если считать это вручную, понадобится очень много времени и сил. Цикл выполнил всю рутинную работу за нас. Заметьте, что конечное значение счетчика я задал нестрогим неравенством ( <= — меньше либо равно), поскольку, если бы я поставил знак меньше, то цикл произвел бы 999 итераций, т.е. на одну меньше, чем требуется. Это довольно важный момент, т.к. здесь новички часто допускают ошибки, особенно при работе с массивами. Значение шага цикла я задал равное единице. i++ — это тоже самое, что и i = i + 1. В теле цикла, при каждом проходе программа увеличивает значение переменной sum на i. Еще один очень важный момент — в начале программы я присвоил переменной sum значение нуля. Если бы я этого не сделал, программа вылетела вы в сегфолт. При объявлении переменной без ее инициализации что эта переменная будет хранить «мусор». Естественно к мусору мы ничего прибавить не можем.
|
|||
|