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

Использование оператора Do …Until Loop (условие)

Можно для предыдущего примера использовать также оператор цикла

DoLoop Until (условие)

Do

ВводимыеИмена =InputBox("Введите Ваше имя или слово "Готово" для выхода")

If ВводимыеИмена < > "Готово" Then

Print ВводимыеИмена

Loop Until ВводимыеИмена = "Готово"

т.е., в данном примере в смысловом отношении более удобно использовать оператор цикла DoLoop Until (условие), при этом условие записывается более просто: ВводимыеИмена = "Готово".

Использование оператора With

Если в программе один и тот же объект используется в нескольких идущих один за другим операторах, то использование оператора With (пока) позволяет указать объект только один раз. Это делает код более понятным, а его выполнение более быстрым. Например:

With objПолнаяОбъективность

.Name = "Опрос общественного мнения" ' установка свойства Name

.DisplayName ' вызов имени DisplayName

sngRegion = .Area ' выяснение значения свойства Area

intПодтасовка = .Rotate (60) ' вызов метода Rotate (Поворот)

' и сохранение возвращаемого им значения в переменной

End With

Как видно, конструкция With…End With может включать операторы, в которых читаются и устанавливаются свойства, вызываются методы. Данная конструкция не задает цикл: входящие в нее операторы будут выполнены только один раз.

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

Использование оператора Is

Если необходимо выяснить идентичность двух ссылок на объекты, то это можно сделать с помощью оператора Is (результат будет True или False),например,

Dim objObject1 As Object, objObject2 As Object

….

If objObject1 Is objObject2 Then

MsgBox "Это тот же самый объект!"

Else

MsgBox "Это разные объекты!"

End If

Немедленный выход с помощью оператора Exit For

Обычно этот оператор используется в условном выражении (If…Then и Select ...Case), вложенном в главный цикл For…Next. например, при появлении недопустимого значения:

For p = 1 To varДлинаМассива

If varЦена (p) = "Здесь был Ваня!" Then

MsgBox "Данные испорчены."

Exit For

End If

varЦена (p) = varЦена (p) * sngCOLA

Next p

Управление потоком с помощью оператора Go To

Оператор Go To в совокупности со специальным оператором метки в месте назначения позволяет перемещаться от одной процедуры к другой, т. е. - это использование безусловного перехода. Метка – это оператор, отмечающий некоторое место в программе. Чтобы задать метку, напечатайте в нужном месте ее имя, а после него двоеточие.

В следующем примере оператор Go To направляет поток из главной части процедуры к метке, в частности, с именем "Метка", если встречается необычное значение:

Function ПримерGoTo (Номер As Integer)

Dim intR As Integer

IntR="Ошибка"

Select Case Номер

Case 2412

Go To Метка

….

End Select

(операторы, выполняющие какие-то действия)

Метка:

ПримерGoTo = IntR

End Function

С оператором Go To код читается гораздо труднее, поэтому по возможности следует использовать структуры, позволяющие выполняться программе последовательно. Но иногда этот оператор является наиболее естественным способом для того, чтобы заставить программу делать то, что нужно.

10

Соседние файлы в папке Лекции по информатике1