Лабораторный практикум «Информатика - 2»
Лабораторная работа № 2 Вариант 4 27.02.07
Ветвление (бинарный выбор, альтернатива) представляет собой структурную конструкцию, изображенную на рис. 1. При входе в нее вычисляется значение логического выражения ЛВ. Если оно имеет значение «истина», то выполняется действие A, а если «ложь» - то действие B. Конструкция заканчивается точкой соединения C. Частным случаем этой конструкции является обход, когда одна из ветвей – пустая (рис.2). Сравнительно реже используется множественный выбор с разветвлением на несколько ветвей (рис.3).
Рис.1. Структура ветвления Рис. 2. Структура обхода
Рис. 3. Структура множественного выбора
Во всех языках программирования есть операторы, поддерживающие эти структурные конструкции. В языке C/C++ - это операторы if-else, if, switch. В лабораторной работе осваивается синтаксис их правильной записи и разрабатываются программы с их использованием.
Решение о выборе той или иной ветви выполнения программы происходит по значению логического выражения, используемого в операторе if или if-else. Логическое выражение – это синтаксически правильная конструкция из логических величин (констант, переменных, результатов операций отношений), логических операций и скобок. Логическая величина может принимать одно из двух значений: истина (логическая единица) или ложь (логический ноль), образующих полное множество. Математический аппарат работы с логическими величинами представляет собой алгебру логики или булеву алгебру. В языке С/С++ отсутствует логический тип данных, однако константа или переменная целого типа, равная нулю, в соответствующем контексте трактуется как логический ноль (ложь), а не равная нулю (при любом значении) – как логическая единица (истина). При выводе на дисплей логические величины представляются как 0 или 1.
Логический тип имеет результат операций отношения - выражения отношения. Выражение отношения (ВО) строится из двух выражений числового или символьного типа, связанных знаком операции отношения:
( <Выражение 1> <Знак операции отношения> <Выражение 2> ).
(Угловые скобки здесь и далее используются для ограничения элемента записи на псевдоязыке и при записи конструкции на языке С/С++ не ставятся! А вот круглые скобки, окаймляющие ВО, обязательны).
Знаки операции отношения могут быть следующие:
- > - больше;
- < - меньше;
- >= - больше или равно;
- <= - меньше или равно;
- == - равно;
- != - не равно.
Примеры выражений отношения:
- используется числовая переменная и числовая константа;
- используются две переменные числового или символьного типа;
- используется переменная и константа символьного типа;
- используется выражение числового типа и числовая константа;
- используются два выражения числового типа;
Все переменные, входящие в ВО, должны иметь конкретные значения, а выражения слева и справа от знака должны быть синтаксически правильны. Тогда ВО имеет определенное значение логического нуля (ложь) или логической единицы (истина).
С выражениями отношения и другими логическими величинами можно выполнять три логических операции: инверсию (отрицание), дизъюнкцию (логическое сложение) и конъюнкцию (логическое умножение).
Инверсия, отрицание, НЕ, NOT – превращает логическую величину в противоположную. На языке С/С++ записывается знаком ! перед логической величиной. Результат описывается таблицей:
a |
0 |
1 |
!a |
1 |
0 |
Дизъюнкция, логическое сложение, ИЛИ, OR выполнятся над любым количеством операндов, начиная с двух. Результат дизъюнкции есть 1, если хотя бы один из операндов имеет значение 1, и равен 0, если все операнды равны нулю. Знак операции дизъюнкции на языке С/С++ записывается || - двумя вертикальными чертами (найдите символ вертикальной черты на клавиатуре!). Для двух операндов a и b результат описывается таблицей:
a |
0 |
0 |
1 |
1 |
b |
0 |
1 |
0 |
1 |
a || b |
0 |
1 |
1 |
1 |
Конъюнкция, логическое умножение, И, AND выполнятся над любым количеством операндов, начиная с двух. Результат конъюнкции есть 1, если все операнды имеет значение 1, и равен 0, если хотя бы один из операндов равен нулю. Знак операции конъюнкции на языке С/С++ записывается && - двумя амперсандами (найдите символ & на клавиатуре!). Для двух операндов a и b результат описывается таблицей:
a |
0 |
0 |
1 |
1 |
b |
0 |
1 |
0 |
1 |
a && b |
0 |
0 |
0 |
1 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.