Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Назначение и способы реализации на VBA циклов со счетчиком. Синтаксис оператора for..

Простейшие методы сортировки: пузырьковая, поиском максимального элемента. | Бытовые примеры стека. | Вопрос 21. Графы. Алгоритм поиска достижимых вершин графа. | Вопрос 15. Процедуры.. |


Читайте также:
  1. BTL – отличные от ATL способы коммуникации
  2. F48.1 Синдром деперсонализации-дереализации
  3. IX. Природные и техногенные опасные процессы и способы их ликвидации.
  4. VII. ТРЕБОВАНИЯ К УСЛОВИЯМ РЕАЛИЗАЦИИ ОСНОВНЫХ ОБРАЗОВАТЕЛЬНЫХ ПРОГРАММ МАГИСТРАТУРЫ
  5. Административные процедуры как форма реализации компетенции органов внутренних дел.
  6. Административные реформы: цели, задачи и основные направления реализации.
  7. АДСОРБЕРЫ С ПСЕВДООЖИЖЕННЫМ СЛОЕМ АДСОРБЕНТА. НАЗНАЧЕНИЕ, УСТРОЙСТВО И ПРИНЦИП ДЕЙСТВИЯ.

Цикл означает повторяющийся набор действий.Эти циклы используются тогда, когда число повторений известно заранее – количество шагов задано, например, 20, 100, N, или

может быть вычислено как результат какого-либо выражения до исполнения

цикла. Параметром в цикле является счетчик шагов.

Счетчик (это значение специально выделенной переменной) может изменяться на единицу с каждым шагом или получать некоторое заданное приращение, например, 0.15. Цикл тогда исполняется до тех пор, пока значение счетчика не достигнет указанного в заголовке цикла значения. Общий вид оператора:

For Счетчик = Начальное значение To конечное значение [Step Шаг].

Операторы тела цикла (выполняются несколько раз) …

Next Счетчик

 

Пример 1:

For i=1 To 10

Msgbox(i)

Next i

По умолчанию шаг равен 1.

Пример 2:

For i=1 To 10 Step 2

Msgbox(i)

Next i

Такой цикл повторится 5 раз. Переменная i будет принимать значения от 1 до 10 с шагом 2, то есть 1, 3, 5, 7, 9. Эти числа будут выведены пользователю в диалоговых окнах.

Если не видим смысла дальнейшей работы счетчика(когда напр. I>верх границы)мы исп.Exit For,т.е выход.(между For и MsgBox If x>100 ниже Exit for)

 

5. Назначение и способы реализации на VBA циклов «с предусловием» и «постусловием.. Циклы с условием используются в тех случаях, когда повторяющиеся действия нужно выполнять только при определенных условиях. Количество итераций не определено и в общем случае может быть равно нулю (в частности, для циклов с предусловием).

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

- Четыре вида циклов Do..Loop, которые различаются типом проверяемого условия и временем выполнения этой проверки;

- Непрерываемый цикл While … Wend.

Цикл Do While … Loop - типичный цикл с предусловием. Условие проверяется до того, как выполняется тело цикла. Цикл продолжает свою работу, пока это <условие> выполняется (т.е. имеет значение True). Так как проверка выполняется в начале, то тело цикла может ни разу не выполниться.

Формат цикла Do While … Loop:

Do While <условие>

<блок операторов>

Loop

Оператор Do … Loop While предназначен для организации цикла с постусловием. Условие проверяется после того, как тело цикла, будет выполнено хотя бы один раз. Цикл продолжает свою работу, пока <условие> остается истинным.

Формат цикла Do … Loop While:

Do

<блок операторов>

Loop While <условие>

Циклы Do Until … Loop и Do … Loop Until являются инверсиями ранее рассмотренных циклов с условием. В общем случае они работают аналогично, за исключением того, что тело цикла выполняется при ложном условии (т.е. <условие>=False).

Формат цикла Do Until … Loop:

Do Until <условие>

<блок операторов>

Loop

Формат цикла Do … Loop Until:

Do

<блок операторов>

Loop Until <условие>

Цикл While … Wend также относится к циклам с условием. Данный оператор полностью соответствует структуре Do While … Loop.

Формат цикла While … Wend:

While <условие>

<блок операторов>

Wend

Отличительной особенностью этого оператора является невозможность принудительного завершения (прерывания) тела цикла (оператор Exit Do не работает в цикле While … Wend).

Для досрочного завершения итерации и выхода из цикла применяется оператор Exit. Этот оператор применим в любой циклической структуре, кроме While... Wend. Общий синтаксис использования Exit для прерывания цикла таков:

<начало_цикла>

[<блок операторов 1>]

Exit (For | Do)

[<блок операторов 2>]

[Exit (For | Do)]

...

<конец_цикла>

При выполнении оператора Exit цикл прерывается, и управление передается оператору, следующему за оператором <конец_цикла>. В теле цикла может присутствовать несколько операторов Exit.

Пример. Вычислить сумму чисел от 0 до 100.

Решение 1. С помощью цикла Do While … Loop

Dim x As Double, s As Double

x = 0

s = 0

Do While x <= 100

s = s + x

x = x + 1

Loop

5.. MsgBox ("s=" + Str(s))

Решение 2. С помощью цикла Do … Loop Until

Dim x As Double, s As Double

x = 0

s = 0

Do

s = s + x

x = x + 1

Loop Until x > 100

MsgBox ("s=" + Str(s))

Решение 3. С помощью цикла For … Next

Dim x As Double, s As Double

s = 0

For x = 0 To 100

s = s + x

Next x

MsgBox ("s=" + Str(s))

Решение 4. С помощью цикла While … Wend

Dim x As Double, s As Double

x = 0

s = 0

While x <= 100

s = s + x

x = x + 1

Wend

MsgBox ("s=" + Str(s))

 

6. Программирование задач, требующих сочетания цикла и ветвления. Примеры.

Программа для нахождения максимального значения массива.

Sub Кнопка()
Dim n As Integer ‘Размер массива
Dim a() As Integer ‘Это наш рабочий массив
Dim i As Integer, MX As Integer, iMX AS Integer
n=cells(1,1)
ReDim a(1 to n)
For i=1 to n
a(i)=Int(10-20*Rnd):cells(i,2)=a(i)
Next i
MX =a(1): iMX=1 ’ iMX - Порядковый номер максимального элемента
For i=2 to n —-------------цикл
If a(i)>MX then —----------ветвление
MX=a(i)
iMX=i
Cells(1,3)=iMX:Cells(1,4)=MX
End if
Next i
End Sub

 


Дата добавления: 2015-11-13; просмотров: 54 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Властивості інформації, їх вплив на прийняття управлінського рішення.| Иллюстрация сочетания цикла и ветвления ..методом дихотомии (или методом касательных).

mybiblioteka.su - 2015-2024 год. (0.008 сек.)