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

Порядок выполнения инструкций в разветвляющихся вычислительных процессах зависит от условий, которые проверяются по ходу вычислений, и реализуется вследствие этого по одному из нескольких заранее предусмотренных (возможных) направлений. Каждое отдельное направление называется ветвью вычислений. Разветвляющийся вычислительный процесс схематически представлен различными структурами, рис.8.2.а).- рис. 8.2.б). Такие структуры можно реализовать в программах с помощью инструкций условного перехода (If...Then... Else) и выбора по значению(Select Case... EndSelect). Изменить порядок выполнения программы можно также с помощью инструкции GOTO < метка>, называемой безусловным переходом. Инструкция безусловного перехода используется в тех случаях, когда необходимо выполнить не следующую по порядку инструкцию в программе, а, инструкцию помеченную меткой. Формат записи безусловного перехода:

Goto < метка>

Примечание. Во избежание зацикливания оператор Goto <метка > целесообразнее использовать в операторе If, если необходим безусловный переход к помеченному оператору.

Условный оператор If

В VBA имеются две формы записи условного оператора: полная и сокращенная. Форматзаписи оператора условного перехода:

If <условие > Then < инструкция _1 > [Else < инструкция р 2 >]

If(если), Then(то), Else(иначе)- ключевые(служебные) слова.

Условие представляет собой выражение логического типа. Оператор If работает следующим образом: если условие истинно (имеет значение True), то выполняется инструкция _1(первая ветвь), в противном случае выполняется инструкция _2(вторая ветвь). Обе ветви могут содержать несколько, инструкций, разделенных двоеточием.

Примеры записи инструкции If.

If x>0 Then x=x+1 Else x=0

If x>0 Then x=x+1: MsgBox x Else x=0

If y>0 Then y=sqr(y)

Для организации разветвлений на три направления и более можно использовать несколько конструкций If, вложенных друг в друга. При этом каждое Else соответствует непосредственно предшествующему ему Then.

Формат конструкции:

If < условие> Then

< инструкции>

ElseIf < условие> Then

< инструкции>

ElseIf < условие > Then

…..

…..

Else

< инструкции >

End If

Примечание. Из-за возможных ошибок следует избегать большой вложенности условных конструкций.

Примеры алгоритмов разветвляющейся структуры и соответствующих им программ с использованием If.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: