КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
End Select. Оператор варианта Select Case
Оператор варианта Select Case END IF END IF Если результатом проверки логическое_выражение является значение True, то будет выполнен блок then_последовательность, находящийся после ключевого слова Then. С другой стороны, если проверка логического выражения дала результат False, то будет выполнен блок else_последовательность, расположенный после ключевого слова Else. В том случае, когда определенное действие (или набор действий) нужно выполнить после проверки не одного, а нескольких условий, следует использовать следующую конструкцию: IF логическое_выражение_1 THEN [ блок_операторов_1 ] [ELSEIF логическое_выражение_2 THEN блок_операторов_2 ] … [ELSE блок_операторов_n ] Блок_операторов - это один оператор или последовательность операторов. Если результатом проверки логического_выражения_1, находящегося после ключевого слова If, является значение True, то будут выполнены операторы из блока_операторов_1, находящегося после ключевого слова Then. Если же оно ложно (False), то проверяется логическое_выражение_2, находящегося после ключевого слова ElseIf. В случае его истинности выполняются операторы из блока_операторов_2 и т. д. Если ни один из этих условий не является истинным, то есть результатом всех проверок является значение False, то выполняются операторы из блока_операторов_n, расположенные после ключевого слова Else. Примеры: If A > 10 Then A = A+1: B = B + A: GoTo Vstavka ' обход If Name = "Иван" Then GoTo 555 ' обход 'Вариант с вложенными конструк- Вариант с конструкцией If…ElseIf 'циями If… Then If Answer = 5 Then ' ветвление If Answer = 5 Then ' ветвление Ball = "Отлично" Ball = "Отлично" Else ElseIf Answer = 4 Then If Answer = 4 Ball = "Хорошо" Ball = "Хорошо" ElseIf Answer = 3 Then Else Ball = "Удовлетворительно" If Answer = 3 Else Ball = "Удовлетворительно" Ball = "Неудовлетворительно" Else End if Ball = "Неудовлетворительно" End if End if End if
Когда надо сделать выбор из нескольких альтернативных вариантов в зависимости от значения условного выражения, запись If … Then может оказаться достаточно громоздкой. Поэтому в подобных случаях следует использовать структуру Select Case, которая улучшает читаемость программы. Ее синтаксис выглядит следующим образом:
Select Case выражение Case список_выражений_1 блок_операторов_1 Case список_выражений_2 блок_операторов_2 … Case список_выражений_n блок_операторов_n [Case Else блок_операторов_n+1 ]
Здесь, выражение - выражение арифметического или символьного типа. список выражений может иметь одну из следующих форм: - выражение; - выражение To; - выражение Is операция отношения выражение. Если значение выражения содержится в список_выражений_1, находящегося после первого по порядку служебного слова Case, то выполняется блок_операторов_1. Если значение выражения содержится в список_выражений_2, то выполняется блок_операторов_2 и т.д. Когда значение выражения не содержится ни в одном из приведенных списков, то выполняется блок_операторов_n+1, находящийся после служебного словосочетания Case Else, которе является необязательным в рассматриваемой конструкции. Пример: Dim x, y As Single Select Case X 'выбор Case 1, 3 ' X = 1 или X = 3 Y= X^2 Case 5 To 10 ' 5 < = X <= 10 Y= X^2/3 Case 12 Is >= 15 ' X = 12 или X >= 15 Y= X+3 Case Else ' в противном случае Y= X End Select
2.7.2.4. Оператор цикла с параметром For…Next Используется в том случае, когда количество повторов заданного блока операторов известно заранее. Данная конструкция выглядит следующим образом: For счетчик_цикла = начальное_значение To конечное_значение [Step шаг ] блок_операторов_1 [Exit For] [ блок_операторов_2 ] Next [ счетчик_цикла ] Пара For…Next определяет начало и конец цикла. Блок_операторов_1 и блок_операторов_2 между For и Next составляют тело цикла. Счетчик_цикла - это числовая переменная, не может быть элементом массива или элементом пользовательского типа данных. Начальное_значение и шаг - это арифметические выражения (в частном случае - это константа или переменная). Они определяют значение счетчик_цикла перед очередным выполнением тела цикла. Перед первым выполнением тела цикла счетчик_цикла равен начальному_значению. Перед вторым выполнением тела цикла счетчик_цикла увеличивается на 1 (если шаг не задан) или на шаг (если шаг задан) и т.д. Конечное_значение - это арифметическое выражение (в частном случае - это константа или переменная). Определяет окончание работы цикла. Цикл выполняется до тех пор, пока значение счетчик_цикла не выйдет за границу конечного_значения. Exit For может находится в любом месте между For и Next, используется для досрочного прекращения выполнения цикла (управление передается оператору, следующему за Next). Применяется обычно в условном операторе, проверяющего условие выхода из цикла, например, в случае ошибки. Причем, если осуществляется досрочное прекращение цикла, то блок_операторов_1 выполняется очередной раз, а блок_операторов_2 - нет. После завершения цикла управление передается оператору, следующему за Next. Дополнительные достаточные условия для выполнения цикла: - шаг >=0 и начальное значение <= конечное значение; или - шаг <=0 и начальное значение >= конечное значение. Примеры. ' Заполнение массива символами таблицы ASCII Dim I As Integer Dim C(255) As String For I = 0 To 255 C(I) = Chr(I) ' стандартная функция Chr возвращает ' символ для указанного кода Next I
' Досрочное прерывание цикла Dim j As Integer Dim Sum As Single Sum=2 For j = 1 To 10 Sum = Sum + j If Sum > 6 Then Exit For ' выход из цикла, если значение Sum больше 6 End If Next
2.7.2.5. Цикл Do…Loop
Применяется в том случае, когда число повторений заданного блока операторов (тело цикла) заранее неизвестно. Существует четыре разновидности данной конструкции. При использовании первых двух цикл либо выполнится много раз, либо не выполнится вообще (если проверяемое условие не выполняется). Эти конструкции выглядят следующим образом: Do [{While | Until} логическое_выражение ] блок_операторов_1 [Exit Do] [ блок_операторов_2 ]
Дата добавления: 2014-12-23; Просмотров: 1015; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |