Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_rab_po_Visual_Basic3.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
468.99 Кб
Скачать

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

К ЛАБОРАТОРНОЙ РАБОТЕ

Visual Basic

 

Разветвляющиеся структуры. Переключатели.

 

ЦЕЛЬ РАБОТЫ: Изучение способов выбора решения.

НАЗНАЧЕНИЕ РАБОТЫ: Научиться делать выбор из нескольких предложенных вариантов.

СОДЕРЖАНИЕ РАБОТЫ

  1. Разветвляющиеся структуры. Операторы управления.

Зачастую в определённом месте программы необходимо выполнять те или иные операторы, в зависимости от некоторых условий. Эта возможность в Visual Basic реализуется при помощи так называемых управляющих конструкций (или структур), которые в свою очередь состоят из структур принятия решений и циклов.

1.1. Условный оператор If...End If

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

If Логическое_выражение Then Оператор или сложнее If Логическое_выражение Then     Группа_операторов End If

В первом случает оператор может быть только один. Во втором сколько угодно (в том числе и один).

Пример:

If (a = b) And (c <> d) Then     b = d     a = 20 End If

Скобки здесь не обязательны, но они повышают читабельность кода.

1.2. Условный оператор If...Else...ElseIf...End If

Такая конструкция используется для более сложных ветвлений:

If Логическое_выражение 1 Then     Группа_операторов ElseIf Логическое_выражение 2 Then     Группа_операторов ... Else     Группа_операторов End If

Эта схема может быть и в укороченном виде If...Then...Else...End If. При этом операторы после Else выполняются только в том случае, если ни одно из условий не выполнено.

Пример:

If (a = b) Or (c <> d) Then     b = d     a = 20 Else     c = d End If

Выражение c=d будет выполнено только в том случае, если a<>b или c=d.

1.3. Условный оператор Select Case...End Select

Когда существует несколько операторов (или блоков операторов), которые необходимо выполнять в случае истинности того или иного условия, то запись конструкции IfThen окажется достаточно громоздкой. Поэтому в подобных случаях следует использовать структуру Select Case, которая улучшает читаемость программы. Конструкция Select Case "принимает решение" на основе анализа значения одного выражения. При этом это выражение указывается в строке Select Case:

Select Case Анализируемое_выражение

Case Значение№1     Группа операторов Case Значение№2     Группа операторов ... Case Значение№N     Группа операторов Case Else     Группа операторов

End Select

Конечно, анализируемое выражение должно возвращать значение типа, совместимого с типом значений в строка Case.

Пример:

В зависимости от значения переменной iTest, строковой переменной strResult присваиваются различные значения

Select Case iTest

Case 1     strResult = "iTest = 1" Case 2, 3, 4     strResult = "iTest = 2, 3 или 4" Case 5 To 9     strResult = "iTest находится в диапазоне от 5 до 9" Case iTest < 0     strResult = "iTest меньше 0" Case Is > 9     strResult = "iTest больше 9" Case Else     strResult = "iTest равно 0"

End Select

В качестве значения для блока Cаse можно указывать не только одно значение (1), но и несколько разделённых запятой (2,3,4).Можно также задать диапазон (5 То 9) или воспользоваться относительным сравнением (Is>9). Вместо непосредственного проверочного выражения можно использовать ключевое слово Is. Если условию Select Case соответствует несколько блоков Case, то выполняется первый из них:

Select Case a

Case 0

Print “Равно 0”

Case –10 To 10

Print”Между –10 и 10, кроме 0”

End Select

Пример программы.

Программа должна определять количество десятичных цифр в вводимом числе от 0 до 1000. Запуск программы осуществляется щелчком мыши по форме (операторы программы помещаются в процедуру обработки события Form_Click):

Private Sub Form_Click()

Dim X As Integer

Dim Y As Integer 'Объявление переменных

X = InputBox("введите число больше 0 и меньше 1000.")

If X < 10 Then

Y = 1

ElseIf X < 100 Then

Y = 2

Else

Y = 3

End If

If Y > 1 Then Unit = "цифры."

If Y = 1 Then Unit = " цифру."

MsgBox "Введённое число имеет" & Y & Unit

End Sub

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]