Описание операторов, применяющихся при организации программ с разветвляющейся структурой.
Оператор условного перехода - IF...THEN...ELSE
Назначение: Позволяет передавать управление программой в зависимости от результата проверки условия. Имеет две разновидности.
Синтаксис:
Первая форма представляет собой оператор, записываемый в одну строку:
IF <условие> THEN <выражение 1> [ELSE <выражение 2>]
Аргумент | Описание |
<условие> | Логическое выражение, принимающее значение TRUE (истина) <- ненулевое значение, - или FALSE (ложь) - нулевое значение; |
<выражение1> | Вычисляется, если условие принимает значение TRUE, и пропускается в противном случае; |
<выражение 2> | Вычисляется, если условие принимает значение FALSE. |
Если ELSE-часть отсутствует, а <условие> имеет значение FALSE, управление передается следующему оператору.
Вторая (блоковая) форма оператора условного перехода имеет вид:
IF <условие 1> THEN
[<блок 1>]
[ELSEIF <условие 2> THEN
[<блок 2> ] ]
...........
[ELSE
[<блок N>] ]
END IF
Аргумент | Описание |
<условие 1> | Логическое выражение, принимающее значение TRUE (ненулевое) или FALSE (нулевое) (i = 1...N). |
<блок 1>, …<блок N> | Последовательность операторов, занимающих одну или несколько строк. |
ELSEIF | Проверка дополнительного условия (<условие 2>). |
ELSE | Определяет блок операторов, получающих управление в случае, если ни одно из вышеперечисленных условий не выполнится. |
Оператор выбора - SELECT CASE
Назначение: Выбор и выполнение одного из нескольких блоков в зависимости от значения ключевого слова.
Синтаксис:
SELECT CASE <ключевое слово>
CASE [<ключ 1>]
[ операторный блок 1>]
[CASE [<ключ 2>]
[<операторный блок 2>]]
[CASE [<ключ N-1>]
[ операторный блок N-1>]]
[CASE ELSE
[ <операторный блок N> ] ]
END SELECT
Аргумент | Описание |
<ключевое слово> | Любое числовое или строковое выражение |
<Операторный блок 1>, …<операторный блок N> | Операторный блок - это любое число операторов на одной или более строках |
Синтаксис аргумента <ключ1>:
В качестве ключа (I = 1...N) используется одна из следующих форм:
1. <выражение> [, <выражение>...]
2. <выражение> ТО <выражение>...
3. IS <операция отношения> <выражение> [,...]
<выражение> | Любое числовое или строковое выражение. Тип выражения должен соответствовать типу текущего ключевого слова |
<операция отношения> | < меньше <= меньше или равно > больше >= больше или равно <> не равно = равно |
2. Описание практической части работы:
2.1. Цели лабораторной работы: Изучить последовательность написания программ с разветвляющейся структурой на алгоритмическом языке (Basic) и структуру линейного и блочного оператора IF.
2.2. Постановка задачи: В соответствии с заданием лабораторной работы №2 разработать программы с линейной и разветвляющейся структурой для нахождения заданной функции.
2.3. Порядок выполнения работы:
2.3.1. Ознакомиться с теоретической частью.
2.3.2. Получить задание у преподавателя.
2.3.3. Выполнить работу.
2.3.4. Оформить отчет:
2.3.4.1. Содержание отчета:
1. Цель работы - краткая формулировка поставленной цели.
2. Порядок выполнения - определяются действия, необходимые для выполнения данной работы.
3. Постановка задачи - формулирование задачи в соответствии с индивидуальным заданием.
4. Решение поставленной задачи:
4.1. Математическое описание решения поставленной задачи содержит описание связей между параметрами с использованием принятых в математике обозначений.
4.2. Описание логической структуры программы (алгоритм решения) содержит:
- краткое описание схемы программы,
- алгоритм решения (по ГОСТ) - рисунок,
- краткое описание используемых операторов языка программирования: IF (строчная и блочная формы) (при необходимости SELECT CASE).
4.3. Описание программы содержит:
- название файла, его размер,
- текст программы без комментариев (или фрагмент для решения конкретной, наиболее важной части задания).
4.4. Результат работы программы:
- значения, полученные в результате выполнения программы
- анализ полученных результатов.
Выводы - отвечают на поставленную цель.
2.4. Контрольные вопросы:
1. Каким блоком изображается в алгоритме <условие>?
2. В чем отличие разветвляющихся структур с полной и неполной альтернативой выбора?
3. Назначение конструкции выбора, реализуемой оператором SELECT CASE?
4. Укажите синтаксис линейного оператора IF?
5. Укажите синтаксис блочного оператора IF?
6. Можно ли выйти из блочного оператора IF (из одного из выполняемых блоков) с помощью оператора GOTO?
7. Укажите виды условий, используемых в операторе IF?
8. Какое действие выполняется в операторе IF: IF A NOT B THEN PRINT ‘A’ ELSE PRINT ‘B’, если А=В?
9. Можно ли использовать оператор IF для возврата на начало программы?
10. Как изображается конструкция выбора в схемах программы?
Таблица