Хорошо, давайте разберем задачи по порядку.
Лабораторная работа № 16. Макросы и функции в Basic
3. Построим функцию вычисления выражения
Дано выражение:
\[ y = \frac{x^2 - 5\sqrt{2}}{2x^3 + 1} \]
Для создания макроса в LibreOffice Calc (или Microsoft Excel) выполните следующие шаги:
1. Откройте LibreOffice Calc.
2. Нажмите клавиши ALT + F11 (или перейдите в меню "Сервис" -> "Макросы" -> "Редактировать макросы"). Откроется редактор VBA (или Basic).
3. Вставьте следующий код в модуль:
Function fun1(x)
fun1 = (x * x - 5 * Sqr(2)) / (2 * x ^ 3 + 1)
End Function
4. Закройте редактор макросов.
Чтобы использовать функцию:
1. В ячейке A3 введите значение для X, например, 6.
2. В ячейке, где вы хотите получить результат (например, B3), введите формулу:
=fun1(A3)
В результате вы должны получить значение, близкое к 0,06681.
4. Построим функцию вычисления полупериметра треугольника по трем сторонам a, b, c.
Формула для полупериметра треугольника:
\[ P = \frac{a+b+c}{2} \]
Для создания макроса:
1. Откройте редактор VBA (ALT + F11).
2. Вставьте следующий код в модуль:
Function POL(a, b, c)
POL = (a + b + c) / 2
End Function
3. Закройте редактор макросов.
Чтобы использовать функцию:
1. В ячейках A1, B1, C1 введите значения сторон треугольника, например, 3, 4, 5.
2. В ячейке, где вы хотите получить результат (например, D1), введите формулу:
=POL(A1;B1;C1)
В результате вы получите полупериметр.
5. Построим функцию вычисления длины окружности и площади круга заданного радиуса R.
Формулы:
Длина окружности: \( C = 2 \pi R \)
Площадь круга: \( S = \pi R^2 \)
Для создания макроса:
1. Откройте редактор VBA (ALT + F11).
2. Вставьте следующий код в модуль:
Public Function OCR(R)
Const PI = 3.1415926535
Dim C As Double
Dim S As Double
C = 2 * PI * R
S = PI * R ^ 2
OCR = "Длина окружности (C) = " & C & "; Площадь круга (S) = " & S
End Function
3. Закройте редактор макросов.
Чтобы использовать функцию:
1. В ячейке, например, A1, введите значение радиуса R.
2. В ячейке, где вы хотите получить результат (например, B1), введите формулу:
=OCR(A1)
В результате вы получите строку с длиной окружности и площадью круга.
6. Построим функцию нахождения максимального элемента из трех чисел a, b, c.
Для создания макроса:
1. Откройте редактор VBA (ALT + F11).
2. Вставьте следующий код в модуль:
Function MaxOfThree(a, b, c)
Dim m As Double
If a > b Then
m = a
Else
m = b
End If
If c > m Then
MaxOfThree = c
Else
MaxOfThree = m
End If
End Function
3. Закройте редактор макросов.
Чтобы использовать функцию:
1. В ячейках A5, B5, C5 введите числа, например, 10, 15, 35.
2. В ячейке, где вы хотите получить результат (например, D5), введите формулу:
=MaxOfThree(A5;B5;C5)
В результате вы получите максимальное из трех чисел.
7. Построим функцию нахождения корней квадратного уравнения. В редакторе VBA.
Квадратное уравнение имеет вид \( ax^2 + bx + c = 0 \).
Дискриминант: \( D = b^2 - 4ac \)
Корни: \( x_{1,2} = \frac{-b \pm \sqrt{D}}{2a} \)
Для создания макроса:
1. Откройте редактор VBA (ALT + F11).
2. Вставьте следующий код в модуль:
Public Function CRN(a, b, c)
Dim d As Double
Dim x1 As Double
Dim x2 As Double
d = b ^ 2 - 4 * a * c
If d >= 0 Then
x1 = (-b + d ^ (1 / 2)) / (2 * a)
x2 = (-b - d ^ (1 / 2)) / (2 * a)
CRN = "x1=" & Str(x1) & "; x2=" & Str(x2)
Else
CRN = "корней нет"
End If
End Function
3. Закройте редактор макросов.
Чтобы использовать функцию:
1. В ячейках, например, A1, B1, C1 введите коэффициенты a, b, c.
2. В ячейке, где вы хотите получить результат (например, D1), введите формулу:
=CRN(A1;B1;C1)
В результате вы получите корни уравнения или сообщение "корней нет".
8. Построим функцию, которая возвращает стоимость товара по его стоимости без НДС и значению ставки НДС.
Формула для стоимости с НДС:
\[ \text{Стоимость} = \text{СтоимостьБезНДС} \times \left(1 + \frac{\text{НДС}}{100}\right) \]
Для создания макроса:
1. Откройте редактор VBA (ALT + F11).
2. Вставьте следующий код в модуль:
Function STOIMOST(STNDS, NDS)
STOIMOST = STNDS * (1 + NDS / 100)
End Function
3. Закройте редактор макросов.
Чтобы использовать функцию в Microsoft Excel:
1. Создайте следующую таблицу:
| Стоимость без НДС |
НДС |
Стоимость |
| 1000 |
25 |
|
2. Предположим, "Стоимость без НДС" находится в ячейке A10, а "НДС" в ячейке B2.
3. В ячейке C10 (где должна быть "Стоимость") введите формулу:
=STOIMOST(A10;B2)
Нажмите Enter. В результате в ячейке C10 должно появиться значение 1250.
Надеюсь, это подробное объяснение поможет вам переписать все в тетрадь!