- •Visual Basic for Applications
- •1. Основы языка программирования Visual Basic 5
- •1. Основы языка программированияVisualBasic
- •1.1. Общие сведения оVisualBasic
- •1.2. Среда vb, инструментальные средства. Разработка проектов
- •1.3. Типы данных. Константы и переменные
- •1.4. Операции
- •1.5. Ввод и вывод данных
- •1.6. Управляющие операторы
- •1.7. Массивы
- •1.8. Примеры программ работы с числами
- •1.9. Обработка строк. Примеры
- •1.10. Математические вычисления. Другие операторы и функции
- •1.11. Процедуры и функции. Примеры
- •1.12. Работа с файлами
- •2. ОсновыVba
- •3. Практические задания
- •3.1. Практическое задание №1. Знакомство сVba
- •3.2. Практическое задание №2. Линейное программирование
- •3.3. Практическое занятие №3. Программирование ветвлений
- •3.4. Практическая работа №4. Программирование повторений
- •3.5. Практическая работа №5. Работа с массивами
- •3.6. Практическая работа №6. Процедуры и функции
- •3.7. Практическое занятие №7. Файлы. Последовательный доступ
- •3.8. Практическое занятие №8. Файлы с произвольным доступом
- •Задания самостоятельной работы
- •4.1. Линейное программирование
- •4.2. Программирование ветвлений
- •4.3 Программирования циклов
- •4.4. Массивы
- •4.5. Файлы
- •5. Задания для контрольной работы
- •5.1. Для студентов очной формы обучения
- •5.1.1. Линейное программирование
- •5.1.2. Программирование ветвлений
- •5.1.3. Программирование циклов
- •5.1.4. Массивы
- •5.2. Для студентов заочной формы обучения
- •Список литературы
1.6. Управляющие операторы
Условный оператор:
If УСЛОВИЕ Then ОПЕРАТОР
где ОПЕРАТОР – любой оператор, который выполняется только в том случае, когда выражение УСЛОВИЕ имеет значение ИСТИНА, иначе данный оператор пропускается; затем, в обоих случаях, выполняется оператор, следующий за условным оператором; например,
If X > 3 Then Y = Y + 1
A = Y * (B + C)
Оператор условного перехода:
If УСЛОВИЕ Then
ОПЕРАТОР 1-1
...
[ОПЕРАТОР 1-n ]
[ Else
ОПЕРАТОР 2-1
...
[ОПЕРАТОР 2-m ] ]
End If
данный оператор состоит из Then-ветви с операторами 1-1...1-n и из Else-ветви, которая содержит операторы 2-1...2-m. Если условие, заданное в операторе If истинно, то выполняется Then-ветвь. В противном случае, выполняются операторы Else-ветви. После выполнения одной из ветвей работа программы продолжается с оператора, следующего за End If (если ход выполнения программы не изменяется оператором GoTo). Если отсутствует Else-ветвь и условие в операторе If ложно, то работа программы всегда начинается с оператора, следующего за End If.
Примеры:
1) If X > 3 Then
Y = 1
X = X + 1
End If
2) If Y = 1 Then
Z = X
Else
Z = X - 1
End If
Операторы условного перехода могут быть вложенными один в другой, при этом, в частности, должна использоваться конструкция следующего вида:
If УСЛОВИЕ Then
ОПЕРАТОР(Ы)
Else If УСЛОВИЕ Then
ОПЕРАТОР(Ы)
Else
ОПЕРАТОР(Ы)
End If
Оператор безусловного перехода GoTo:
GoTo МЕТКА_ПЕРЕХОДА
МЕТКА_ПЕРЕХОДА – объявленная в программе метка; метка объявляется произвольным именем, заканчивающимся двоеточием, например,
GoTo M1
X = 1…..‘ оператор пропускается
М1: X = 2.
Оператор цикла While:
While УСЛОВИЕ
ОПЕРАТОР_1
...
[ОПЕРАТОР_n]
Wend
До тех пор, пока условие соблюдается, выполняются шаги цикла, каждый из которых состоит в выполнении операторов от 1-го до n-го (тело цикла). Среди выполняемых операторов должен находиться хотя бы один, который изменяет значение переменной, входящей в условие заголовка цикла (While УСЛОВИЕ), иначе цикл будет бесконечным. При нарушении условия в заголовке цикла выполняется оператор, следующий за Wend. Пример:
I = 1: x = 0
While i < 11 ‘ Определение суммы 10-ти чисел от 1до 10
x = x + 1
i = i + 1 ‘ Изменение значения переменной в заголовке цикла
Wend
Оператор цикла Do:
1) вариант 1
Do
ОПЕРАТОРЫ
[Exit Do]
Loop While | Until УСЛОВИЕ
2) вариант 2
Do While | Until УСЛОВИЕ
ОПЕРАТОРЫ
[Exit Do]
Loop
где While | Until – способ проверки условия выполнения цикла; при использовании While цикл выполняется, пока условие соблюдается; при использовании Until цикл выполняется, пока условие не соблюдается; Exit Do – преждевременное прерывание цикла; управление данному оператору должно передаваться при выполнении определенного условия, проверяемого одним или несколькими операторами тела цикл. После завершения цикла или при преждевременном его прерывании работа продолжается с оператора, следующего после Loop.
В обоих вариантах среди операторов тела цикла должен находиться хотя бы один, который изменяет значение переменной, входящей в условие цикла While | Until УСЛОВИЕ (также как в операторе цикла While).
Оператор цикла For:
For СЧЕТЧИК = НАЧАЛЬНОЕ_ЗНАЧЕНИЕ To КОНЕЧНОЕ_ЗНАЧЕНИЕ [Step ШАГ]
ОПЕРАТОР_1
...
[ОПЕРАТОР_n]
[Exit For]
Next СЧЕТЧИК
где СЧЕТЧИК – арифметическая переменная, которая изменяется при повторении цикла (управляющая переменная цикла); НАЧАЛЬНОЕ_ЗНАЧЕНИЕ – арифметическое выражение, задающее начальное значение счетчика; КОНЕЧНОЕ_ЗНАЧЕНИЕ – арифметическое выражение, задающее конечное значение счетчика; ШАГ – арифметическое выражение, задающее приращение значения счетчика после каждого шага цикла (по умолчанию это +1); Exit For – прерывание выполнения цикла (см. пояснение к Exit Do оператора цикла Do). Работа продолжается с оператора, следующего за Next. Пример:
x = 0
For i = 1 To 10 Step 1
x = x + 1
Next i
Оператор выбора (переключатель) Select Case:
Select Case ПЕРЕМЕННАЯ
Case СРАВНЕНИЕ_1
ОПЕРАТОРЫ_1
[ Case СРАВНЕНИЕ_2
ОПЕРАТОРЫ_2 ]
...
[ Case Else
ОПЕРАТОРЫ ]
End Select
Перед выполнением переключателя ПЕРЕМЕННАЯ в его заголовке должна получить от предшествующих операторов определенное значение. Сначала выполняется СРАВНЕНИЕ_1, если результат истинен, выполняются ОПЕРАТОРЫ_1, после чего программа выполняется с оператора, следующего за End Select. Если результат СРАВНЕНИЯ_1 ложен, то выполняется СРАВНЕНИЕ_2 и т.д. Если ни для одной Case-ветви результат сравнения не оказался истинным, выполняются операторы ветви Case Else (если в данной ситуации этой ветви нет, то будет выдана ошибка). Допускается использование вложенных операторов Select Case.