Оператор цикла
Else
Оператор условия
Для реализации алгоритма с ветвлением (см. выше) необходим оператор условия. Его конструкция может иметь одну или несколько строк.
Одна строка (оператор однострочный):
If условие Then группа операторов 1 [Else группа операторов 2]
Несколько строк(оператор многострочный):
If условие Then
Группа операторов 1
Группа операторов 2 ]
End If
Квадратные скобки не ставятся, а лишь показывают то, что находящееся между ними содержимое можно опустить в случае ненадобности.
Работает этот оператор следующим образом:
- Проверяется условие
- Если условие истинно, то исполняется группа операторов 1
- Если условие ложно, то исполняется группа операторов 2
В качестве условия может быть использовано любое логическое выражение со знаком > (больше), < (меньше), = (равно), > = (больше либо равно), < = (меньше либо равно).
Например:
If x>0 Then
MsgBox "Число положительное"
Else
MsgBox "Число отрицательное"
End If
Примеры условий:
x > y
a > = 5 + b
8 + 13 * y < 15 + x
Также в качестве условия можно использовать переменную или арифметическое выражение. Если его результат будет равен 0, то это расценивается как "ложь", остальные значения - "истина":
If a Then
MsgBox "Не равно 0"
Else
MsgBox "Равно 0"
End If
Задание 7. Разработайте программу "Угадайка", которая будет загадывать число, а пользователь пытаться его угадать:
- Создайте следующую форму:
- Дважды щелкните по кнопке Ответ и в процедуре обработки события создайте код, который сравнивает введенное пользователем число в Text1.text с любым фиксированным числом, например, 5. Если числа равны, то в Text2.text должно быть введено "Угадал", в противном случае "Не угадал".
- Запустите программу, введите исходные данные, щелкните по кнопке Ответ, протестируйте программу, остановите, исправьте при необходимости ошибки в программе.
- Доработайте программу так, чтобы она в Text2.text сообщала "Больше", "Меньше", либо "Горячо", если разница между числами меньше 10, и холодно, если 10 и более.
Для организации цикла в программе используют оператор цикла.
Цикл бывает разных типов:
- Цикл со счетчиком, в котором тело цикла выполняется определенное число раз
- Цикл с условием, в котором тело цикла выполняется пока условие истинно.
Рассмотрим первый тип операторов цикла.
Цикл со счетчиком:
For Счетчик = Начальное значение To конечное значение [Step Шаг].
Тело цикла ( операторы , т.е. последовательность действий выполняющаяся несколько раз)
Next Счетчик
Условные обозначения:
- Счетчик - это переменная, которая содержит текущее значение цикла. При каждом обороте цикла Счетчик увеличивается на Шаг.
- Начальное значение, Конечное значение, Шаг - это могут быть числа, выражения, переменные или свойства объектов, содержащие соответствующие числовые значения.
- Счетчик начинает отсчет от Начального значения, но не может превысить Конечного значения.
- Шаг можно опустить, тогда он будет равен 1.
- Шаг может быть < 0, тогда значение Счетчика будет убывать, а Начальное значение должно быть больше Конечного значения.
Работа оператора:
- При выполнении строки 1 переменная Счетчик принимает Начальное значение.
- Выполняются операторы тела цикла.
- При выполнении 3-ей строки Счетчик увеличивается на Шаг.
- Если Счетчик меньше или равен Конечному значению, то снова выполняются операторы цикла, Счетчик увеличивается (см. пункты 2, 3).
- Если Счетчик превысил Конечное значение, то выполняется строка, следующая за строкой Next.
Пример:
For i=1 To 10 Step 2
Print i
Next i
Такой цикл повторится 5 раз. Переменная i будет принимать значения от 1 до 10 с шагом 2, то есть 1, 3, 5, 7, 9. Эти числа будут напечатаны на форме с помощью оператора Print.
Практическое задание №8.
1. Разработайте программу, вычисляющую сумму чисел от 1 и по порядку до указанного пользователем числа.
1. Создайте следующую форму:
2. Дважды щелкните по кнопке Вычислить и в процедуре обработки события напишите код, который суммирует числа от 1 и до введенного пользователем в Text1.text, то есть если пользователь введет число 5, то программа суммирует: 1+2+3+4+5. Суммирование выполните с помощью цикла, в теле которого накапливайте значение: S = S + число.
Результат выведите в Text2.text.
3. Запустите программу, введите исходные данные, щелкните по кнопке Вычислить, протестируйте программу, остановите, исправьте при необходимости ошибки в программе.
2. Доработайте программу так, чтобы она вычисляла факториал, т.е. 12+22+32+....
Доработайте программу так, чтобы суммирование велось не с 1, а с любого числа, введенного пользователем, т.е. пользователь будет вводить два числа: меньше и больше ("от" и "до").
Цикл с условием.Часто бывает так, что необходимо повторить тело цикла , но заранее неизвестно какое количество раз. В таких случаях количество повторений зависит от некоторого условия.
Цикл реализуется с помощью спомощью инструкции (оператора)
Do ….. Loop
Условие выхода из цикла можно поставить вначале , перед телом цикла . Такой цикл будет называться цикл с предусловием.