- •Лабораторная работа №1 Интегрированная среда разработки vba
- •Среда vba
- •Пример разработки приложения
- •Программирование алгоритмов линейной структуры
- •Типы данных
- •Комментарии
- •Оператор присваивания
- •Ввод данных
- •Вывод данных
- •Программирование линейного алгоритма
- •Лабораторная работа №3 Алгоритмизация и программирование разветвляющихся вычислительных процессов
- •Изучение правил построения алгоритма разветвляющейся структуры и записи программы с использованием оператора If…Then…Else.
Лабораторная работа №3 Алгоритмизация и программирование разветвляющихся вычислительных процессов
Цель:
Изучить процесс построения алгоритмов разветвляющейся структуры. Научиться программировать разветвляющиеся алгоритмы с помощью операторов If…Then…Else
Результат обучения:
После успешного завершения занятия пользователь должен:
уметь составлять алгоритмы разветвляющейся структуры;
знать синтаксис операторов If…Then…Else;
уметь записывать алгоритмы разветвляющейся структуры на языке VBA;
Изучение правил построения алгоритма разветвляющейся структуры и записи программы с использованием оператора If…Then…Else.
Алгоритм решения задачи, как правило, представляет собой совокупность стандартных алгоритмических структур. Одной из таких структур является развилка (полная и неполная). Разветвление применяется, когда в зависимости от условия нужно выполнить либо одно, либо другое действие.
Для программирования проверки условия и выбора действия в зависимости от условия используются условные операторы.
Условный оператор:
If <логическое выражение> Then
<Процесс 1>
Else
<Процесс 2>
End If
Если логическое выражение имеет значение True, то выполняется <Процесс 1>. Если логическое выражение имеет значениеFalse, то выполняется < Процесс 2>.
Под обозначением < Процесс 1> и < Процесс 2> понимается последовательность операторов языка VBA.
Условный оператор может использоваться без части Else. В этом случае реализуется структура «развилка неполная».
If <логическое выражение> Then
<Процесс >
End If
Если логическое выражение имеет значение True, то выполняется оператор, стоящий за служебным словомThen, иначе осуществляется переход к оператору, следующему за условным оператором.
Пример 1.
Условие задачи:
Даны числа X,Y,Z. Определить, что больше: сумма этих чисел или их произведение.
Схема алгоритма:
Интерфейс программы |
Программа |
Private Sub CommandButton1_Click() Dim x As Single, y As Single, z As Single Dim s As Single, p As Single x = Val(TextBox1.Text) ‘Ввод исходной информации y = Val(TextBox2.Text) z = Val(TextBox3.Text) p = x * y * z s = x + y + z If s > p Then ‘Оператор, исполняемый в случае, если ‘логическое выражение имеет значение True Label4.Caption = "Сумма больше" Else ‘Оператор, исполняемый в случае, если ‘логическое выражение имеет значение True Label4.Caption = "Произведение больше" End If End Sub |
Пример 2.
Условие задачи:
Даны два числа XиY. Вычислить квадратные корни данных чисел, если оба значения больше нуля, и оставить числа без изменения, если это не так.
Интерфейс программы
Схема алгоритма |
Программа |
Private Sub CommandButton1_Click() Dim x As Single, y As Single x = Val(TextBox1.Text) y = Val(TextBox2.Text) If (x > 0) And (y > 0) Then x = Sqr(x)’ Развилка неполная y = Sqr(y) End If Label5.Caption = "X=" + Str(x) Label4.Caption = "Y=" + Str(y) End Sub |