Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Циклические алгоритмические структуры




Упражнения

Циклические алгоритмические структуры

Циклические алгоритмические структуры

Занятие 9

 

В алгоритмах обработки информации и реализующих их программах широко используются циклы – повторяющиеся оди­наковые вычисления. В программах Visual Basic для выполнения повторяющихся действий используются циклы. Они бывают следующих типов:

· For...Next

· While...Wend

· Do...Loop

Рассмотрим перечисленные конструкции.

Цикл с использованием конструкции For...Next

Конструкция For...Next выполняет последовательность команд определенное число раз. Такую конструкцию называют циклом, а выполняемые ею программные коды – телом цикла.

Синтаксис конструкции For...Next следующий:

 

For счетчик = начЗначение То конЗначение [Step шаг]

[операторы]

Next [счетчик]

 

Первый аргумент конструкции – счетчик – определяет имя переменной, которая будет "считать" количество выполнений цикла. Параметр начЗначение указывает числовое значение, которое присваивается переменной-счетчику перед первым проходом цикла. После каждого прохода цикла значение счетчика изменяется на 1 или на величину шаг, указанную за ключевым словом step. Цикл выполняется до тех пор, пока значение счетчика меньше (больше при отрицательном шаге) или достигает конечного значения, указанного после ключевого слова То. В противном случае цикл завершается, и выполняются операторы, следующие за Next.

Ключевое слово Next обозначает конец тела цикла и является обязательным.

Например:

 

For n = 1 То 10 Step 2

m = 2*n

Next

 

Здесь цикл выполняется пять раз при значениях счетчика n, равных 1, 3, 5, 7 и 9.

Шаг изменения счетчика может быть отрицательным. Например:

 

For x = 100 То 0 Step -10

y = x*x

Next

 

В этом случае цикл будет выполняться до тех пор, пока x больше или равен 0. Если значение шага цикла отрицательно, то начальное значение счетчика должно быть больше конечного.

Ключевое слово step можно опустить. В этом случае значение шага по умолчанию принимается равным 1.

Цикл с использованием конструкции While…Wend

Используется в том случае, когда число повторений операторов тела цикла заранее неизвестно.

 

While условие

[операторы]

Wend

 

Если результатом проверки условия является значение Истина, то выполняются операторы, и вновь проверяется условие.

Если результатом проверки условия является значение Ложь, то осуществляется переход на оператор, расположенный после служебного слова Wend.

Таким образом, цикл, задаваемый конструкцией While...Wend, выполняется до тех пор, пока истинно задаваемое в цикле условие.

 

a = 1: z = 0

While a <= 10

z = z + a

a = a + 1

Wend

 

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

Примеры:

1) a = 1: z = 0

While a <= 10

z = z + a

a = a + 1

Wend

 

2) Dim name As String

name = ""

While name = ""

name = InputBox("Введите имя")

Wend

Цикл будет продолжаться до тех пор, пока не будет что-то введено в качестве имени.

 

 

Цикл с использованием конструкции Do...Loop

Оператор Do…Loop повторяет выполнение операторов цикла, пока Условие имеет значение Истина (случай While) или пока оно не примет значение Истина (случай Until).

Синтаксис:

1) Do While условие

[операторы]

Loop

 

Условие проверяется до входа в цикл. Если результатом проверки условия является значение Истина, то выполняются операторы цикла, и вновь проверяется условие. Если результатом проверки условия является значение Ложь, то происходит выход из цикла и переход на оператор, расположенный после служебного слова Loop.

Возможна ситуация, при которой операторы цикла не выполняются ни разу. Она возникает в том случае, если при первой проверке условия оно оказывается ложным.

 

2) Do

[операторы]

Loop While условие

 

При использовании этой формы оператора тело цикла выполняется хотя бы один раз, после чего осуществляется проверка заданного условия. Если результатом проверки условия является значение Истина, то вновь выполняются операторы цикла и проверяется условие. Если результатом проверки условия является значение Ложь, то происходит выход из цикла.

 

3) Do Until условие

[операторы]

Loop

 

4) Do

[операторы]

Loop Until условие

 

Эти две разновидности конструкции цикла Do...Loop аналогичны рассмотренным ранее, но отличаются тем, что цикл выполняется до тех пор, пока условие ложно, а не истинно.

Примеры использования конструкций приведены ниже.

 

1) a = 1: z = 0

Do While a<=10

z = z + a

a = a + 1

Loop

2) a = 1: z = 0

Do

z = z + a

a = a + 1

Loop While a<=10

 

3) a = 1: z = 0

Do Until a>10

z = z + a

a = a + 1

Loop

4) a = 1: z = 0

Do

z = z + a

a = a + 1

Loop Until a>10




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 552; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.