Операции и операторы для АСУб и ЭВМб. Тема 2-2

Содержание

Слайд 2

Структурный аспект программы С++

Структурный аспект программы С++

Слайд 3

a-z, A-Z, 0-9, “, {,},|,/,%,…

- идентификаторы
- ключевые слова
- константы
- знаки операций
-

a-z, A-Z, 0-9, “, {,},|,/,%,… - идентификаторы - ключевые слова - константы
разделители

- унарные, бинарные, тернарная операции
- арифметические, логические, сравнения, битовые, … операции

«Языковой» аспект программы С++

96 символов - из них 91 имеет графическое изображение.

- операторы следования
- операторы ветвления
- операторы цикла
- операторы передачи управления

Слайд 4

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

Русскому термину «операция» соответствует английский — «operator», из-за чего возникает

Операции и операторы Русскому термину «операция» соответствует английский — «operator», из-за чего
путаница: «operator» переводят как «оператор».
Оператор — это наименьшая исполняемая единица программы. Различают операторы выражения, действие которых состоит в вычислении заданных выражений; операторы объявления; составные операторы; пустые операторы; операторы метки; цикла и т. д.
Для обозначения конца оператора в C/C++ используется символ «;» (в конце составного оператора — набора операторов, помещенных между открывающей ({) и закрывающей (}) фигурными скобками — точка с запятой не ставится).
Таким образом, операция может быть составной частью оператора, но не наоборот, а русский термин «оператор» обозначает то же, что и «инструкция» (statement).

Слайд 5

Операции и операторы: примеры
c = a + b; —это оператор, а sin(c)+d — операция, но

Операции и операторы: примеры c = a + b; —это оператор, а
не оператор.
Путаница усугубляется ещё и тем, что в C/C++ присваивание и инкремент/декремент являются как операторами, так и операциями. Например, a = sin(b) может быть операцией в составе условного оператора
if ((a = sin(b)) == 0) {…}
а может быть самостоятельным оператором: 
a = sin(b);

Слайд 6

Операции: основные 4 типа


Арифметические

Операции сравнения

Логические

Битовые

Операции: основные 4 типа Арифметические Операции сравнения Логические Битовые

Слайд 7

Арифметические операции

Арифметические операции

Слайд 8

Инкремент и декремент

Инкремент и декремент

Слайд 9

Инкремент и декремент

С операциями инкремента/декремента версии префикс всё просто.
Значение переменной сначала

Инкремент и декремент С операциями инкремента/декремента версии префикс всё просто. Значение переменной
увеличивается/уменьшается, а затем уже вычисляется.
Например

Слайд 10

Инкремент и декремент

А вот с операторами инкремента/декремента версии постфикс несколько сложнее. Компилятор

Инкремент и декремент А вот с операторами инкремента/декремента версии постфикс несколько сложнее.
создает временную копию переменной х, увеличивает или уменьшает оригинальный х (не копию), а затем возвращает копию. Только после возврата копия х удаляется. Например:

Слайд 11

Унарные операции

Операции увеличения и уменьшения увеличивают или уменьшают значение операнда на единицу.

Унарные операции Операции увеличения и уменьшения увеличивают или уменьшают значение операнда на

int t=1, s=2, z, f;
z=(t++)*5;
Вначале происходит умножение t*5, а затем увеличение t.
В результате получится z=5, t=2.

Слайд 12

Бинарные операции

Операция деления (/) выполняет деление первого операнда на второй. Если

Бинарные операции Операция деления (/) выполняет деление первого операнда на второй. Если
две целые величины не делятся нацело, то результат округляется в сторону нуля.
При попытке деления на ноль выдается сообщение во время выполнения.
Операция остаток от деления (%) дает остаток от деления первого операнда на второй. Знак результата совпадает со знаком делимого. Если второй операнд равен нулю, то выдается сообщение.
Бинарная операция + для строк означает сцепление двух строк и присвоение результата третьей строке.

Слайд 13

Сравнительные и логические

Используются для сравнения значения в двух переменных, или между переменной

Сравнительные и логические Используются для сравнения значения в двух переменных, или между переменной и константой
и константой

Слайд 14

Сравнительные и логические

Выражения, в которых используются логические операции возвращают false в случае

Сравнительные и логические Выражения, в которых используются логические операции возвращают false в
ложного высказывания, и true в случае истинного

Пример: if (a>10) && (a<20)

Слайд 15

Логические (Битовые)

Обрабатывают данные после представления чисел в их бинарную форму (Битовое представление)

Логические (Битовые) Обрабатывают данные после представления чисел в их бинарную форму (Битовое представление)

Слайд 16

Логические (Битовые)

Пример:
10 & 15? 1010 & 1111?1010 ? 10 10 | 15? 1010

Логические (Битовые) Пример: 10 & 15? 1010 & 1111?1010 ? 10 10
| 1111?1111 ? 15 10 ^ 15? 1010 ^ 1111?0101 ? 5 ~ 10 ? ~1010 ?1011 ? -11 ( из-за специфика представления отрицательных целых чисел)

Слайд 17

ОПЕРАЦИИ ПРИСВАИВАНИЯ

формат операция простого присваивания (=):
опреанд_1 = операнд_2
пример: a=b=c=100, это выражение

ОПЕРАЦИИ ПРИСВАИВАНИЯ формат операция простого присваивания (=): опреанд_1 = операнд_2 пример: a=b=c=100,
выполняется справа налево, результатом выполнения с=100, является число 100, которое затем присвоиться переменной b, потом а.
Составные операции присваивания:
(*=) – умножение с присв-ем,
( /=) - деление с присв-ем
(%= )- остаток от деления с присв-ем,
(+=) –сложение с присв.,
(-=) - вычит.с присв.
пример: к операнду _1 прибавляется операнд_2 и результат записывается в операнд_2
т.е. с = с + а, тогда компактная запись с += а

Слайд 18

Составные операции присваивания

int X=5;
X*=5;
X-=10;
string S="Hello, ";
S+="World";

Составные операции присваивания int X=5; X*=5; X-=10; string S="Hello, "; S+="World";

Слайд 19

Приоритет устанавливает иерархию одной группы операций над другой

Это влияет на

Приоритет устанавливает иерархию одной группы операций над другой Это влияет на порядок,
порядок, в котором вычисляются операции

Приоритет операций может быть изменен с помощью заключения нужного выражения в скобки

Приоритет арифметических
операций

Слайд 20

Всегда вычисляется слева направо

Приоритет арифметических
операций

Всегда вычисляется слева направо Приоритет арифметических операций

Слайд 21

Приоритет для логических

Приоритет для логических

Слайд 22

Примите во внимание следующее выражение:
False || True && ! False && True
Это

Примите во внимание следующее выражение: False || True && ! False &&
выражение вычисляется, как показано ниже:
False || True && [! False] && True
! имеет высший приоритет.
False || [True && True ]&& True
&& является оператором с высоким приоритетом и операторы с одинаковым приоритетом вычисляются СЛЕВА НА ПРАВО
False || [True && True]
[False || True]
True

Слайд 23

Приоритет среди разных операций

Приоритет среди разных операций

Слайд 24

Рассмотрим следующий пример:
2*3+4/2 > 3 && 3<5 || 10<9
Ход вычислений показан

Рассмотрим следующий пример: 2*3+4/2 > 3 && 3 Ход вычислений показан ниже:
ниже:
[2*3+4/2] > 3 && 3<5 || 10<9
Первыми вычисляются арифметические операции:
[[2*3]+[4/2]] > 3 && 3<5 || 10<9
[6+2] >3 && 3<5 || 10<9
[8 >3] && [3<5] || [10<9]

Приоритет среди разных операций: пример

Слайд 25

[8 >3] && [3<5] || [10<9]
Следующими вычисляются операции сравнения, а поскольку они

[8 >3] && [3 Следующими вычисляются операции сравнения, а поскольку они все
все имеют одинаковый приоритет, они вычисляются СЛЕВА НА ПРАВО
True && True || False Последними вычисляются вычисляются логические операции.
[True && True] || False True || False
True

Приоритет среди разных операций: пример

Слайд 26

Смена приоритета

Скобки ( ) имеют высший приоритет
Приоритет операций может быть изменен используя

Смена приоритета Скобки ( ) имеют высший приоритет Приоритет операций может быть
скобки ( )
Операции низкого приоритета заключенные в скобки получают высший приоритет и исполняются первыми
В случае вложенных скобок ( ( ( ) ) ), внутренние скобки будут исполняться первыми
В случае вложенных скобок вычисления выполняются СЛЕВА НАПРАВО

Слайд 27

Рассмотрим следующий пример:
5+9*3^2-4 > 10 && (2+2^4-8/4 > 6 || (2<6

Рассмотрим следующий пример: 5+9*3^2-4 > 10 && (2+2^4-8/4 > 6 || (2
&& 10>11))

Решение:
1. 5+9*3^2-4 > 10 && (2+2^4-8/4 > 6 || (True && False))
Внутренние скобки обладают приоритетом над другими операциями, а действия вне скобок выполняются по обычным правилам
2. 5+9*3^2-4 > 10 && (2+2^4-8/4 > 6 || False)

Смена приоритета: пример

Слайд 28

3. 5+9*3^2-4 >10 && (2+16-8/4 > 6 || False) Затем выполняются действия

3. 5+9*3^2-4 >10 && (2+16-8/4 > 6 || False) Затем выполняются действия
во внешних скобках

4. 5+9*3^2-4 > 10 && (2+16-2 > 6 || False) 5. 5+9*3^2-4 > 10 && (18-2 > 6 || False) 6. 5+9*3^2-4 > 10 && (16 > 6 || False)
7. 5+9*3^2-4 > 10 && (True O||R False)
8. 5+9*3^2-4 > 10 && True

Смена приоритета: пример

Слайд 29

9. 5+9*9-4>10 && True
Выражение слева выполняется по обычным правилам
10. 5+81-4>10 && True
11.

9. 5+9*9-4>10 && True Выражение слева выполняется по обычным правилам 10. 5+81-4>10
86-4>10 && True
12. 82>10 && True
13. True && True
14. True

Смена приоритета: пример

Слайд 30

ОПЕРАЦИИ ПРИСВАИВАНИЯ

формат операция простого присваивания (=):
опреанд_1 = операнд_2
пример: a=b=c=100, это выражение

ОПЕРАЦИИ ПРИСВАИВАНИЯ формат операция простого присваивания (=): опреанд_1 = операнд_2 пример: a=b=c=100,
выполняется справа налево, результатом выполнения с=100, является число 100, которое затем присвоиться переменной b, потом а.
Сложные операции присваивания:
(*=) – умножение с присв-ем,
( /=) - деление с присв-ем
(%= )- остаток от деления с присв-ем,
(+=) –сложение с присв.,
(-=) - вычит.с присв.
пример: к операнду _1 прибавляется операнд_2 и результат записывается в операнд_2
т.е. с = с + а, тогда компактная запись с += а

Слайд 31

Операция запятая

<выражение>, <выражение>, <выражение>, . . .
Пара выражений, разделенных запятой,

Операция запятая , , , . . . Пара выражений, разделенных запятой,
вычисляется слева направо
Результатом всего выражения будет результат последней части
Чаще всего операция запятая используется в заголовках циклов, в местах, где синтаксис разрешает записать только одно выражение, а надо записать несколько. Тогда выражения объединяются в одно при помощи операции запятая. 
Запятая также используется и как РАЗДЕЛИТЕЛЬ списка объектов

Слайд 32

Операция размер (унарная)

sizeof <выражение> 
или 
sizeof (<тип>)
sizeof (4 + 1) ; // значение

Операция размер (унарная) sizeof или sizeof ( ) sizeof (4 + 1)
4
sizeof 4 + 1; // значение 5
sizeof (int); // значение 4

Слайд 33

Тернарная операция

<условие> ? <выражение_если_истина> : <выражение если ложно>
Пример тернарной операции:
string result

Тернарная операция ? : Пример тернарной операции: string result = (mylnteger
= (mylnteger < 10) ? "Меньше 10" : "Больше или равно 10";

Слайд 34

ТЕРНАРНАЯ ОПЕРАЦИЯ

Условная операция (? : )
Формат условной операции: операнд_1 ? операнд_2 ?

ТЕРНАРНАЯ ОПЕРАЦИЯ Условная операция (? : ) Формат условной операции: операнд_1 ?
: операнд_3
Операнд_1 это логическое или арифметич-ое выражение;
Оценивается с точки зрения эквивалентности константам true и false;
Если результат вычисления операнда_1 равен true,то результат условной операции будет значение операнда_2, иначе операнда_3;
Тип может различаться;
Условная операция является сокращ. формой услов-го оператора if;
Пример: Результат:
#include для х=11 и y=9
int main() 11
using nanespace std; 11
{ int x, y,max;
cin >>x>>y;
(x>y)? cout < max=(x>y)? x:y; //2 чения для двух целых чисел;
cout< return 0;}

Слайд 35

Общий список в справочниках

https://docs.microsoft.com/ru-ru/cpp/cpp/cpp-built-in-operators-precedence-and-associativity?view=msvc-160

Общий список в справочниках https://docs.microsoft.com/ru-ru/cpp/cpp/cpp-built-in-operators-precedence-and-associativity?view=msvc-160

Слайд 36

Программа на языке С++ состоит из последовательности операторов, каждый из них определяет

Программа на языке С++ состоит из последовательности операторов, каждый из них определяет
значение некоторого действия;
Все операторы разделены на 4 группы:
- операторы следования;
- операторы ветвления;
- операторы цикла;
- операторы передачи управления.

Структура программы: операторы

Слайд 37

ОПЕРАТОРЫ СЛЕДОВАНИЯ

оператор выражение и составной оператор.
Выражение, завершающееся точкой с запятой, рассматривается как

ОПЕРАТОРЫ СЛЕДОВАНИЯ оператор выражение и составной оператор. Выражение, завершающееся точкой с запятой,
оператор (вычислении значения выражения или выполнении законченного действия);
++i; //оператор инкремента
х+=у; //оператор сложение с присваиванием
f(a, b) //вызов функции
x= max (a, b) + a*b; //вычисление сложного выражения
Частным случаем оператора выражения является пустой оператор ;
Составной оператор или блок представляет собой последовательность операторов, заключенных в фигурные скобки.
Блок обладает собственной областью видимости: объявленные внутри блока имена доступны только внутри блока;
Составные операторы применяются в случае, когда правила языка предусматривают наличие только одного оператора, а логика программы требует нескольких операторов.

Слайд 38

ОПЕРАТОРЫ ВЕТВЛЕНИЯ

Условный оператор if
if используется для разветвления процесса обработки данных на

ОПЕРАТОРЫ ВЕТВЛЕНИЯ Условный оператор if if используется для разветвления процесса обработки данных
два направления.
if имеет формы: сокращенную или полную.
Формат сокращенного оператора if: if (В) S;
В –УСЛОВИЕ: логич. или арифметич. выражение, истинность которого проверяет­ся; S - один оператор: простой или составной.
При выполнении сокращенной формы оператора if сначала вычисляется выражение В, затем проводится анализ его результата: если В истинно, то выполняется оператор S; если В ложно, то оператор S пропускается.
C помощью сокращенной формы оператора If можно либо выполнить оператор S, либо пропустить его.
Формат полного оператора if: if (B) S1 ; else S2;
SI, S2- один оператор: простой или составной.
При выполнении полной формы оператора if сначала вычисляется выражение В, затем анализируется его результат: если В истинно, то выполняется оператор S1 а оператор S2 пропускается; если В ложно, то выполняется оператор S2, a S1 - пропускается.
C помощью полной формы оператора if можно выбрать одно из двух альтернативных действий процесса обработки данных.

Слайд 39

Допускается использование вложенных операторов if.
Оператор if может быть включен в конструкцию

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

Оператор if

Слайд 40

Пример:
{
int t=2, b=7, r=3;
if (t>b)
{
if (b

Пример: { int t=2, b=7, r=3; if (t>b) { if (b }
< r) r=b;
}
else
r=t;
}

Оператор if

В результате выполнения этой программы r станет равным 2.

Слайд 41

Если же в программе опустить фигурные скобки, стоящие после оператора if, то

Если же в программе опустить фигурные скобки, стоящие после оператора if, то
программа будет иметь следующий вид:
{ int t=2,b=7,r=3;
if ( t>b)
if ( b < r ) t=b;
else r=t;}
В этом случае r получит значение равное 3, так как ключевое слово else относится ко второму оператору if, который не выполняется, поскольку не выполняется условие, проверяемое в первом операторе if.

Оператор if

Слайд 42

Вычисления по короткой схеме (Short-circuit evaluation)

это стратегия в некоторых языках программирования, при которой

Вычисления по короткой схеме (Short-circuit evaluation) это стратегия в некоторых языках программирования,
второй логический оператор выполняется или оценивается только в том случае, если первого логического оператора недостаточно для определения значения выражения.
Таким образом, после того, как результат выражения становится очевидным, его вычисление прекращается
Операции в с++ &&, ||, ?
if (n!=0) && (k/n>17)
Чтобы вычислить всё условие можно на свой страх и риск использовать побитовые операции

Слайд 43

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

Оператор выбора switch предназначен для разветвления процесса вычислений на несколько направлений. Формат
оператора:
switch (<выражение>)
{case <константное_выражение_1>: [<оператор 1>]
case <константное_выражение_2>: [<оператор 2>]
…………………………..
case <константное_выражение_n>: [<оператор n>]
[default: <оператор> ]}
Выражение, стоящее за ключевым словом switch, должно иметь арифметич. тип или тип указатель.
Все константные выражения должны иметь разные значения, но совпадать с типом выражения, стоящим после switch.
Ключевое слово case и расположенное после него константное выражение называют также меткой case.

Слайд 44

Разветвляющийся процесс

ВЫБОР ПО переменная
Значение_1: Действия
Значение_2: Действия
Значение_n: Действия
*: Действия
ВЫБОР ВСЕ

*

Разветвляющийся процесс ВЫБОР ПО переменная Значение_1: Действия Значение_2: Действия Значение_n: Действия *:
означает, что переменная не равна ни одному значению

Чтобы избежать вложенных условия, используется конструкция ВЫБОР. Она позволяет иметь несколько ветвей для проверки равенства переменной одному из многих значений.

Слайд 46

case low ... high:

case 'A' ... 'Z':

case 1 ... 5:

!!!пробелы

case 1...5:

case low ... high: case 'A' ... 'Z': case 1 ... 5: !!!пробелы case 1...5:

Слайд 47

ОПЕРАТОРЫ ЦИКЛА

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

ОПЕРАТОРЫ ЦИКЛА Операторы цикла используются для организации многократно повторяющихся вычислений. - цикл
с предусловием while,
- цикл с постусловием do while
- цикл с параметром for.
Цикл с предусловием while:
Оператор цикла while организует выполнение одного оператора (простого или составного) неизвестное заранее число раз.
Формат цикла while: while (В) S;
В - выражение, истинность которого проверяется (условие завершения цикла);
S - тело цикла: один оператор (простой или составной).

Слайд 48

ОПЕРАТОРЫ ЦИКЛА

Перед каждым выполнением тела цикла анализируется значение выражения В:
- если

ОПЕРАТОРЫ ЦИКЛА Перед каждым выполнением тела цикла анализируется значение выражения В: -
оно истинно, то выполняется тело цикла, и управление передается на повторную проверку условия В;
- если значение В ложно - цикл завершается и управление передается на оператор, следующий за оператором S.
- если результат выражения В окажется ложным при первой проверке, то тело цикла не выполнится ни разу
если условие В во время работы цикла не будет изменяться, то возможна ситуация зацикливания, то есть невозможность выхода из цикла
Внутри тела должны находиться операторы, приводящие к изменению значения выражения В так, чтобы цикл мог завершиться.

Слайд 49

ЦИКЛ С ПОСТУСЛОВИЕМ DO WHILE

В отличие от цикла while условие завершения цикла

ЦИКЛ С ПОСТУСЛОВИЕМ DO WHILE В отличие от цикла while условие завершения
проверяется после выполнения тела цикла.
Формат цикла do while: do S while (В);
В - выражение, истинность которого проверяется (условие завершения цикла);
S - тело цикла: один оператор (простой или блок).
Сначала выполняется оператор S, а затем анализир-ся значение выражения В:
- если оно истинно, то управление передается оператору S,
- если ложно - цикл заверш. и управление передается на оператор, следующий за условием В.

Слайд 50

Пример(do)

Программа вывода на экран целых чисел из интервала от 1 до п.
#include

Пример(do) Программа вывода на экран целых чисел из интервала от 1 до

using namespace std:
int main()
{ intn, i=1;
cout <<"n="; cin >>n;
while (i<=n) //пока i меньше или равно n Результаты работы программы:
{ cout«i«"\t"; //выводим на экран значение i n ответ
++i;} //увеличиваем i на единицу 10 12345678910
return 0;}

Слайд 51

Пример(do while)

Программа вывода на экран целых чисел из интервала от 1 до

Пример(do while) Программа вывода на экран целых чисел из интервала от 1
п.
#include
using namespace std;
int main()
{int n, i=1;
cout <<"n="; cin >>n;
do //выводим на экран i, а замет увеличиваем Результаты работы программы:
сout<whiie (i<=n); //до тех пор пока i меньше или равна n 10 1 2 3 4 5 6 7 8 9 10
return 0;}

Слайд 52

ЦИКЛ С ПАРАМЕТРОМ FOR

Цикл с параметром имеет следующую структуру:
for (<инициализация>; <выражение>; <модификации>)

ЦИКЛ С ПАРАМЕТРОМ FOR Цикл с параметром имеет следующую структуру: for (
<оператор>;
Инициализация используется для объявления и присвоения начальных значений величинам, используемым в цикле.
В этой части можно записать несколько операторов, разделенных запятой. Областью действия переменных, объявленных в части инициализации цикла, является цикл и вложенные блоки.
Выражение определяет условие выполнения цикла:
- если его результат истинен, цикл выполняется.
Истинность выражения проверяется перед каждым выполнением тела цикла, таким образом, цикл с параметром реализован как цикл с предусловием.
Модификации выполняются после каждой итерации цикла и служат обычно для изменения параметров цикла.
В части модификаций можно записать несколько операторов через запятую.
Оператор (простой или составной) представляет собой тело цикла.

Слайд 53


Любая из частей оператора for (инициализация, выражение, модификация, оператор) может отсутствовать, но

Любая из частей оператора for (инициализация, выражение, модификация, оператор) может отсутствовать, но
точку с запятой, определяющую позицию пропускаемой части, надо оставить.
#include
using namespace std;
int main()
{ intn; cout <<"n="; cin >>n; Результаты работы программы:
for (int i=1; j<=n; i++) //для i om 1 дo n с шагом 1 n ответ
cout<return 0;}
Замечание. Используя операцию постфиксного инкремента при выводе данных на экран, цикл for можно преобразовать следующим образом:
for (int i=l ;i<=n;) cout<В этом случае в заголовке цикла for отсутствует блок модификации.

Пример (for)

Слайд 54

ВЛОЖЕННЫЕ ЦИКЛЫ

Циклы могут быть простые или вложенные (кратные, циклы в цикле).
Вложенными

ВЛОЖЕННЫЕ ЦИКЛЫ Циклы могут быть простые или вложенные (кратные, циклы в цикле).
могут быть циклы любых типов: while, do while, for.
Структура вложенных циклов на примере типа for приведена ниже:
for(i=1;i {…
for (j=10; j>jk;j- -)
{...for(k=1;k ...}
...}
Каждый внутренний цикл должен быть полностью вложен во все внешние циклы.
--- «Пересечения» циклов не допускается.

Слайд 55

ОПЕРАТОРЫ БЕЗУСЛОВНОГО ПЕРЕХОДА

В C++ есть четыре оператора, изменяющие естественный порядок выполнения операторов:

ОПЕРАТОРЫ БЕЗУСЛОВНОГО ПЕРЕХОДА В C++ есть четыре оператора, изменяющие естественный порядок выполнения

оператор безусловного перехода goto,
оператор выхода break,
оператор перехода к следующей итерации цикла continue,
оператор возврата из функции return.

Слайд 56

Оператор break используется внутри операторов ветвления и цикла для обеспечения перехода в

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

Break и Сontinue

Слайд 57

Выполнение оператора начинается с вычисления выражения, расположенного за ключевым словом switch.
Полученный

Выполнение оператора начинается с вычисления выражения, расположенного за ключевым словом switch. Полученный
результат сравнивается с меткой case.
Если результат выражения соответствует метке case, то выполняется оператор, стоящий после этой метки.
Затем последовательно выполняются ВСЕ ОПЕРАТОРЫ ДО КОНЦА ОПЕРАТОРА switch , если только их выполнение не будет прервано с помощью оператора передачи управления break
При использование оператора break происходит выход из switch и управление переходит к первому после него оператору.
Если совпадения выражения ни с одной меткой case не произошло, то выполняется оператор, стоящий после слова default, а при его отсутствии управление передается следующему за switch оператору.

Пример. Известен порядковый номер дня недели. Вывести на экран его название.
#include
using namespace std;
int main()
{int x; cin >>x;
switch (x)
{ case 1: cout <<"понедельник"; break;
case 2: cout <<"вторник"; break;
case 3: cout <<"среда"; break;
case 4: cout <<"четверг"; break;
case 5: cout <<"пятница"; break;
case 6: cout <<"суббота"; break;
case7: cout <<"воскресенье";break;
default: cout <<"вы ошиблись";}
return 0;}