Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа_3_1_Лс_27_11_2011.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
4.63 Mб
Скачать

Лабораторна робота № 4. Арифметичні вырази й вбудовані функції visual basic

Выражения используются для операций над данными. В зависимости от данных и используемых операций выражения можно разделить на арифметические, логические и символьные.

Арифметическое выражение — это последовательность чисел, констант, переменных, функций, которые соединены между собой знаками арифметических операций. Частным случаем выражения является просто константа, переменная или вызов функции. Арифметические операции языка Visual Basic приведены в табл.4.1

Таблица 4.1

Операция

Описание операции

Например

A^B

Возведение А в степень В

10^2=100, 10^-2=0.01

- A

Перемена знака А

-(-5)=5

A * B

Умножение А на В

3 * 2=6

A / B

Деление А на В

3 / 2=1.5

A \ B

Целочисленное деление А на В

3 \ 2=1

A Mod B

Деление по модулю А на В (вычисление остатка)

7 Mod 4=3

A + B

Сложение А с В

2.36 + 12.5

A - B

Вычитание В из А

231 - 49

Приоритет выполнения операций (в порядке убывания): возведение в степень, умножение и деление, целочисленное деление, вычисление остатка, сложение и вычитание. Вычисления в выражении производятся слева направо. Скобки изменяют приоритет.

Например:

14/5*2 = 5.6 — операции одного приоритета выполняются слева направо;

14 \ 5*2 = 1 — умножение имеет более высокий приоритет и при целочисленном делении дробная часть отбрасывается;

27 ^ 1/3 = 9 — возведение в степень обладает наивысшим приоритетом;

27 ^ (1/3) = 3 — скобки изменяют последовательность операций.

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

Ниже приведены математические функции:

Abs(x) — возвращает модуль аргумента;

Atn(x) — возвращает арктангенс;

Sin(x) — возвращает синус;

Cos(x) — возвращает косинус;

Таn(х) — возвращает тангенс;

Ехр(х) — возвращает е^х;

Log(x) — возвращает натуральный логарифм;

Sqr(x) — возвращает квадратный корень;

Rnd() — возвращает случайное число в диапазоне от 0 до 1;

Int(x) — возвращает наибольшее целое число, не превосходящее аргумент;

Fix(x) —возвращает округленное число (отбрасывает дробную часть аргумента);

CInt(x) — возвращает аргумент, округленный до целого по правилам округления математики;

Sgn(x) — возвращает знак числа.

Например:

Int(7.32)=7 Int(-7.32)=-8 Fix(-7.32)=-7 CInt(5.5)=6 CInt(-7.5)=-7

Значения аргументов в тригонометрических функциях задаются в радианах. Для перевода аргумента из градусов в радианы используется формула:

Аргумент(в радианах)=Аргумент(в градусах)*Пи/180

Число Пи может быть определено по формуле:

Пи=Аtn(1)*4

Полные сведения о встроенных функциях и правилах их применения можно найти в справочной системе Visual Basic.

ЗАВДАННЯ 4.1

Постановка задачи ВЫПОЛНИТЬ ПРОЕКТ КАЛЬКУЛЯТОР.

ПРИ ЗАПУСКЕ ПРОГРАММЫ ПРИЛОЖЕНИЕ ДОЛЖНО РАБОТАТЬ КАК ОБЫЧНЫЙ КАЛЬКУЛЯТОР (ВЫПОЛНЯТЬ АРИФМЕТИЧЕСКИЕ ДЕЙСТВИЯ И ВЫЧИСЛЯТЬ ЗНАЧЕНИЯ ФУНКЦИЙ), С ТОЙ РАЗНИЦЕЙ, ЧТО ИСХОДНЫЕ ЧИСЛА ВВОДЯТСЯ В ДВА РАЗНЫХ ОКНА, А РЕЗУЛЬТАТ ВЫВОДИТЬСЯ В ТРЕТЬЕМ.

После того как будет сформирован графический интерфейс пользователя, окно приложения должно иметь вид, представленный на рис. 4.1.

Порядок действий

1. Расположите на форме объекты в соответствии с рис. 4.1.

Рис. 4.1

2. Используя Окно свойств объекта, установите значения свойств объектов в соответствии с табл. 4.2.

Таблица 4.2

Объект

Имя объекта

по умолчанию

(значение свойства Name)

Свойство

Значение свойства

Форма

Forml

Name

frmCalc

Метка

Label1

Name

Caption

lblХ

x

Метка

Label2

Name

Caption

lblY

y

Метка

Label3

Name

Caption

lblRezult

Результат

Текстовое поле

Textl

Name

Text

txtX

Пусто

Текстовое поле

Text2

Name

Text

txtY

Пусто

Текстовое поле

Text3

Name

Text

txtRezult

Пусто

Командная кнопка

Command 1

Name

cmdPlus

Командная кнопка

Command2

Name

cmdMinus

Командная кнопка

Command3

Name

cmdMult

Командная кнопка

Command4

Name

cmdDiv

Командная кнопка

Command5

Name

cmdRnd

3. Установите в соответствии с рис.4.1 значения свойства Caption для командных кнопок.

4. Установите по своему усмотрению значения свойств объектов, определяющих внешний вид калькулятора.

5. Составьте программный код проекта. Он будет состоять из 5-ти процедур, каждая из которых выполняется при щелчке мышью по одной из командных кнопок:

а) в общей части кода сразу после оператора Option Explicit объявите необходимые для работы программы переменные:

Dim x As Single, y As Single, Rezult As Single

где x — переменная, в которой будет храниться значение, введенное пользователем в поле txtX; y — переменная, в которой будет храниться значение, введенное пользователем в поле txtY; Rezult — переменная, в которой будет храниться результат вычислений.

б) составьте программный код для командной кнопки cmdPlus:

Private Sub CmdPlus_Click()

x = Val(TxtX.Text)

y = Val(TxtY.Text)

Rezult = x + y

TxtRezult.Text = Str(Rezult)

End Sub

6. Запустите проект и проверьте правильность выполнения операции сложения.

7. Самостоятельно составьте коды для командных кнопок cmdMinus (вычитание), cmdMult (умножение), cmdDiv (деление).

8. Запустите проект и проверьте правильность выполнения операций вычитания, умножения, деления.

9. Составьте программный код для командной кнопки cmdRnd:

Private Sub cmdRnd_Click()

Rezult = Rnd()

TxtRezult.Text = Str(Rezult)

End Sub

10. Проверьте, появляется ли при щелчке мышью по кнопке Rnd() в окне результата случайное число в диапазоне от 0 до 1. Запомните число.

11. Закройте окно приложения. Запустите проект еще раз. Щелкните мышью по кнопке Rnd(). Число в окне результата будет прежним. Чтобы этого не происходило, необходимо добавить в начало процедуры cmdRnd_Click() строку Randomize Timer

12. Проверьте, появится ли при щелчке мышью по кнопке Rnd()в окне результата случайное число, отличное от предыдущего.

13. Измените код таким образом, чтобы при щелчке мышью по кнопке Rnd() в окне результата появлялось случайное число в диапазоне от 10 до 1000.

Общая формула:

Rezult = (B-A)*Rnd()+A

где А — нижняя граница диапазона;

B — верхняя граница диапазона.

14. Измените код таким образом, чтобы при щелчке мышью по кнопке Rnd() в окне результата появлялось целое случайное число в том же диапазоне.

15.Сохраните проект и форму в папке ЛАБ4 с именами Лр4_Зад1_P_Фамилия и Лр4_Зад1_F_Фамилия соответственно.

Примечание. Текстовое поле для вывода результата по умолчанию не застраховано от изменений, но защиту Вы можете установить самостоятельно.При использовании текстового поля для вывода результатов устанавливайте для него значение свойства Locked, равное True. Оно будет защищено от случайных изменений.

16. Установите защиту от изменений для текстового поля txtRezult.

17. Запустите проект при следующих данных: х=любое число, y=0, и убедитесь, что выдается сообщение об ошибке: Division by zero (Деление на ноль). Это свидетельствует о том, что калькулятор имеет недостатки.

Примечание. Хорошие программы должны проверять данные на корректность!

ЗАДАНИЕ 4.2. На оценку 4 дополните функциональные возможности калькулятора (задание 4.1) следующими функциями:

  • x в степени y;

  • выдавать число Пи;

  • производить очистку всех текстовых полей;

Задание 4.3. Дополните функциональные возможности калькулятора (задание 4.2) следующими функциями:

  • выполнять целочисленное деление;

  • вычислять остаток от целочисленного деления;

  • в текстовых полях показывать текущую дату и время

Приложение после запуска может иметь вид, представленный на рис. 4.2 (допускается оформление по своему усмотрению).

Рис. 4.2