Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ
ДЕРЖАВНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
Звіт
до лабораторної роботи №2
з курсу "Чисельні методи"
на тему:
«Чисельне розв’язування нелінійних рівнянь»
Лабораторна робота №2
Мета: Оволодіти методом чисельного розв’язування нелінійних рівнянь, набути практичних навиків у їх реалізації на ЕОМ.
Варіант №3
Графічно відокремити корені рівняння, побудувати графік функції за допомогою ЕОМ.
Розв’язати задачу на ЕОМ з точністю методом ділення навпіл.
Уточнити одержаний результат з точністю за допомогою методу послідовних наближень. Перевірити умови застосування методу.
Теоретичні відомості
Метод послідовних наближень(простої ітерації). Нехай на відрізку рівняння має корінь . Запишемо це рівняння у вигляді:
,
де , - довільна функція, яка не має коренів на . Зокрема, .
Метод простої ітерації визначається формулою:
де - номер ітерації , - початкове наближення.
Розв’язок рівняння графічним способом:
Текст програми:
#include<fstream.h>
#include<conio.h>
#include<math.h>
double x0, x1, x2, d, eps, h ,l;
int i=0, j=1;
main()
{ eps = 0.001;
cout<<"Function : (exp(-x)-x) = 0\n";
cout<<"METOD DILENNJA NAVPIL : \n";
cout<<"Promigok X[0] = ";
cin>>x0;
h=x0;
cout<<" X[1] = ";
cin>>x1;
l=x1;
while (fabs(x1 - x0) >= eps)
{
cout<<x0<<" "<<x1<<"\n";
if ((exp(-x0)-x0) *
(exp(-x1)-x1) < 0)
{
x2 = (x0 + x1) / 2;
if ((exp(-x0)-x0) *
(exp(-x2)-x2) < 0)
{
x1 = x2;
}
if ((exp(-x1)-x1) *
(exp(-x2)-x2) < 0) {
x0 = x2;
}
}
else
{
cout<<"Na c'omu intervali nemaje koreniv, abo ix bil'we odnoho\n";
goto a;
}
i++;
}
d=(x0 + x1) / 2;
cout<<"\nX = "<<d<<"\n";
cout<<"\nKilkist iteracij= "<<i<<"\n";getch();
cout<<"\nUTOCHNENNJA KORENJA METODOM PROSTOJI ITERACIJI:\n";
eps = 0.00001;
cout<<d<<"\n";
do
{
x1 = x0+(exp(-x0)-x0);
x0=x1;
j++;
cout<<x1;
}
while (fabs(x1 - x0) >= eps);
cout<<"\nX = "<<x1<<"\n";
cout<<"\nKilkist iteracij= "<<j<<"\n";
a:;
getch();
return 0;
}
Приклад:
Висновок: На цій лабораторній роботі я оволоділа методом чисельного розв’язування нелінійних рівнянь (зокрема методом ділення навпіл та методом наближень (простої ітерації)) , а також набула практичних навиків у їх реалізації на ЕОМ.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!