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

Вопрос 41: Программирование разветвляющихся алгоритмов

Разветвляющимся называется алгоритм, в котором некоторые действия могут выполняться один раз или не выполняется в зависимости от заданного условия.

Для реализации разветвляющегося алгоритма в языке VBA есть два оператора:

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

  • Select Case оператор выбора

 

Логические выражения

состоят из арифметических выражений, операций отношения и логических операций, имеют тип Boolean и могут принимать одно из двух значений: True или False

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

= <> < <= > >=

выполняют сравнение двух операндов и определяют истинно выражение или ложно

Логические операции

not and or

используются для образования сложных логических выражений

Not – логическое отрицание

Синтаксис:

not (<логическое выражение>)

 And – логическое И

Синтаксис:

(<логическое выражение 1>) and (<логическое выражение 2>)

Or – логическое ИЛИ

Синтаксис:

<логическое выражение 1> or <логическое выражение 2>

Условный оператор If (полная форма)

Сокращенная форма:

Выполнение оператора:

  • если значение логического выражения, записанного в условии, равно true, то выполняется блок операторов 1, если false – блок операторов 2

  • если значение логического выражения равно true, то выполняется блок операторов 1, если false – оператор никаких действий не выполняет и происходит переход к следующему за If оператору

Каждый из блоков состоит только из одного оператора 

Для полной формы:

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

 

Для сокращенной формы:

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

Если хотя бы один из блоков содержит более одного оператора

Для полной формы:

If <условие> Then <Блок операторов 1> Else <Блок операторов 2> End If

Для сокращенной формы:

If <условие> Then < Блок операторов1> End If

Вложенный оператор If

Синтаксис:

If <условие 1> Then

If <условие 2>

Then <Блок операторов 1>

Else <Блок операторов 2>

End If

  Else <Блок операторов 3>

End If

Сжатая структура оператора If:

If <условие 1> Then <Блок операторов 1>

Else If <условие 2> Then

<Блок операторов 2>

Else If <условие 3> Then

<Блок операторов 3>

Else <Блок операторов 4>

End If

Тесты: Для задач с разветвляющимися алгоритмами тесты должны быть в каждом интервале вычисляемой функции и в каждой точке ветвления (значение аргумента, при котором изменяется выражение для вычисления функции)

Вывод тестов в ячейки рабочего листа

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