Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Фокселл Дж.Д. -> "Освой самостоятельно Visual Basic.NET за 24 часа" -> 130

Освой самостоятельно Visual Basic.NET за 24 часа - Фокселл Дж.Д.

Фокселл Дж.Д. Освой самостоятельно Visual Basic.NET за 24 часа — М.: Вильямс, 2002. — 416 c.
ISBN 5-8459-0304-1
Скачать (прямая ссылка): osvoysamostoyatelnovsn2002.pdf
Предыдущая << 1 .. 124 125 126 127 128 129 < 130 > 131 132 133 134 135 136 .. 181 >> Следующая

While. При использовании в цикле ключевого слова Until цикл выполняется
до тех пор, пока выражение expression не примет значение True. Цикл
выполняется, пока значение условия равно False. Это абсолютно
противоположно поведению While. Если при первом входе в цикл значение
условного выражения равно True, цикл не будет выполнен ни одного раза.
Заметим, как While и Until могут привести к тому, что цикл не будет
выполнен вообще. Это происходит потому, что выражение expression,
помещенное в оператор Do, вычисляется до вхождения в цикл, и затем -
после каждого выполнения фрагмента программы, помещенного в цикл. Вы
можете поместить ключевые слова While и Un-111 не в оператор Do, а в
оператор Loop. В этом случае операторы, помещенные в цикл, выполняются
один раз до того, как проверяется условие. Таким образом, такой цикл
всегда выполнится хотя бы один раз. Вам следует осознать, как это
изменяет поведение цикла. Ниже приведен рассмотренный выше пример, в
котором ключевое слово While перемещено из оператора Do в оператор Loop:
Do
[Операторы]
Loop While expression
В этом случае снова цикл выполняется до тех пор, пока выражение
expression остается равным True. Отличие данного примера от предыдущего,
где выражение содер-
Час Создание циклов
293
жалось в операторе Do, состоит в том, что операторы, находящиеся внутри
этого цикла, будут выполнены, по крайней мере, один раз. Выражение
expression не проверяется до тех пор, пока цикл не выполнится один раз.
Таким образом, цикл выполняется первый раз независимо от значения
условного выражения. Далее мы приводим пример аналогичного цикла, где в
оператор Loop уже помещено ключевое слово Until:
Do
[Операторы]
Loop Until expression
Этот цикл выполняется до тех пор, пока значение выражения expression
остается равным False. Но и здесь цикл будет выполнен, по крайней мере,
один раз, так как проверка условия происходит только после выполнения
всех операторов внутри цикла.
Создание примера цикла Do^.Loop
Теперь мы займемся созданием примера использования цикла Do ... Loop, в
котором изменяется размер ярлыка, моделирующего индикатор процесса. Этот
цикл выполняет те же функции, что и For...Next в примере предыдущего
раздела. Однако их структуры значительно отличаются.
Если текущий момент у вас запущен на выполнение примера For...Next,
выберите пункт Stop Debugging из меню Debug. Добавьте в форму вторую
кнопку, для этого дважды щелкните на ярлыке этого элемента на панели
инструментов. Установите свойства нового элемента согласно данной
таблице:
Свойство Значение
Name BtnDoLoop
Location 88,160
Text Run a Do Loop
Size 125,23
Теперь форма примет вид, подобный рис. 15.2.
Дважды щелкните на новом элементе для получения доступа к процедуре
обработки его события Click. Введите следующий текст:
Dim intLabelWidth as Integer Dim lngPauseCounter as Long IntLabelWidth=l
Do Until intLabelWidth=100
LblMeterO.Width=intLabelWidth LblMeter().Refresh()
+ 1
For lngPauseCounter =1 To 600000 Next lngPauseCounter
Loop
Этот текст легче понять, разбив его на части:
• в первых двух строках создаются две переменные: одна для цикла Do ...
Loop, другая - для цикла For...Next;
• значение переменной intLabelWidth устанавливается равным 1;
• начинается цикл Do ... Loop, содержащий ключевое слово Until. Этот цикл
будет выполняться, пока переменная intLabelWidth не станет равной 100;
294
Часть Начинаем программировать!
свойству Width элемента Label присваивается значение переменной
intLabelWidth;
дается указание элементу Label обновить свое отображение на экране;
* значение переменной intLabelWidth увеличивается на единицу;
'¦ выполняется цикл Fcr.J-lext для замедления выполнения программы (как и
в предыдущем примере);
а когда достигается оператор Loop, управление передается оператору Do и
значение intLabelWidth проверяется снова. Если оно не равно 100, цикл
повторяется.
Рис. /52 Вы можете использовать одну форму для обоих примеров цикла
Щелкните Save АН на панели инструментов для сохранения проекта и затем
нажмите клавишу F5 для запуска его на выполнение. Нажмите на форме кнопку
Run a Do Loop для того, чтобы увидеть, как индикатор установит свое
значение в один пиксель и будет постепенно увеличиваться до ширины в 100
пикселей.
Мы стремились показать. как оба типа циклов можно применить ¦ выполне-
tec-k-jf нию одной и той же задачи Однако для данного примера, что
очевидно, лучшим выбором является использование цикла For...Next.
Мы увидели, как можно использовать две различные техники программирования
для выполнения одной и той же задачи. При создании программ такая
ситуация является типичной: обычно существует несколько способов решения
поставленной задачи. Необходимо просто осмыслить, какой из них является
более простым для программирования.
Час 15. Создание циклов
295
Когда вы слышите о людях, оптимизирующих свои программы, то знайте, что
они ищут другие подходы к решению задачи - более быстрые, чем те, которые
Предыдущая << 1 .. 124 125 126 127 128 129 < 130 > 131 132 133 134 135 136 .. 181 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.