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

Лабораторная работа №3 программирование задач с разветвляющимся алгоритмом

Цель работы:

Изучение операторов условного перехода.

Получение навыков решения задач с разветвляющимся алгоритмом.

1. Порядок выполнения работы

  1. Изучить методические указания к лабораторной работе.

  2. Подготовить задачу для решения на ПК (постановка задачи, алгоритм, код программы).

  3. Запустить Microsoft Excel и подготовить макет таблицы для вывода исходных данных и результата.

  4. Запустить редактор VBA.

  5. Создать модуль и процедуру для решения поставленной задачи.

  6. Запустить процедуру.

  7. Распечатать полученные результаты и код программы.

2. Логические конструкции

Данная лабораторная работа посвящена изучению способов решения задач с разветвляющейся структурой. Разветвляющаяся структура обычно содержит блок проверки некоторого логического условия, например, X>0; X<A; X≠ 0 и т.п. По результатам проверки выполняется та или иная последовательность действий, называемая ветвью. В дальнейшем под ветвью будем подразумевать один оператор или группу операторов. Разветвляющийся вычислительный процесс, включающий две ветви, называется простым; более двух ветвей – сложным.

Разветвляющийся вычислительный процесс основывается на трех базовых структурах:

  1. Развилка;

  2. Обход;

  3. Многозначное ветвление.

Кроме того, в связи с добавлением «специфического» оператора условных переходов, необходимо отдельно рассматривать еще одну структуру – разветвленную структуру со сложным вычислительным процессом (структуру с вложенными условными операторами).

Для реализации данных структур используются условные операторы IfThenElse, IfThen, Select Case и Оператор ElseifThenElse.

2.1. Развилка

Развилка применяется, когда в зависимости от условия необходимо выполнить одну из ветвей: ветвь, если условие истинно (выполняется) или ветвь, если условие ложно (не выполняется). Общий вид структуры развилки представлен на рис. 5.

Рис. 5. Развилка

Для реализации развилки служит оператор IfThenElse, при этом используется две формы синтаксиса: строчная и блочная.

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

If условие Then ветвь 1 Else ветвь 2.

Блочная форма синтаксиса имеет следующий вид:

If условие Then

ветвь 1

Else

ветвь 2

End if.

Если условие имеет значение истинно, VBA выполняет первый блок операторов (ветвь 1) и, пропустив, все остальные операторы структуры, переходит к строке программного кода, следующей сразу же за ключевым словом End If. А если условие имеет значение ложно, то выполняются операторы (ветвь 2), следующие за ключевым словом Else.

2.2. Обход

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

Таблица 6

Виды обходов и их программная реализация

№ п\п

Вид обхода

Форма синтаксиса

Программная реализация

1

Строчная

If условие Then оператор 1

Блочная

If условие Then

оператор 1

.

.

.

оператор N

End if

2

Строчная

If условие Then Else оператор 1

Блочная

If условие Then

Else

оператор 1

.

.

.

оператор N

End if

Для организации обходов настоятельно рекомендуется использовать первый вид обходов, это сокращает программный код и увеличивает читабельность используемого оператора. Для этого достаточно грамотно указать условие.

Как видно, из таблицы данный вид обхода реализуется оператором IfThen. При этом оператор IfThen выполняет некоторую группу операторов, если условие в рассматриваемом операторе истинно, и не выполняет ничего, если условие принимает значение ложно.

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