Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

27) Оператор выбора SELECT..CASE. Описание и порядок выполнения.




27) Оператор выбора SELECT... CASE. Описание и порядок выполнения.

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

У этого цикла следующая структура:

Select Case Выражение

[Case Список_Выражений-n [действия – функции-n]]… [Case Else [действия – функции_else]]

End Select

Выражение – обязательный элемент – любое числовое или строковое выражение. Список_Выражений-n - обязательный элемент структуры при наличии предложения Case. Представляет собой список с разделителями. Структура такого списка может быть одной из следующих: – Выражение, – Выражение_1 To Выражение_2, – Is Оператор_сравнения Выражение. Ключевое слово To задаёт диапазон значений. При использовании To перед ним должно находиться меньшее значение. Ключевое слово Is с операторами сравнения (не должны использоваться операторы Is и Like) задаёт диапазон значений. Если ключевое слово Is не указано, оно вставляется по умолчанию. Действия – функции-n - необязательный элемент – одно или несколько действий – функций, которые выполняются в том случае, если выражение совпадает с любым компонентом списка Список_Выражений-n. Действия – функции_else - необязательный элемент – одно или несколько действий – функций, выполняемых в том случае, если выражение не совпадает ни с одним из предложений Case. Пронаблюдаем алгоритм работы Select Case. Если выражение совпадает с любым выражением из Списка_Выражений-n в предложении Case, то выполняются все действия – функции, следующие за данным предложением Case до следующего предложения Case (в случае если предложение является последним, то до End Select). После этого управление передается действию – функции, следующей за End Select. Предложение Case Else задаёт список действий–функций_else. Эти действия – функции будут выполнены, если нет ни одного совпадения Выражения и элемента Список_Выражений-n ни в одном из предложений Case. Хотя предложение Case Else не является обязательным, рекомендуется помещать его в блок Select Case, чтобы предусмотреть неожиданные значения выражения. Если ни в одном предложении Case элемент Список_Выражений-n не содержит значения, отвечающего аргументу Выражение, и отсутствует Case Else, выполнение программы продолжается с действия – функции, следующей за End Select. В предложении Case допускается использование нескольких выражений или диапазонов. Допускается вложенность Select Case. При этом каждой вложенной Select Case должна соответствовать End Select.

Описание и порядок выполнения.

· Выполняется блок операторов того раздела, чье значение соответствует выражению. Если таких блоков несколько, то выполняется первый из их. Затем программа переходит к выполнению оператора, стоящего за ключевым словом EndSelect.

· При несовпадении ни одно из значений указанному в заголовке выражению будет выполняться блок операторов CaseElse отсутствует, то при несовпадении ни одно из значений указанному в заголовке выражению, программа переходит к выполнению оператора, стоящего за ключевым словом EndSelect.

Пример:

Private Sub Комманда1_Click()

Dim d As String, I As Integer

i=InputBox(‘введитечисло’)

Select Case i

Case 1

d=’понедельник’

Case2: d=”вторник”

Case3: d=”среда”

Case4: d=”четверг”

Case5: d=”пятница”

Case6: d=”суббота”

Case7: d=”воскресенье”

CaseElse

d=’такого нет’

End Select

Комманда1. Caption=d

End Sub

28) Оператор цикла с параметром FOR... NEXT. Заголовок оператора. Структура. Область действия оператора. Выполнение оператора. Порядок изменения параметра цикла

 

Часто при решении задач приходится многократно вычислять значения по одним и тем же математическим зависимостям для различных значений входящих в них величин. Такие многократно повторяющиеся участки вычислительного процесса называются циклами. Различают циклы с заданным и неизвестным числом повторений. К последним относятся итерационные циклы, характеризующиеся последовательным приближением к искомому значению с заданной точностью.

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

· задать перед циклом начальное значение переменной, изменяющейся в цикле;

· произвести необходимые действия;

· изменить переменную на величину шага;

· проверить условие окончания (или повторения) цикла;

· переходить к п. 2, если цикл не закончен.

 

Оператор цикла For... Next

 

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

Цикл For... Next имеет следующий синтаксис:

For счетчик = Начало To Конец [Step Шаг]

[Операторы цикла]

Next счетчик

 

Счетчик – любая переменная, по которой организован цикл.

В квадратных скобках указан не обязательный параметр.

По умолчанию VBA увеличивает счетчик на 1 каждый раз при выполнении операторов в цикле (шаг по умолчанию равен 1). Если нужно другое значение шага надо включать в оператор For необязательное ключевое слово Step.

При выполнении цикла For... Next VBA поступает следующим образом:

· присваивает значение Начало счетчику;

· выполняет все операторы, представленные с помощью Операторы цикла, пока не достигнет ключевого слова Next, которое указывает VBA на то, что достигнут конец тела цикла;

· изменяет счетчик на величину Шаг (если включается необязательное ключевое слово Step); если Stepне определено, то VBA увеличивает переменную на 1;

· возвращается к началу цикла и сравнивает текущее значение счетчика со значением Конец. Если значение счетчика меньше или равно Конец, VBA выполняет цикл снова. Если значение счетчика больше значения Конец, VBA продолжает выполнение кода с первого оператора после ключевого слова Next.

Если Шаг > 0, то такой цикл называется циклом с возрастающим счетчиком, если Шаг < 0 – цикл с убывающим счетчиком. В последнем случае Начало должно быть больше Конец.

Цикл For... Next выполняется только в том случае, если начальное значение счетчика цикла плюс шаг изменения значения счетчика меньше или равно конечному значению счетчика. Если конечное значение счетчика меньше начального значения, то шаг должен быть отрицательным. Цикл выполняется до тех пор, пока текущее значение счетчика не выйдет за рамки конечного значения. При завершении текущего цикла к значению счетчика прибавляется значение шага. Если начальное значение и конечное значение счетчика имеют одно и то же значение, цикл выполняется один раз, вне зависимости от значения шага. Если шаг равен нулю, цикл продолжается неопределенное количество раз.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...