Проверка условия «больше или равно»

Иногда приходится проверять, что некоторая величина больше другой или равна ей. Для этой цели используется оператор >=:

 

if x >= 3 Then

MsgBox "x больше или равно 3"

End If

 

Приведенный фрагмент чрезвычайно прост. Если значение x больше или равно 3, программа выводит окно сообщения.

Вероятно, вы уже поняли, как пользоваться этим оператором. Предположим, вы пишете программу для управления пассажирским самолетом. Конечно, если пилот летит слишком быстро, его необходимо предупредить. Превышение скорости может привести к перегрузке и вызвать катастрофические повреждения самолета. Однако на самолете работает ваша (конечно же, превосходная!) программа; она проверяет скорость и убеждается в том, что пилот не превысил максимальную рекомендованную скорость. Выполните следующие действия:

1. Создайте новый проект командой File > New Project.

2. В диалоговом окне New Project выберите значок Standard EXE. Нажмите кнопку ОК.

3. Задайте свойству Name формы значение frmMain, а свойству Caption — значение Датчик скорости.

4. Создайте на форме вертикальную полосу прокрутки и задайте ее свойству Name значение vscThrottle. Расположите полосу в правой части формы и растяните ее на всю высоту формы.

5. Задайте свойству Мах полосы vscThrottle значение 100.

6. Создайте на форме frmMain надпись. Задайте ее свойству Name значение lbl Airspeed, а свойству Caption — значение Текущая скорость:.

7. Дважды щелкните на форме frmMain в конструкторе форм, чтобы открыть окно программы.

8. Вставьте следующий фрагмент в секцию (General)(Declarations) формы frmMain:

 

Option Explicit

Private Throttle As Integer ' Текущее значение газа

Private Const VNE = 427 'Предельная скорость

 

9. Инициализируйте значение газа в следующем фрагменте, который необходимо вставить в процедуру события Load формы frmMain:

 

Private Sub Form_Load()

vscThrottle.Value = 100

End Sub

 

10. Вставьте следующий фрагмент в процедуру события Change элемента vsc

Throttle:

 

Private Sub vsc_Throttle_Change()

Dim ias As Integer ' Текущая скорость

 

' Расстояние до верхней позиции полосы прокрутки

Throttle = 100 - vscThrottle.Value

 

'Вычислить текущую скорость по значению газа

ias = Throttle * 4.5

 

'Обновить датчик скорости

lblAirspeed.Caption = "Текущая скорость: " & Trim$(Str$(ias))

 

'Проверить текущую скорость и убедиться, что она не превышает предельной

If ias >= VNE Then

MsgBox "Уменьшить газ!", vbCritical, "Превышение скорости"

End If

End Sub

 

Эту процедуру стоит рассмотреть подробнее. Первая часть, в которой мы вычисляем значение Throttle, необходима из-за того, что при нахождении бегунка в верхней позиции полосы прокрутки ее свойство Value по умолчанию равно 0. Максимальному газу на самолете, наоборот, соответствует верхнее положение рукоятки («от себя»). Наша программа имитирует самолетную рукоятку газа с помощью полосы прокрутки.

Строка, в которой рассчитывается текущая скорость (ias), не слишком точна. Вычисление скорости настоящего самолета — задача сложная и выходящая далеко за рамки этой книги. Я воспользовался простейшей формулой, которая позволяет самолету разогнаться до 400 узлов. Предупреждение выводится в следующем фрагменте:

 

' Проверить текущую скорость и убедиться,

' что она не превышает предельной

If ias >= VNE Then

MsgBox "Уменьшить газ!", vbCritical, "Превышение скорости"

End If

 

Если текущая скорость превышает предельную или равна ей, программа выводит предупреждающее сообщение.

11. Сохраните и запустите проект. Перемещайте бегунок на полосе прокрутки и следите за тем, как растет текущая скорость. Когда она достигнет предельной, появляется предупреждение (рис. 6.5).

 

 

. 6.5. Превышение предельной скорости

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: