НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
им. Р.Е.АЛЕКСЕЕВА
Кафедра «Численное решение нелинейных уравнений»
Дисциплина «Информатика»
Лабораторная работа№5
Вариант№23
Выполнил: Федоров К.Р. Группа 19-Э-5 Проверил: Лапшин И.В.
Нижний Новгород
2020
Постановка задачи:
Численно решить нелинейное уравнение на промежутке [a, b] с числом разбиений n и точностью ε методами:
шаговый метод
метод половинного деления
метод Ньютона
метод хорд
метод простой итерации
Выполнить работу в C++ ; Exel ; Mathcad
#include <iostream> #include <iomanip> #include <math.h> //функция
double f(double x)
{
return (2 * x*sin(x*x) - cos(x));
}
//первая производная double f1(double z)
{
return 2 * sin(z*z) + sin(z) + 4 * z*z*cos(z*z);
}
//фи от х
double g(double x)
{
return sqrt(asin(cos(x) / (2 * x)));
}
using namespace std; int main()
{
setlocale(LC_ALL, "Russian");
double a = 0.4, b = 1, an, bn, x0 = 0.4, x1 = 1, c, x, eps; int i;
double h = (b - a) / 10; //шаговый
for (x = a; x <= b; x += h)
{
cout << "x=" << x << " f(x)=" << f(x) << endl; if (f(x)*f(x + h) < 0)
{
an = x;
bn = x + h;
}
}
cout << "Интервал изоляции корня [ " << an << " , " << bn << " ]" << "\n";
cout << "Метод половинного деления\n"; eps = 0.0001;
i = 0; a = an; b = bn; x = (a + b) / 2;
while (fabs(f(x)) > eps)
{
if (f(a)*f(x) < 0) b = x;
else
a = x; x = (a + b) / 2; i++;
}
cout << "Корень =" << x << " За " << i << " итераций\n"; cout << "Метод Ньютона\n";
eps = 0.000001; i = 0; x = an;
while (fabs(f(x)) > eps)
{
x = x - (f(x) / f1(x)); i++;
}
cout << "Корень =" << x << " За " << i << " итераций\n"; cout << "Метод хорд\n";
eps = 0.000001;
i = 0; a = an; b = bn;
x = a - ((b - a) / (f(b) - f(a)))*f(a); while (fabs(f(x)) > eps)
{
if ((f(a)*f(x)) < 0) b = x;
else
a = x;
x = a - ((b - a) / (f(b) - f(a)))*f(a); i++;
}
cout << "Корень =" << x << " За " << i << " итераций\n"; cout << "Метод простой интерации\n";
eps = 0.1; i = 0;
x = an;
while (fabs(f(x)) > eps)
{
x = (g(x)); i++;
}
cout << "Корень =" << x << " За " << i << " итераций\n";
}
a= |
0,4 |
b= |
1 |
n= |
10 |
|
|
|
|
|
f(x) := |
2 x sin(x x) - |
cos(x) |
|
||||||||
|
Шаговый метод |
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
h |
x |
f(x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,06 |
0,4 |
-0,79361 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,46 |
-0,70283 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,52 |
-0,59002 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,58 |
-0,45356 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,64 |
-0,29235 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,7 |
-0,10597 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,76 |
0,105107 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,82 |
0,339278 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,88 |
0,593594 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,94 |
0,863504 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1,14264 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[a;b] |
0,7 |
0,76 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Методы уточнения корня |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Метод половинного деления |
|
|
eps= |
|
|
|
|
|
|
|
|
0,001 |
|
|
|
|
|
|
|||
a |
x |
b |
f(a) |
f(x) |
|
f(a)*f(x) |
|
|f(x)|<eps |
|
|
|
|
|
|
|
|
||||||
0,7 |
0,73 |
0,76 |
-0,105966 |
-0,00345 |
0,000365 |
|
Нет |
|
|
|
|
|
|
|
|
|
|
|
|
|||
0,73 |
0,745 |
0,76 |
-0,003446 |
0,050089 |
-0,00017 |
|
Нет |
|
|
|
|
|
|
|
|
|
|
|
|
|||
0,73 |
0,7375 |
0,745 |
-0,003446 |
0,023135 |
|
-8E-05 |
|
Да |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
метод Ньютона |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Проверка условия сходимости |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
2 q sin(q 2) - |
|
|
|
|
|
s |
|
|
|
||||||||||
[a;b] |
f(x) |
f''(x) |
f(x)*f''(x) |
|
|
f(q) |
|
cos(q) |
|
|
|
|
|
|
|
|||||||
0,7 |
-0,10597 |
6,885041 |
-0,72958 |
|
|
|
|
|
|
|
( |
) |
|
|
|
|||||||
|
|
|
|
|
|
( |
) |
|
|
|
|
|
|
|
|
|||||||
|
|
f1(q) |
2 sin q2 |
|
+ |
sin(q) + |
4 q |
2 cos q |
2 |
|
|
|
||||||||||
0,76 |
0,105107 |
6,447849 |
0,6777113 |
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
2 |
|
|
|
|
|
|
|
|
|
|
f2(q) |
cos(q) + |
|
|
12 q |
cos(q |
) - |
8 q sin(q |
) |
|
|
||||||
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
f(x) |
f'(x) |
|f(x)|<eps |
|
|
eps= |
|
|
|
|
|
|
|
|
0,001 |
|
|
|
|
|
|
|
0,76 |
0,105107 |
3,716548 |
Нет |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,731719302 |
0,002614 |
3,530488 |
Нет |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,730978792 |
1,84E-06 |
3,525527 |
Да |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Метод хорд |
|
|
|
eps= |
|
|
|
|
|
|
|
|
0,00001 |
|
|
|
|
|
|
||
a |
x |
b |
f(a) |
f(x) |
|
f(b) |
|
f(a)*f(x) |
|
|
|
|f(x)|<eps |
||||||||||
0,7 |
0,730122 |
0,76 |
-0,105966 |
-0,00302 |
0,105107 |
|
|
|
|
|
|
0,0003196 |
|
Нет |
|
|
|
|
||||
0,730122145 |
0,730956 |
0,76 |
-0,003016 |
-8E-05 |
0,105107 |
|
|
|
|
|
|
|
2,419E-07 |
|
Нет |
|
|
|
|
|||
0,730955521 |
0,730978 |
0,76 |
-8,02E-05 |
-2,1E-06 |
0,105107 |
|
|
|
|
|
|
|
1,707E-10 |
|
Да |
|
|
|
|
|||
Метод простой инттерации |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
x |
f(x) |
g(x) |
|f(x)|<eps |
|
|
eps= |
|
|
|
|
|
|
|
|
|
0,1 |
|
|
|
|
|
|
0,7 |
-0,10597 |
0,760236 |
Нет |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0,760236361 |
0,105985 |
0,704837 |
Нет |
|
|
|
|
|
|
cos(x) |
|
|
|
|
|
|
|
|
|
|
||
0,704836861 |
-0,08985 |
0,755548 |
Да |
|
|
g(x) := asin |
( |
) |
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
2 |
|
x |
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a := 0.4 |
n := 10 |
|
||
b := 1 |
h := |
(b - a) |
= 0.06 |
|
n |
||||
|
|
|
i := 0 n
xi := a + h i
|
|
|
|
f (xi) = |
|
|
0 |
|
|
|
0 |
0.4 |
|
-0.794 |
|
1 |
0.46 |
|
-0.703 |
|
2 |
0.52 |
|
-0.59 |
|
3 |
0.58 |
|
-0.454 |
x = |
4 |
0.64 |
|
-0.292 |
|
5 |
0.7 |
|
-0.106 |
|
6 |
0.76 |
|
0.105 |
|
7 |
0.82 |
|
0.339 |
|
8 |
0.88 |
|
0.594 |
|
9 |
0.94 |
|
0.864 |
|
10 |
1 |
|
1.143 |
|
|
|
|
|
f (x) := 2 x sin(x x) - cos(x) |
|
|
|
1.5 |
|
|
|
1 |
|
|
|
f (xi) 0.5 |
|
|
|
0.4 |
0.6 |
0.8 |
1 |
- 0.5 |
|
|
|
- 1 |
|
|
|
|
xi |
|
|
a := x5 = 0.7
b:= x6 = 0.76
Ме т о д ы у т о ч н е н и я к о р н я
Ме т о д п о л о в и н н о г о д е л е н и я
|
|
|
||||||||||
M1 := |
eps 0.0001 |
= 0.731 |
||||||||||
|
x |
(a + b ) |
|
|
|
|
||||||
|
|
|
|
|
|
|
||||||
|
|
|
|
2 |
|
|
|
|
|
|
||
|
while |
|
f (x) |
|
eps |
|
||||||
|
|
|
|
|||||||||
|
|
b x |
if |
(f (a) f (x)) |
0 |
|||||||
|
|
|||||||||||
|
|
a x |
if |
(f (a) f (x)) |
0 |
|||||||
|
|
x |
(a + b ) |
|
|
|||||||
|
|
|
|
|||||||||
|
|
|
||||||||||
|
|
|
|
|
|
|
2 |
|
|
|
||
|
x |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|||
M1 = 0.731 |
|
|
f (M1) = 6.284 10- 5 |
М е т о д Н ь ю т о н а |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
п е р в а я п р о и з в о д н а я |
|
|
|
f1(x) := d f (x) |
2 sin(x2) + sin(x) + |
4 x2 cos(x2) |
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dx |
|
|
|
в т о р а я п р о и з в о д н а я |
|
|
|
f2(x) := d f1(x) |
cos(x) + 12 x cos(x2) - 8 x3 sin(x2) |
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dx |
|
|
|
M2 := |
eps 0.000001 |
|
|
|
|
|
|
|
= 0.731 |
|
|
|
|
||||||||
|
x a |
|
if |
(f (a) f2(a)) |
0 |
|
|
|
|
|
|
|
|||||||||
|
x b |
|
if |
|
(f (a) f2(a)) |
0 |
|
|
|
|
|
|
|
||||||||
|
while |
|
f (x) |
eps |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
x x - |
f (x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
f1(x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M2 = 0.731 |
|
|
f (M2) = 9.093 10- 13 |
|
|
|
|
|
|||||||||||||
М е т о д х о р д |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
M3 := |
eps 0.000001 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
x a - |
|
|
(b |
- a) |
|
|
f (a) |
|
|
|
|
|
|
|
||||||
|
f (b ) |
- f (a) |
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
while |
f (x) |
eps |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
b |
x |
if f (a) f (x) |
0 |
|
|
|
|
|
|
|
||||||||||
|
a x |
otherwise |
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
x a - |
|
(b |
- a) |
|
f (a) |
|
|
|
|
|
||||||||||
|
f (b ) |
- f (a) |
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M3 = 0.731 |
|
f (M3) = -5.65 10- 8 |
|
|
|
|
|
|
|
||||||||||||
М е т о д п р о с т о й и н т е р а ц и и |
|
|
|
|
|
||||||||||||||||
g(x) := |
asin |
cos(x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
2 x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
c os(x) + sin(x) |
|
|
|
|
|
||||||
g1(x) := d g(x) - |
|
|
|
|
2 x2 |
|
|
2 x |
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
dx |
|
|
|
|
|
2 |
asin |
c os(x) |
|
1 - |
c os(x)2 |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
2 x |
|
2 |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 x |
|
|
|
|
g1(a) = -0.974 |
|
|
|
П р о в е р к а с х о д и м о с т и п р о й д е н а |
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|||||||||||||
g1(b) = -0.872 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
t := a a + 0.001 b |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.78 |
|
|
|
M4 := |
x a |
|
|
|
|
|
|
|
|
= 0.705 |
|
|
|
|
|
||||||
|
eps |
0.1 |
|
|
|
|
|
|
|
|
|
|
|
0.76 |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while |
|
f (x) |
eps |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
x g(x) |
|
|
|
|
|
|
|
|
|
|
g(t) |
|
|
|
|
|||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
t |
0.74 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
M4 = 0.705 |
|
f (M4) = -0.09 |
|
|
|
|
|
|
0.72 |
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.7 |
0.72 |
0.74 |
0.76 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
t |
|
|