Хелпикс

Главная

Контакты

Случайная статья





do{<тело цикла>}while (<условие>);



do{< тело цикла> }while (< условие> );

 

 

Блок-схема:

Например, программа:

 

a=0;

do { a = a–1; } while(a> 0);

 

даст результат: а=-1, т. к. до проверки условия выполнится a=a–1, и уже после этого произойдет выход из цикла (значение а станет - 1, поэтому условие возобновления цикла a> 0 не выполнится). Если же этот цикл заменить циклом с предусловием

a = 0;

while (a> 0) { a = a – 1; };

то результат будет а=0, цикл не проработает ни разу, так как условие a> 0 не выполняется сразу.

Цикл с параметром. Эти циклы используются тогда, когда число повторений известно заранее – количество шагов задано, например, 20, 100, N, или может быть вычислено как результат какого-либо выражения до исполнения цикла. Параметром в цикле является счетчик шагов.

Счетчик (это значение специально выделенной переменной) может изменяться на единицу с каждым шагом или получать некоторое заданное приращение, например, 0. 15. Цикл тогда исполняется до тех пор, пока значение счетчика не достигнет указанного в заголовке цикла значения. Циклы с параметром называют часто циклами типа for, т. к. в большинстве языков программирования их заголовок начинается со слова for.

Для C++ синтаксис (самый простой вариант) этого цикла:

for(< счетчик> =< начальное значение>; < условие>; < приращение счетчика> )

{

< тело цикла>

};

 

Здесь< счетчик> – это имя переменной, взятой для счета шагов; < начальное значение> – выражение, в частности, целое число или переменная, значение которого берется в качестве начала отсчета повторений тела цикла, < приращение счетчика> – выражение, изменяющее значение счетчика на каждом шаге. Приращение может быть и отрицательной величиной, тогда оно вычитается из счетчика и начальное значение в этом случае должно быть больше конечного. Наконец, < условие> - это логическое (как в операторе if) выражение (обычно сравнение счетчика с каким либо числом – конечным значением), которое служит критерием окончания повторений тела цикла. Если условие станет ложным, тело не выполняется и управление передается следующему за циклом оператору.

Оператор цикла с параметром работает следующим образом. Счетчику присваивается начальное значение. Тело цикла исполняется столько раз, сколько раз значение счетчика меньше или равно конечному значению. В С++ тело исполняется, пока условие истинно. После каждого шага цикла к счетчику добавляется (или вычитается) приращение. Условие после этого проверяется и, если оно истинно (конечное значение не превышено), тело цикла вновь исполняется. После присваивания счетчику начального значения условие также проверяется.

Обозначим начальное значение счетчика i как i0, конечное значение - N, приращение - h. Тогда блок-схема этого оператора имеет вид:

Как видно, цикл с параметром является частным случаем цикла с предусловием типа While.

 

Пример использования цикла for в программе C++:

k = 2;

m = 4;

for (i=k+1; i< =m*2+1; i=i+0. 5)

{k=k+i; };

 

Этот цикл выполняется, начиная со значения счетчика i, равного трем, и продолжается, пока счетчик не превзойдет величину 9 (4*2+1=9); на каждом шаге значение счетчика увеличивается на 0. 5, поэтому число шагов будет не 7, а 13. В результате значение k = 80. Несмотря на то, что значение k на каждом шаге меняется, начальное значение k+1=3 не пересчитывается и к нему исполнение цикла не возвращается.

Самая простая и часто употребляемая структура заголовка цикла for в С++ такова:



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.