Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

Metoda coardei

calculatoare



+ Font mai mare | - Font mai mic



Metoda coardei

Ecuatia dreptei AB este:

Intersectand aceasta dreapta cu axa Ox se obtine



Daca f(a)f(c)£0, atunci x*I [a,c], in caz contrar x*I [c,b]

Procedeul se repeta pe noul interval ce contine radacina.

PSEUDOCOD Coarda

c,d Real

c←a

REPETA

d←c

c←a-f(a)*(b-a)/(f(b)-f(a))

DACA f(a)*f(c)<0 ATUNCI b←c

ALTFEL a←c

PANA CAND Abs(d-c)<eps;

xsol←c

SFARSIT

#include <stdio.h>

#include <math.h>

#include <conio.h>

#include <iostream.h>

double f(double x)

void main()

while (!(abs(d-c)<eps));

xsol=c;

cout << ' '; cout << 'Solutia=' << xsol ;

Metoda Newton

Metoda Newton se poate aplica in cazul in care functia f indeplineste urmatoarele conditii suplimentare: este derivabila de doua ori pe [a,b], prima derivata nu se anuleaza pe acest interval, iar derivata a doua pastreaza semn constant pe [a,b]. Metoda consta in constructia unui sir de aproximatii ale radacinii cn x*, nIN. Punctul initial se alege astfel ca functia si derivata secunda sa aiba acelasi semn. Pe exemplul din figura   se observa ca f'(x)>0, deci se va alege punctul b. Aproximarea radacinii se face prin punctul de intersectie al tangentei la graficul functiei in punctul B cu axa Ox.

Ecuatia tangentei este: y-f(b)=f'(b)(x-b). Intersectand aceasta dreapta cu axa Ox, se obtine:
.
Procedeul se repeta, utilizand relatia de recurenta
.

PSEUDOCOD Newton

c,d Real

DACA f(a)*ddf(a)>0 ATUNCI c←a

ALTFEL

c←b

a←b

SFARSIT

c←a

REPETA

d←c;

c←c-f(c)/df(c)

PANA CAND Abs(d-c)<eps

xsol←c

SFARSIT

#include <stdio.h>

#include <math.h>

#include <conio.h>

#include <iostream.h>

double f(double x)

double df(double x)

double ddf(double x)

void main()

c=a;

do while (!(abs(d-c)<eps));

xsol=c;

cout << ' '; cout << 'Solutia=' << xsol ;



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 3646
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved