Loop Until проверка выполнения условия

Блок - схема для цикла Do - Until с проверкой в конце цикла представлена ан рисунке 14.2.

При работе неопределенного цикла, в цикле что-то должна меняться иначе будет бесконечный цикл. Для остановки бесконечного цикла можно использовать комбинацию клавиш Ctrl + Break или пункт End из меню Run или же просто закрыть при­ложение.

Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru

Рисунок 14.2. Блок-схема цикла Do – Until

Приведем пример. Необходимо из списка подсчитать количество слов до слова «ZZZ».

Sym=0

Do

A$ = InputBox$(«Name»)

Sym = Sym + 1

Loop Until A$ = «ZZZ»

Print «Total»; Sym

Проблема со­стоит в том, что цикл обрабатывается на один проход больше чем необходимо. Пользователь вводит первое имя, и счетчик получит значе­ние «1». Далее, поскольку проверка происходит в конце цикла, счетчик увеличится ещё на одну единицу. Поэтому, когда цикл завершается, значение счетчика становится равным двум вместо одного. Одним из решений этой проблемы является уменьшение значение счетчика на единицу после завершения его работы. Кроме того, Visual Basic для решения поставленной задачи позволяет просто передвинуть проверку условия на начало цикла.

Sym = 0

A$ = InputBox$(«Name»)

Do InputBox$ = «ZZZ»

Sym = Sym + 1

A$ =InputBox$(«Name»)

Loop

Теперь пользователь набирает первое значение перед началом цикла. После этого в программе выполняются первая проверка. Цикл начинает работу и к счетчику добавляется единица, если условие не было выполнено.

Еще одним неопределенным циклом является цикл Do While. Данный цикл отличается от рассмотренных раннее зарезервированным словом While вместо Until. Блок схема для цикла Do -While с проверкой условия в начале цикла представлена на рисунке 14.3.

Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru

Рисунок 14.3. Блок-схема цикла Do – While

Любой цикл Do - Until легко превратить в цикл Do -While изменив логическое выражение на противоположное. Представленные ниже выражения работают одинаковым образом.

Do Do

. . . . . .

Loop Until x$<> « » Loop While x$= « ».

Кроме того, в выражении можно использовать условия And, Or, Not. Например, предположим, что необходимо продолжить работу цикла до тех пор, пока число больше нуля и поле ввода пустое.

Do While Number>0 And Text1.Text= « ».

Задания для самостоятельной работы

Вариант Задание Вариант Задание
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru
Loop Until проверка выполнения условия - student2.ru , где n – целое число Loop Until проверка выполнения условия - student2.ru , где n – целое число
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru , где n – целое число, х – действительное число
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru , где n – целое число, х – действительное число
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru , где n – целое число
Loop Until проверка выполнения условия - student2.ru Loop Until проверка выполнения условия - student2.ru , где n – целое число
Loop Until проверка выполнения условия - student2.ru , где n – целое число, х – действительное число Loop Until проверка выполнения условия - student2.ru , где n – целое число

Лабораторное занятие № 15 (1 час)

Наши рекомендации