Лекция №4. Операторы циклов for. Операторы циклов while



Pdf көрінісі
бет3/3
Дата21.09.2023
өлшемі194.94 Kb.
#478198
түріЛекция
1   2   3
Лекция 4

Оператор break 
C оператором break мы познакомились, когда изучали оператор множественного выбора 
switch. В теле оператора множественного выбора switch оператор break прерывал исполнение 


оператора switch. Когда оператор break выполняется в цикле, то досрочно прерывается исполнение 
оператора цикла, и управление передаётся следующему оператору после цикла. Разработаем 
программу с использованием оператора break. 
Программа печатает таблицу степеней двойки. 
for (int count = 0; count <= 10; count++) // начало цикла for 

if ( count == 6) 
break; // выход из цикла for 
cout << "2^" << count << " = " << pow(2.0,count) << endl; // печать степени двойки 

Таблица степеней двойки напечаталась, включительно, до пятой степени. Если убрать 
оператор условного выбора if, то напечатаются степени двойки, включительно до десятой 
Оператор continue 
Оператор continue используется только в циклах. В операторах for, while, do while, оператор 
continue выполняет пропуск оставшейся части кода тела цикла и переходит к следующей итерации 
цикла. Рассмотрим фрагмент кода с оператором continue. 
// пример использования оператора continue: 
int count = 0; 
do // начало цикла do while 

continue; 
count++; 

while ( count < 10 ) 
Посмотрите внимательно на выше приведенный пример, и Вы увидите, что do while 
бесконечный, так как каждая итерация цикла приводит к выполнению оператора continue, который 
пропускает операцию инкремента переменной-счётчика count и переходит на следующую 
итерацию цикла. Таким образом значение в переменной count не меняется, а значит и условие 
всегда будет истинным. Разработаем программу с оператором continue. Программа должна 
работать циклически. Внутри цикла необходимо организовать ввод чисел.Если введено число от 0 
до 10 включительно, то необходимо напечатать квадрат этого числа, иначе используя оператор 
continue пропустить оператор возведения в квадрат введенного числа. При введении 
отрицательного числа осуществить выход из цикла. 
// continue.cpp: определяет точку входа для консольного приложения. 
#include "stdafx.h" 
#include  
using namespace std; 
int main(int argc, char* argv[]) 

int in_number; // переменная для хранения введённого числа 
do 

cout << "Enter number: "; 
cin >> in_number; // считываем введённое число в переменную in_number 
if ( in_number > 10 || in_number < 0 ) // если введённое число не входит в заданный 
интервал 
continue; // переход на следующую итерацию цикла do while 
cout << "square = " << in_number * in_number << endl; // возводим в квадрат введённое 
число 
} while ( in_number >= 0 ); // пока введённое число больше либо равно нулю цикл будет 
работать 
system("pause"); 
return 0; 



Цикличность в программе организуем циклом с постусловием — do while. В цикле сначала 
считываем введённое число в переменную in_number, после чего, выполняется проверка условия в 
операторе if. Условие оператора условного выбора if будет истинным в том случае, если введённое 
число будет строго меньше нуля или строго больше 10. Заданный интервал — [0;10], число взятое 
из этого интервала возводится в квадрат. Истинность условия оператора if приводит к 
выполнению оператора continue в строке 15. А оператор continue пропускает операторы в строке 
16 и переходит к проверке условия продолжения цикла do while. Условие в цикле будет истинно, 
пока вводимые числа будут строго больше 0. 
Многие программисты считают, что операторы break и continue нарушают структурность 
программного кода и предпочитают обходится без них. Так, что если есть возможность обойтись 
без операторов break и continue, лучше так и сделать. Тем более, что операторы break и continue 
всегда можно заменить структурированными операторами, мы это доказали, показав 
эквивалентные программы. 


Достарыңызбен бөлісу:
1   2   3




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет