Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Звіт до лабораторної роботи № 3
з курсу “Комп’ютерні методи дослідження систем керування”
МЕТОДИ УТОЧНЕННЯ КОРЕНІВ
НЕЛІНІЙНИХ РІВНЯНЬ
Варіант #9
Прийняв: ст. викладач
Яцук Ю.В.
Львів 2014
Мета роботи: вивчити основні методи уточнення коренів нелінійних рівнянь з одним невідомим.
Завдання:
/
Комбінований метод хорд та дотичних
№9
Код програми:
//Комбінований метод хорд та дотичних
#include <iostream>
#include <math.h>
using namespace std;
double a = -9, b = 3, x;
double eps = 0.001;
double fa, fb, fx1, fx2, dfx2, x1, x2;
void main()
{
setlocale(0, "");
do
{
fa = exp(a) + a;
fb = exp(b) + b;
x1 = a - fa*((b - a) / (fb - fa));
fx1 = exp(x1) + x1;
if (fx1*fa > 0)
{
a = x1; x2 = b;
}
else
{
b = x1; x2 = a;
}
fx2 = exp(x2) + x2;
dfx2 = 1 + exp(x2);
x2 -= fx2 / dfx2;
if (a == x1) b = x2;
else a = x2;
}
while (fabs((x1 - x2) / x1) < eps);
x = (x1 + x2) / 2;
cout << x;
//Перевірка
double double_part = exp(x) + x;
//double double_part = 1+exp(x);
int int_part = (int)double_part;
cout << endl;
if ((int_part) == 0)
cout << "\t Вiдповiдь не вiрна!" << endl;
else cout << "\t Вiдповiдь вiрна!" << endl;
_fgetchar();
}
Результат роботи програми:
/