Оператор do while: Оператор do-while (C) | Microsoft Learn

Цикл Do While | Документация AnyLogic

  • Свойства

Визуальное задание алгоритмов с помощью диаграмм действийРедактирование блоков диаграммы действийЦикл WhileСоздание диаграммы действий. Учебное пособие.

Элемент диаграммы действий.

Цикл Do While является одним из трех блоков диаграммы действий, предназначенных для реализации циклов итераций. Циклы необходимы для того, чтобы повторить некоторые действия несколько раз. Другие два доступных цикла — это Цикл For и Цикл While.

Цикл Do While выполняется до тех пор, пока заданное для этого цикла условие будет истинно (принимает значение true). Как только условие принимает значение «ложно», цикл завершается и идёт переход к следующему блоку диаграммы действий. Вы можете задать действия, которые вы хотите выполнить на каждой итерации цикла, путем добавления соответствующих блоков диаграммы действий внутрь блока Цикл Do While.

Полную информацию об операторе Java Цикл Do While вы можете получить здесь.

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

Чтобы получить доступ к элементам, которые потребуются вам для создания диаграммы действий, активируйте палитру Диаграмма действий.

Чтобы вставить блок «цикл do while» в диаграмму действий

  1. Перетащите элемент Цикл Do While из палитры Диаграмма действий на диаграмму типа агентов. Перетаскивая блок, отпустите кнопку мыши тогда, когда курсор мыши будет находиться над точкой, которая находится в той ветви диаграммы действий, куда вы хотите поместить данный блок (при наведении курсора эта точка должна подсветиться зеленым цветом).
  2. В выбранной вами ветви диаграммы действий должен появиться новый блок.
  3. Перейдите в панель Свойства.
  4. В поле Условие введите условие — логическое выражение, которое будет вычисляться для проверки того, должны ли действия этого цикла выполниться еще раз.
  5. Вставьте другие блоки диаграммы действий, задающие те действия, которые вы хотите выполнить на каждой итерации цикла, в соответствующие точки вставки, находящиеся на диаграмме внутри блока цикла Do While.
Основные

Условие — Логическое условие, которое будет вычисляться для проверки того, должны ли действия этого цикла выполниться еще раз.

Специфические

Имя — Здесь вы можете указать имя объекта.

Метка — Здесь вы можете ввести комментарий к этому блоку, объясняющий смысл этого цикла. Комментарий будет отображен внутри блока вместо Java кода, соответствующего этому циклу.

Цвет заливки — Задает цвет заливки блока. Щелкните мышью внутри элемента управления и выберите нужный цвет из списка наиболее часто используемых цветов или же выберите любой другой цвет с помощью диалога Цвета.

Как мы можем улучшить эту статью?

Программирование циклов, цикл do while

Организация выполнения повторяющихся действий в VBA может быть выполнена несколькими операторами, которые условно разделяют на цикл-пока, цикл-до, цикл-для.

Оператор While

Общий вид оператора While:

While выражение
[инструкции]
Wend

Оператор While предназначен для организации цикла-пока.

Инструкции будут выполняться пока выражение будет истинно.

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

Решение.

Sub сумма1()
Dim x, s As Double
 
x = 0
s = 0
While x <= 100
s = s + x
x = x + 1
Wend
MsgBox ("s=" + Str(s))
 
End Sub

Пояснение решения.

В переменной s накапливается значение суммы.

Оператор Do While

Общий вид оператора Do While:

Do [While выражение]
[инструкции]
[Exit Do]
[инструкции1]
Loop

Оператор Do While предназначен для организации цикла-пока.

Инструкции будут выполняться пока выражение будет истинно. Конструкция Exit Do предназначена для преждевременного выхода из цикла.

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

Решение.

Sub сумма2()
Dim x, s As Double
 
x = 0
s = 0
 
Do While x <= 100
s = s + x
x = x + 1
Loop
 
MsgBox ("s=" + Str(s))
 
End Sub

Оператор Do Loop Until

Общий вид оператора Do Loop Until:

Do
[инструкции]
[Exit Do]
[инструкции1]
Loop [Until выражение]

Оператор Do Loop Until предназначен для организации цикла-до.

Инструкции будут выполняться до момента, когда выражение станет истинным. Конструкция Exit Do предназначена для преждевременного выхода из цикла.

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

Решение.

Sub сумма3()
Dim x, s As Double
x = 0
s = 0
 
Do
s = s + x
x = x + 1
Loop Until x > 100
 
MsgBox ("s=" + Str(s))
 
End Sub

Оператор For

Общий вид оператора For:

For счетчик = начальное_знач To конечное_знач [Step шаг]
[инструкции]
[Exit For]
[инструкции1]
Next [счетчик]

Оператор For предназначен для организации цикла-для.

Инструкции будут выполняться определенное количество раз, задаваемое в счетчик, начиная с начального значение (начальное_знач) до конечного значения (конечное_знач) с некоторым шагом (шаг). Конструкция Exit For предназначена для преждевременного выхода из цикла.

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

Решение.

Sub сумма4()
Dim x, s As Integer
 
s = 0
For x = 0 To 100
s = s + x
Next x
 
MsgBox ("s=" + Str(s))
 
End Sub

Примеры решения задач

Пример 1. 2 Next x End Sub

Пример 2

Пример 2. Составить программу определения наибольшего общего делителя (НОД) двух натуральных чисел.

Решение.

Наибольший общий делитель двух натуральных чисел — это самое большое натуральное число, на которое они делятся. Например, у чисел 12 и 18 наибольшие делители: 2, 3, 6. наибольшим общим делителем является число 6. Это записывается так:

НОД(12, 18) = 6.

Идея алгоритма Евклида для нахождения НОД основана на том свойстве, что если M>N, то

НОД(M, N) = НОД(M-N, N).

Иначе говоря, НОД двух натуральных чисел равен НОД их положительной разности и меньшего числа.

Sub Евклид()
Dim M, N, NOD
 
M = Cells(1, 2)
N = Cells(2, 2)
 
While M <> N
 
If M > N Then
M = M - N
Else
N = N - M
End If
Wend
 
NOD = M
Cells(3, 2).Value = NOD
 
End Sub

Пример 3

Пример 3. Построить график функции: улитку Паскаля.

Улитка Паскаля задается следующим образом:

x=A*cos(t)+B*cos(t)
y=A*cos(t)sin(t)+B*sin(t), A>B, B>0, 0<=t<2*Pi

Решение.

1. Подготовить данные в электронной таблице

2. Ввести код программы.

Sub улитка_паскаля()
 
Dim a, b, Pi, t As Double
Dim i As Integer
 
a = Cells(1, 2)
b = Cells(2, 2)
Pi = 3.14
i = 2
t = 0
 
While t <= 2 * Pi
x = a * Cos(t) + b * Cos(t)
y = a * Cos(t) * Sin(t) + b * Sin(t)
 
Cells(3, i).Value = x
Cells(4, i).Value = y
t = t + 0.1
i = i + 1
Wend
 
End Sub

3. Построить график с помощью мастера диаграмм, выбрав точечную диаграмму.

4. Изменить данные a и b.

A=2
B=1

5. Перезапустить макрос.

Цикл выполнения VBA | Как использовать цикл выполнения в Excel VBA?

Цикл Do While означает выполнение чего-либо, пока условие истинно. Это похоже на логическую функцию, которая работает на основе ИСТИНА или ЛОЖЬ. Таким образом, если условие TRUE, он продолжит выполнение оператора внутри цикла, но если условие сразу FALSE, он выйдет из оператора Do While. Работа цикла VBA Do While показана на рисунке ниже.

Синтаксис цикла Do While в VBA Excel

Цикл Do While имеет два вида синтаксиса в Excel VBA.

Оба выглядят очень похоже, и в них есть одно простое различие.

В первом синтаксисе цикл «Do While» сначала проверяет условие и дает результат условия ИСТИНА или ЛОЖЬ. Если условие TRUE, он выполнит код и выполнит указанную задачу, а если условие FALSE, то выйдет из цикла.

Во втором синтаксисе цикл «Do» сначала выполняет код, а затем проверяет, является ли условие ИСТИННЫМ или ЛОЖНЫМ. Если условие TRUE, он снова вернется и выполнит ту же задачу. Если условие FALSE, то оно сразу выйдет из цикла.

Пример цикла Do While в Excel VBA

Если вы ничего не поняли в теоретической части, не о чем беспокоиться. Я объясню вам простой набор примеров, чтобы иметь представление об этом цикле.

Вы можете скачать этот шаблон Excel цикла VBA Do While здесь — Шаблон Excel цикла VBA Do While

Теперь мы выполним задачу по вставке первых 10 серийных номеров из ячеек A1 в A10. Выполните следующие шаги, чтобы применить цикл «Do While».

Шаг 1:

Сначала создайте имя макроса.

Код:

 Sub Do_While_Loop_Example1()

End Sub 

Шаг 2:

Определите переменную как «Длинный». Я определил «k» как длинный тип данных.

Код:

 Sub Do_While_Loop_Example1()

Dim k As Long

End Sub 

Шаг 3:

Теперь введите слово «Do While». И после запуска имени цикла введите условие как «k <= 10».

Код:

 Sub Do_While_Loop_Example1()

Dim k As Long

Делать, пока k <= 10

End Sub 

Шаг 4:

Теперь, используя свойство CELLS, давайте вставим серийные номера.

Код:

 Sub Do_While_Loop_Example1()

Dim k As Long

Делать, пока k <= 10
     Ячейки (к, 1). Значение = к
End Sub 

Примечание.

Здесь переменная «k» начинается с 1, поэтому первое значение k равно 1. Везде, где есть «k», оно равно 1.

Шаг 5:

Теперь закройте цикл, введя слово «LOOP».

Код:

 Sub Do_While_Loop_Example1()

Dim k As Long

Делать, пока k <= 10
     Ячейки (к, 1). Значение = к
Петля

End Sub 

Хорошо, мы закончили. Для лучшего понимания давайте проверим этот код один за другим, один раз нажав клавишу F8.

При первом нажатии клавиши F8 имя макроса будет выделено желтым цветом.

Теперь еще раз нажмите клавишу F8; он перейдет к циклу Do While. Поместите курсор на «k» и посмотрите, что это за значение.

Итак, К=0. Причина, по которой «k» теперь равна нулю, потому что цикл здесь не запускается. Нажмите F8 еще раз и посмотрите, какое значение.

Тем не менее, значение «k» равно нулю. Хорошо, давайте сейчас сделаем одну вещь, остановим выполнение макроса и присвоим значение «k» как 1 перед запуском цикла.

Теперь внутри цикла переназначьте значение k как k = k +1.

Теперь запустите процесс выполнения кода построчно, нажав клавишу F8. Начните нажимать F8 и посмотрите, какое значение будет при выполнении цикла «Do While».

Код:

 sub do_while_loop_example1 () 

DIM K As Long

K = 1

DO, пока K = 10
CLUT Петля

End Sub

Итак, значение «k» равно 1. Где бы ни было «k», там значение равно 1. Итак, строка кода Cells (k, 1). Значение = k равно:

Ячейки (1, 1). Значение = 1 , т. е. значение строки 1 и столбца 1 (ячейка A1) равно 1.

Нажмите клавишу F8 и выполните действие внутри петля.

Теперь посмотрим на значение в ячейке A1.

Итак, мы получили значение 1 в ячейке A1.

Теперь выполните следующую строку, нажав клавишу F8, и посмотрите, какое значение имеет «k».

Итак, теперь значение k равно 2. Итак, где бы ни было k, оно равно 2.

Нажмите клавишу F8; теперь код вернется, чтобы проверить значение k.

Теперь нажмите еще два раза клавишу F8 и посмотрите, какое значение находится в ячейке A2.

Таким образом, Do While Loop продолжает выполнять задачу вставки серийных номеров, пока значение k не достигнет 11. Теперь я уже выполнял построчно, пока значение k не станет равным 10.

Теперь, если я нажму еще раз клавишу F8, он вернется к проверке условия, но не выполнит строку кода, потому что значение k теперь больше 10.

Если я нажму клавишу F8, он сразу выйдет из цикла и перейдет к End Sub.

Окончательный вывод выглядит следующим образом.

Таким образом, VBA Do While Loop может использоваться для выполнения одного и того же набора задач до тех пор, пока данное условие не станет ИСТИННЫМ.

Что нужно помнить

  • Цикл VBA Do While выполняет задачу до тех пор, пока условие не станет ИСТИННЫМ.
  • Мы также можем проверить условие в начале или в конце цикла.
  • Условие движения ЛОЖЬ; он выйдет из цикла и не будет выполнять задачу.

Рекомендуемые статьи

Это руководство по циклу Do While в VBA. Здесь мы обсудили, как использовать цикл выполнения в Excel VBA вместе с некоторыми практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть другие наши рекомендуемые статьи —

  1. Функция VBA
  2. XML-код VBA
  3. ВПР VBA
  4. Ошибка VBA

Операторы DO UNTIL и DO WHILE

DO WHILE

Значение истинности условного выражения определяет, выполняются ли операторы

оператор-1

-3 -3 4n 900.

Оператор-1

...

Оператор-n

представляет любое число из

Easytrieve

заявления. Когда условное выражение истинно, операторы выполняются, и программа переходит обратно, чтобы проверить условное выражение. Программа продолжает выполняться до тех пор, пока условное выражение истинно. Когда условное выражение ложно, программа переходит к оператору, следующему за END-DO.

DO UNTIL

Оператор-1

по

оператор-n

выполняются. Истинность условного выражения определяет, будет ли группа операторов выполняться снова. Когда условное выражение истинно, программа переходит к оператору, следующему за END-DO. Когда условное выражение ложно, программа переходит обратно для выполнения инструкций. Программа продолжает цикл до тех пор, пока условное выражение не станет истинным.

Этот оператор имеет следующий формат:

 

{В ТО ВРЕМЯ КАК} DO { }

условное

-

выражение

{ДО ТОГО КАК}

выписка

-1 ...

выписка

-

n

END-DO

Следующая диаграмма иллюстрирует логику операторов DO и END-DO:

{WHILE} или {UNTIL}

Цикл WHILE оценивает условие в начале группы операторов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *