Пока выполняется условие - цикл While  
Всё об Excel

+В закладки

Обучение Excel

Макросы в Excel

Программирование в Excel

Как в Excel ...?

Об Авторе

Карта сайта

Введение в программирование в Excel

Открываем редактор кода

Как правильно запустить макрос

Немного о программировании

Пока выполняется условие - цикл While

Цикл While. Продолжение

Ещё один цикл For

Как проверить условие - if ... then

Ключевые конструкции языка If, Else, ElseIf, Case

Пишем функцию для макроса



Цикл While

Данный урок по Excel хотелось бы посвятить таким замечательным конструкциям в VBA, как циклы. И в нашей программе мы использовали циклы для того, чтобы рассчитать значения функции«y = x1 ^ 3 - 2 * x1 ^ 2 - x1 ^ (3 * Cos(x1)) – 5» на отрезке от 1 до 10 с шагом 0.1, то есть блок нашего кода выполнил 100 циклов, пока x1 не стал равным x2.

Do While x1 < x2 'Выполнять цикл операций, пока x1 < x2

y = x1 ^ 3 - 2 * x1 ^ 2 - x1 ^ (3 * Cos(x1)) - 5 'Рассчитать значение функции

Сells(i, 1).Value = x1 'Записать x1 в ячейку с координатами (i,1)

Cells(i, 2).Value = y 'Записать y в ячейку с координатами (i,2)

i = i + 1 'Увеличить счётчик на 1

x1 = x1 + shаg 'Изменить x1 на величину шага

Loop

А в каждом цикле было 5 операций.

1-ая - y = x1 ^ 3 - 2 * x1 ^ 2 - x1 ^ (3 * Cos(x1)) - 5 'Рассчитать значение функции

2-ая - Сells(i, 1).Value = x1 'Записать x1 в ячейку с координатами (i,1)

3-яя - Cells(i, 2).Value = y 'Записать y в ячейку с координатами (i,2)

4-ая- i = i + 1 'Увеличить счётчик на 1

5-ая x1 = x1 + shаg 'Изменить x1 на величину шага

Таким образом, конструкция

Do While (условие) 'где условие, например (x1 < x2)

{Наш код}

Loop,

в которую мы поместили наш код, позволила выполнить 500 операций, приэтом мы записали только 7 строчек кода.

РазновидностьюDo While является конструкция

Do Until (x1 <  x2)

{Наш код}

Loop

Но тут есть особенность, если условие выполняется, а именно x1 действительно меньше x2, цикл не выполнится ни разу. А если перевести дословно Do Until (x1 <  x2), то получаем «Делай пока x1 не меньше x2»,что равносильно – «Делай пока x1 больше x2».

До этого наше условие (x1 <  x2) проверялось в начале цикла. Но иногда необходимо сначала попробовать, а потом оценить результаты. Для такой последовательности действий используйте следующую конструкцию цикла.

Do

{Тут что-то делаем}

Loop While (x1 < x2) 'Проверяем условие.

Таким образом, у конструкции цикла While есть три похожие структуры.

Подведём итоги по ним.

№ 1

Do While (x1 < x2) 'Переводится как«Делай пока x1 меньше x2»

{Наш код}

Loop

№ 2

Do Until (x1 <  x2)  'Помним, что переводится как«Делай пока x1 больше x2»

{Наш код}

Loop

№ 3

Do ' «Делай»

{Тут что-то делаем}

Loop While (x1 < x2) '«Пока x1 меньше x2»

Здесь можно было поставить точку, если бы не одно НО: особенности использования цикла While в следующем коротеньком посте.

© 2012 - 2017 Всё об Excel
Яндекс.Метрика