Лабораторная
работа №3
Организация
принятия
решений
Цель работы: освоить использование операторов принятия решений (If-Then-Else), познакомится с конструированием сложных условий.
Теоретическое
введение.
Большинство операторов являются операторами присваивания, но есть и другие операторы, предназначенные для решения более сложных задач. Они известны как управляющие.
К
управляющим
операторам
относятся, в
частности, условные
операторы.
Они
используются
для
выполнения
различных
фрагментов
программы в
зависимости
от
выполнения
некоторого
условия. Характерным
оператором,
позволяющим
решить
практически
все задачи,
является «If-Then-Else».
Для проверки истинности условий в Visual Basic предназначены два типа операторов «If» – однострочный и блочный.
Однострочный оператор «If» состоит из одной строки и используется для выполнения одной команды:
If
condition Then command1 Else command2
Здесь «condition» представляет собой любое выражение или функцию, истинность которой будет оцениваться:
· Условие, построенное с помощью операторов сравнения;
· Переменная логического типа;
· Любая функция логического типа.
«Command1» – команда, которую необходимо выполнить, если «condition» будет иметь значение «True» (истина). А «command2» – команда, выполняющаяся при «condition» равным «False» (ложь). При этом обе команды никогда не выполнятся одновременно!
Если при некотором условии необходимо выполнить не одну, а сразу несколько команд, можно использовать блочный оператор «If»:
If
condition Then
Command1
...
Commandn
Else
Command01
...
Commandm
End if
Принцип действия блочного и однострочного операторов условия полностью аналогичны. Единственное отличие – наличие в каждом из блоков нескольких команд.
Помимо этого существует так называемая краткая форма оператора «If». Она заключается в том, что блок «Else» является необязательным:
Блочная форма: |
Однострочная форма: |
If
condition Then Command1 Command2 ... Commandn End if |
If
condition Then command1 |
При этом принцип работы остается неизменным. При «condition» равным «False» управление буде передано следующему оператору, стоящим следом за оператором «If».
Если нужно
проверить
какое-либо
условие при
выполнении
другого
условия
используют
вложенные
операторы
«If». Формат вложенного оператора следующий:
If
condition Then
If condition Then
Command1
Else
Command2
End if
End
if
Расширить возможность всех условных операторов можно с помощью логических выражений, являющимися полными аналогами условий. Такие условия принято называть составными. Для записи подобных выражений используются ряд логических функций:
Таблица 6
Некоторые логические функции в Visual Basic
Функция |
Описание |
Пример синтаксиса |
Not |
Отрицание («не»): возвращает True, если логическое выражение имеет значение False и наоборот. |
Not(Expression) |
And |
Логическое умножение двух выражений («и»): возвращает False, если хотя бы одно выражение имеет значение False. |
Expression1 And Expression2 |
Or |
Логическое сложение двух выражений («или»): возвращает True, если хотя бы одно выражение имеет значение True. |
Expression1 Or Expression2 |
Xor |
Исключающее «или» («либо»): возвращает True, если только одно выражение имеет значение True. |
Expression1 Xor Expression2 |
Все выражения в приведенных выше функциях обязательно должны быть логическими. Применяя операторы сравнения (< , > , = ), можно вставлять математические выражения в логические:
a * b < c
and b + c
Порядок выполнения расчетов в таких выражениях полностью подчиняется правилу приоритета (см. работу № 2). Область применения подобных выражений очень широка при написании сложных условий для операторов принятия решений. Применение составных и вложенных условий позволяет решать самые запутанные задачи.
Задание. Составить программу для вычисления некоторых выражений с применением операторов принятия решений (задание №7 и №8, методичка 279, вариант тот же). Ввод и вывод информации осуществить аналогично работе №2. Расчеты вести через промежуточные переменные.
Ход
работы.
Ход работы полностью аналогичен работе № 2. Программный код модуля должен содержать вложенные или составные условия. Обосновать их использование.