![](/user_photo/2706_HbeT2.jpg)
- •Встроенные функции для работы с файловой системой.
- •Работа с текстовыми файлами.
- •Объект Application. Основные свойства и методы.
- •Объект Workbook. Основные свойства и методы.
- •Объект Worksheet. Основные свойства и методы.
- •Объект Worksheet. Основные события.
- •Объект Range. Общая характеристика.
- •Работа с макросами в Ecxel.
- •Метод Activate(). Метод AutoFill(). Метод Consolidate().
- •Метод Delete(). Метод с префиксом Fill. Метод Find().
- •Метод GoalSeek(). Метод Insert(). Метод Justify().
- •Метод Merge(). Метод Parse(). Метод Replace(). Метод Select() .
- •Метод Copy(). Метод Sort(). Метод SubTotal().
- •Работа с диаграммами (объект Chart).
- •Вычисление суммы. Рекуррентные формулы.
- •Вычисление чисел Фибоначчи.
- •Решение систем линейных уравнений итерационными методами. Метод простой итерации.
- •Решение систем линейных уравнений итерационными методами. Метод Зейделя.
- •Численное интегрирование. Метод прямоугольников с недостатком.
- •Численное интегрирование. Метод прямоугольников с избытком.
- •Численное интегрирование. Метод трапеций.
- •Поиск минимума функции вида f(X). Метод деления отрезка пополам.
- •Поиск минимума функции вида f(X). Метод «Золотого сечения».
Вычисление суммы. Рекуррентные формулы.
Условие
задачи: Для x,
изменяющегося в интервале от x0
до xk
с шагом h,
вычислить значения бесконечной суммы
y(x)
с точностью e=0.00001.
e = 0.000001: n = 1
For x = xh To xk Step dx
y = 0: i = 0: u = 1
While Abs(u) > e : y = y + u : u = (x) ^ 2 / (i + 1) * u : i = i + 1
Wend : n = n + 1
Next x
Вычисление чисел Фибоначчи.
Sub Fib1()
ActiveCell.FormulaR1C1 = "1"
Range("A2").Select
ActiveCell.FormulaR1C1 = "2"
Range("A3").Select
ActiveCell.FormulaR1C1 = "=R[-2]C+R[-1]C"
Range("A3").Select
Selection.AutoFill Destination:=Range("A3:A20"), Type:=xlFillDefault: Range("A3:A20").Select
Нахождение «сигнальной» матрицы В = sign(A).
Sub matAB()
Dim a(3, 3) As Integer : Dim b(3, 3) As Integer
Dim i, j As Integer : Dim s1, s2 As String
For i = 1 To 3 : For j = 1 To 3
If a(i, j) > 0 Then: b(i, j) = 1: Else
If a(i, j) = 0 Then: b(i, j) = 0: Else: b(i, j) = -1: End If
End If: Range(s1).Cells = b(i, j): Next: Next: End Sub
Решение уравнений вида f(x) = 0. Метод Ньютона.
При x=а f’(x)*f ’’(x)<0 – функция убывающая и f’(x)*f ’’(x)>0- функция возрастающая.
Расчетная формула Ньютона имеет вид:
Вычисления ведутся до тех пор, пока |xn-xn-1|<E
While Abs(f(x)) > 0.01
i = i + 1
x = x - f(x) / f1(x)
Wend
End Sub
Решение уравнений вида f(x) = 0. Метод деления отрезка пополам.
Алгоритм:
Ввести данные (а, b, е)
Если нужная точность достигнута (|b-a|<2е), переходим у пункту 6
Взять середину очередного отрезка c=(a+b)/2
Если значение функции в точках а и с одного знака (f(а)*f (с)>0), то в качестве следующего отрезка взять другую половину а=с, иначе b=c.
Перейти к пункту 2
Напечатать ответ (a+b)/2
x = Del(a, b, eps)
Function Del(a As Double, b As Double, e As Double) As Double
Dim x As Double, n As Integer
If fun(a) * fun(b) <= 0 Then
n = 0: While (b - a) > e: n = n + 1 : x = (a + b) / 2
If fun(a) * fun(x) <= 0 Then
b = x: Else: a = x: End If
Range("B5").Cells = n : Del = (a + b) * 0.5
Wend: Else: MsgBox ("a,b=?")
Exit Function : End If : End Function
Решение уравнений вида f(x) = 0. Метод хорд.
Xn+1= Xn-(f(Xn)(b- Xn))/(f(b)-f(Xn))
Xn+1= Xn-(f(Xn)(Xn-а))/(f(Xn)-f(a))
| Xn+1- Xn|<Ɛ
x = Hor(a0, b0, eps)
Function Hor(a As Double, b As Double, e As Double) As Double: Dim x As Double, x0 As Double, n As Integer: If fun(a) * fun(b) <= 0 Then
n = 0: x0 = a: x = b: While Abs(x0 - x) > e
n = n + 1: x0 = x: x = b - fun(b) * (b - a) / (fun(b) - fun(a)): If fun(a) * fun(x) <= 0 Then: b = x : Else : a = x: End If : Hor = x: Wend : Else MsgBox ("a,b=?"): Exit Function : End If : End Function