Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Оператор цикла while

Оператор выбора switch

Хотя любые комбинации условий можно выразить с помощью опе­раторов if (if-else), довольно часто запись становится неудобной и запутанной. В тех случаях, когда необходимо выбрать соответствующие действия для ограниченного набора возможных значений целочисленного выражения, можно использовать оператор выбора switch. Пример:

switch (n) {

case 1:

...

break;

case 2:

...

break;

...

default:

...

}

При выполнении оператора switch значения констант, указанных в метках case, сравниваются со значением выражения, указанного в скобках заголовка оператора, в данном случае­ – со значением переменной n. Если совпадение обнаружено, выполняются операторы, следующие за соответствующей меткой, если нет – выполняются операторы, записанные после метки default.

Выполнение оператора switch заканчивается по достижении либо оператора break, либо конца оператора switch. Метка default может отсутствовать, отсутствие default эквивалентно записи

default:

; // пустой оператор, не выполняющий никаких действий

Следует обратить внимание на то, что прекращение выполнения действий для значений, совпадающих со значениями меток case, вызывает именно оператор break, а не достижение новой метки case. Последнее обстоятельство позволяет сокращать запись в тех случаях, когда для нескольких значений нужно выполнить одинаковые действия:

switch (m) {

case 1:

case 3:

case 5:

cout << "!!!";

...

}

Следует отметить, что в качестве значений в метках case могут использоваться только целые числовые константы или символы, а также константные (не содержащие переменных) выражения, причем значения, используемые в метках case в пределах одного оператора switch, не должны повторяться. Кроме того, в одной метке case нельзя указать диапазон значений. Это означает, что если, например, для пяти последовательных целых числовых значений необходимо выполнить одни и те же действия, в операторе switch придется записать пять отдельных меток case, четыре из которых будут “пустыми”.

Операторы цикла реализуют один из важнейших способов вычислений в программировании – повторение (итерацию). Он состоит в том, что определенная последовательность действий (тело цикла) повторяется до достижения некоторого условия или заданное число раз.

Первая форма цикла – цикл с предусловием, в котором проверка условия предшествует выполнению действий. Для записи такого цикла в C++ может использоваться оператор while. Его формат:

while (условие)

тело_цикла

Здесь условие, как и в условном операторе if, – это выражение, которое принимает логическое значение true (“истина”) или false (“ложь”). Телом цикла может являться простой или составной оператор (блок). Выполнение операторов, составляющих тело_цикла, повторяется до тех пор, пока значением условия является true. Значение выражения, составляющего условие, заново вычисляется перед каждой итерацией. Если первое же вычисленное значение этого выражения – false, тело цикла не выполнится ни разу.

2.3.4. Оператор цикла do–while

Второй формой цикла является цикл с постусловием, где проверка условия следует за выполнением действий. Средством записи этого цикла в C++ является оператор do-while. Он имеет формат

do

тело_цикла

while (условие);

Отличие этого оператора от оператора while заключается в том, что здесь условие проверяется после выполнения тела цикла, поэтому тело цикла обязательно выполнится хотя бы раз.

<== предыдущая лекция | следующая лекция ==>
Условный оператор if (if-else) | Операция присваивания
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 328; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.