Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект_лек-3_на рус языке.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
298 Кб
Скачать
☆

Оператор switch

Оператор switch (переключатель) предназначен для разветвления процесса вы­числений на несколько направлений. Формат оператора:

switch ( выражение ){

case константное_выражение_1: [список_рператоров_1] case константное_вырамение_2: [список_операторов_2]

…

case константное_выражение_n: [список_операторов_n] [default: операторы ]

}

Выполнение оператора начинается с вычисления выражения (оно должно быть целочисленным), а затем управление передается первому оператору из списка, помеченного константным выражением, значение которого совпало с вычислен­ным. После этого, если выход из переключателя явно не указан, последовательно выполняются все остальные ветви.

Выход из переключателя обычно выполняется с помощью операторов break или return. Оператор break выполняет выход из самого внутреннего из объемлющих его операторов switch, for, while и do. Оператор return выполняет выход из функ­ции, в теле которой он записан.

Все константные выражения должны иметь разные значения, но быть одного и того же целочисленного типа. Несколько меток могут следовать подряд. Если совпадения не произошло, выполняются операторы, расположенные после слова default (а при его отсутствии управление передается следующему за switch опе­ратору).

Пример (программа реализует простейший калькулятор на 4 действия):

#include <iostream.h> int main(){

int a, b, res;

char op;

cout << “\n Введите 1й операнд : “; cin >> a;

cout << “\n Введите знак операции : “; cin >> op:

cout << “\n Введите 2й операнд : “; cin >> b;

bool f = true;

switch (op){

case ' + ': res = a + b; break;

case '-': res = a – b; break;

case '*': res = a * b; break;

case '/': res = a / b; break:

default : cout <<” \n Неизвестная операция”; f = false;

}

if (f) cout << “ \n Результат : “ << res;

return 0;

}

ПРИМЕЧАНИЕ

В случае синтаксической ошибки в слове default сообщение об ошибке не выдается, по­скольку компилятор воспримет это слово как допустимую метку оператора.

Error: Reference source not found

Операторы 2

Операторы n

Операторы

Операторы 1

Выражение

Пример (программа реализует простейший калькулятор на 4 действия):

#include <iostream.h> int main(){

int a, b, res;

char op;

cout << “\n Введите 1й операнд : “; cin >> a;

cout << “\n Введите знак операции : “; cin >> op:

cout << “\n Введите 2й операнд : “; cin >> b;

bool f = true;

switch (op){

case ' + ': res = a + b; break;

case '-': res = a – b; break;

case '*': res = a * b; break;

case '/': res = a / b; break:

default : cout <<” \n Неизвестная операция”; f = false;

}

if (f) cout << “ \n Результат : “ << res;

return 0;

}

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

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

Один проход цикла называется итерацией. Проверка условия выполняется на каждой итерации либо до тела цикла (тогда говорят о цикле с предусловием), либо после тела цикла (цикл с постусловием). Разница между ними состоит в том, что тело цикла с постусловием всегда выполняется хотя бы один раз, после чего проверяется, надо ли его выполнять еще раз. Проверка необходимости вы­полнения цикла с предусловием делается до тела цикла, поэтому возможно, что он не выполнится ни разу.

Error: Reference source not foundError: Reference source not found

а б

схемы операторов цикла: а — цикл с предусловием; б — цикл с постусловием

Переменные, изменяющиеся в теле цикла и используемые при проверке условия продолжения, называются параметрами цикла. Целочисленные параметры цик­ла, изменяющиеся с постоянным шагом на каждой итерации, называются счет­чиками цикла.

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

Цикл завершается, если условие его продолжения не выполняется. Возможно принудительное завершение как текущей итерации, так и цикла в целом. Для этого служат операторы break, continue, return и goto (см. раздел «Операторы пе­редачи управления»). Передавать управление извне внутрь цикла не реко­мендуется.

Для удобства, а не по необходимости, в C++ есть три разных оператора цикла -

while, do while и for.