Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PR3.doc
Скачиваний:
4
Добавлен:
19.07.2019
Размер:
343.04 Кб
Скачать

Практическая работа №3 разветвляющиеся алгоритмы

Цель работы:

1 Ознакомиться с логическими операциями.

2 Изучить логические операторы.

3 Научиться составлять разветвляющиеся алгоритмы.

Краткие теоретические сведения

На сегодняшнем занятии Вы познакомитесь с тем, как реализуется возможность выбора одной альтернативы из множества при составлении блок-схем.

Для успешного решения задач данного вида был создан символ “Решения”, имеющий один вход и, в общем случае, несколько выходов. Внутри данного символа записывается логическое выражение, которое может включать в себя: имена переменных, имена подпрограмм, числа, знаки математических операций, а также операторы отношения и логические операторы.

Операторы отношения

В языке программирования Паскаль, как и в большинстве современных языков применяются следующие операторы отношения: равно (=), не равно (<>), меньше (<), меньше чем или равно (<=), больше (>), больше чем или равно (>=). Каждый из операторов отношения вырабатывает значение логического типа: “Ложь” или “Истина”. В качестве операндов могут быть значения одного из нижеприведенного типов: числа, символы, логические значения и значения перечисляемых типов.

В логическом выражении можно объединять в несколько операторов отношения, связывая их между собой логическими операторами.

Логические операторы

Логические операторы вырабатывают только два значения: “Ложь” или “Истина”. В качестве операндов могут выступать также только переменные логического типа. Основные логические операции: “И”, “ИЛИ”, “НЕ”, “ИСКЛЮЧАЮЩЕЕ ИЛИ”. Операторы выполняются в порядке старшинства. Смотри приложение № 5.

НЕ (Not) – унарный оператор. Инвертирует значение логического типа;

И (And) – бинарный оператор, возвращающий значение “Истина” только в том случае, на вход подаётся два значения “Истина”, и значение “Ложь” в других случаях;

ИЛИ (Or) – бинарный оператор, возвращающий значение “Истина” в тех случаях, когда на вход подаётся хотя бы одно значение “Истина”, и значение “Ложь” в других случаях;

ИСКЛЮЧАЮЩЕЕ ИЛИ (Xor) – бинарный оператор, возвращает значение “Истина” в тех случаях, когда на вход подают разные по значениям операнды, и значение “Ложь” в остальных случаях.

Таблица истинности для логических операторов

Таблица 3.1

P

Q

Not P

P And Q

P Or Q

P Xor Q

True (1)

True (1)

0

1

1

0

True (1)

False (0)

0

0

1

1

False (0)

True (1)

1

0

1

1

False (0)

False (0)

1

0

0

0

Cоставление разветвляющихся алгоритмов

В

Рисунок 3.1 Форма представления символа решения с двумя альтернативами.

Рисунок 3.2 Форма представления символа решения с одной альтернативой.

основе любого разветвляющегося алгоритма лежит требование выбора одной альтернативы из множества предложенных. Выбор осуществляется с помощью символа решения, приведенного в приложении № 6. Особенность использования данного символа в блок-схемах - в этот символ есть один вход и несколько выходов. Внутри символа помещается логическое условие, которое должно вырабатывать результат. Логическое условие может включать в себя произвольные комбинации: логических операторов, операторов отношения, математических операторов, обращений к подпрограммам, имён переменных и числовых значений.

При наличии одной или двух альтернатив используется один символ решения. Примеры п

Рисунок 3.3 Формы представления символа решения со множеством альтернатив

Рис. 3.4 Применение вложенных символов решения.

риведёны на рисунках 3.1 и 3.2.

При наличии трёх и более альтернатив, количество символов решения определяется путём анализа множество возможных решений:

Если множество возможных решений – дискретно, то можно использовать один символ решения. Пример приведён на рис. 3.3.

Если альтернативы перекрывают всё множество возможных решений (непрерывных), то количество символов решения равно количество ветвей минус единица. Данная конструкция называется вложенными символами решения. Пример приведён на рисунке 3.4.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]