Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая / записка.docx
Скачиваний:
1
Добавлен:
27.09.2025
Размер:
206 Кб
Скачать
☆
    1. Встроенные математические функции в vba

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

Основные математические функции:

    • Abs(число): – Возвращает абсолютное значение числа.

Пример: Abs(-5) вернет 5.

    • Sqr(число): – Возвращает квадратный корень числа.

Пример: Sqr(9) вернет 3.

    • Exp(число): – Возвращает экспоненту числа (e в степени число).

Пример: Exp(1) вернет значение e (около 2.718).

    • Log(число): – Возвращает натуральный логарифм числа.

Пример: Log(2.718) вернет около 1.

    • Sin(число), Cos(число), Tan(число): – Возвращают синус, косинус и тангенс угла (в радианах) соответственно.

Пример: Sin(0) вернет 0, Cos(0) вернет 1.

    • Atn(число): – Возвращает арктангенс числа (в радианах).

Пример: Atn(1) вернет примерно 0.785(π/4).

    • Int(число), Fix(число): – Возвращают целую часть числа.

Int(число) возвращает ближайшее целое число, которое меньше или равно число.

Fix(число) удаляет дробную часть числа (округляет к нулю).

Пример: Int(3.7) вернет 3, Fix(-3.7) вернет -3.

    • Rnd(): – Возвращает случайное число в диапазоне от 0 до 1.

Пример: Rnd() вернет случайное число.

    • Round(число, [decimalplaces]): – Округляет число до заданного количества десятичных знаков (decimalplaces).

Пример: Round(3.14159, 2) вернет 3.14.

Примеры использования в VBA:

VBA

Sub MathFunctionsExample()

Dim x As Double

x = -5.7

Debug.Print "Абсолютное значение x: " & Abs(x) ' Выводит 5.7

Debug.Print "Квадратный корень из 9: " & Sqr(9) ' Выводит 3

Debug.Print "Целая часть x (Int): " & Int(x) ' Выводит -6

Debug.Print "Целая часть x (Fix): " & Fix(x) ' Выводит -5

Debug.Print "Случайное число: " & Rnd() ' Выводит случайное число

Debug.Print "Округление 3.14159 до 2 знаков: " & Round(3.14159, 2) ' Выводит 3.14

End Sub

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

2 Практическая часть

2.1 Задача 1

Для выполнения задания на рабочем листе Excel введем исходные данные для вычислений, а также добавим элемент управления «Кнопка».

Рисунок 2.1 – Вид рабочего листа Excel

Напишем программу на VBA для вычисления функции Y(x) при следующих исходных данных (по условию варианта 10):

а= 2.2, b= 3.6, х= от 1 до 10 с шагом 1

Y(x) = ах1/3+ bх2/3+a, если х<4

Y(x)= ах1/3+ bх2/3, если 4<=х=7

Y(x)= а - b, если х>7

Дважды нажмем на созданную кнопку, после чего в редакторе Visual Basic напишем код макроса, запускаемого по нажатию кнопки:

Sub Calculate ()

Dim a As Double, b As Double, x As Integer, y As Double

' Получение значений a и b из ячеек B1 и B2

a = Range("B2").Value

b = Range("B3").Value

' Цикл для x от 1 до 10 с шагом 1

For x = 1 To 10

' Вычисление Y(x) в зависимости от x

If x < 4 Then

y = a * x ^ (1 / 3) + b * x ^ (2 / 3) + a

ElseIf x >= 4 And x <= 7 Then

y = a * x ^ (1 / 3) + b * x ^ (2 / 3)

Else

y = a - b

End If

' Вывод результатов в ячейки Excel

Cells(x + 9, 1).Value = x ' Вывод x в столбец A (столбец 1), начиная со строки 3

Cells(x + 9, 2).Value = y ' Вывод Y(x) в столбец B (столбец 2), начиная со строки 3

Next x

End Sub

Рисунок 2.2 – Вид редактора Visual Basic

Рисунок 2.3 – Результат выполнения макроса

Соседние файлы в папке курсовая