МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ІКТА, кафедра “Захист інформації”
ЗВІТ
З ЛАБОРАТОРНОЇ РОБОТИ № 5
З КУРСУ “КОМП’ЮТЕРНІ МЕТОДИ ДОСЛІДЖЕНЬ”
НА ТЕМУ:
“МЕТОД НЬЮТОНА ДЛЯ РОЗВ’ЯЗУВАННЯ СИСТЕМ НЕЛІНІЙНИХ РІВНЯНЬ ”
Варіант 4
Завдання
до лабораторної роботи
Розв’яжіть систему нелінійних рівнянь одним із методів, вказаних викладачем, вибираючи за початкові наближення . Ітерації проводити до збігу двох послідовних наближень з похибкою .
4)
Блок-схема
Таблиця ідентифікаторів констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення:
main()
Головна функція
Текст програми мовою C
#include <stdio.h>
#include <math.h>#include <stdio.h>
Float f1(float x, float y) { return }
Float f2(float x, float y) { return }
Float f1x(float x, float y) { return }
Float f1y(float x, float y) { return }
Float f2x(float x, float y) { return }
Float f2y(float x, float y) { return }
void main(void){
double x0=0, x1, y0=0, y1, h1, k1, zn, ch_h1, ch_k1, eps=1e-4;
int k=0;
clrscr();
Label:
Ch_h1=-f1(x0,y0)*f2y(x0,y0)+f2(x0,y0) *f1y(x0,y0);
Ch_k1=-f1x(x0,y0)*f2(x0,y0)+f2x(x0,y0) *f1(x0,y0);
Zn=f1x(x0,y0)*f2y(x0,y0)-f2x(x0,y0)*f1y(x0,y0);
H1=ch_h1/zn;
K1=ch_k1/zn;
Y1=y0+k1;
X1=x0+h1;
If(fabs(x0-x1)>eps || fabs(y0-y1)>eps) {
X0=x1;
K++;
Goto label; }
printf(“\n x1=%f ; y1=%f ; k=%f ; eps=%f ; ”, x1, y1, k, eps);
}
Результати роботи програми:
x1= y1= k= eps=
x2= y2= k= eps=
x3= y3= k= eps=
Висновок: На цій лабораторній роботі я ознайомився з методом ньютона для розв’язування систем нелінійних рівнянь.