Met Num 1

7
REPUBLIC OF MOLDOVA MINISTERUL EDUCATIEI UNIVERSITATEA TEHNICA A MOLDOVEI Catedra de Calculatoare RAPORT Lucrarea de Laborator № 1 Metodele Numerice A efectuat: Chisinau 2015

description

Met Num 1 Met Num 1 Met Num 1 Met Num 1 Met Num 1 Met Num 1

Transcript of Met Num 1

Page 1: Met Num 1

REPUBLIC OF MOLDOVA MINISTERUL EDUCATIEI

UNIVERSITATEA TEHNICA A MOLDOVEI

Catedra de Calculatoare

RAPORTLucrarea de Laborator № 1

Metodele Numerice

A efectuat:

A verificat :

Chisinau 2015

Page 2: Met Num 1

Lucrarea de laborator nr.1

Scopul lucrării :

1) Să se separe toate rădăcinile reale ale ecuației f(x)=0 unde y=f(x) este o funcție reală de variabilă reală.

2) Să se determine o radacină reală a ecuației date cu ajutorul metodei înjumătățirii intervalului cu o eroare mai mică decît ε=10-2 .

3) Să se precizeze rădăcina obținută cu exactitatea ε= 10-6 = ,utilizînd:

• metoda aproximațiilor succesive ;

• metoda tangentelor (Newton);

• metoda secantelor .

4) Să se compare rezultatele luînd în considerație numărul de iterații , evaluarile pentru funcții și derivată.

Ecuațiile propuse spre rezolvare:

Variant 19 : Varianta 20 :

2x +3x-0.5=0; 3x2-37x-52=0;

Mersul lucrarii :

1) Separarea rădăcinilor Pentru prima ecuație este convenabilă folosirea metodei grafice de separare a rădăcinilor.

Chisinau 2015

Page 3: Met Num 1

1.1) Avem 2 radacini ξ(-2 ; 1.2) si ξ(1,2 ; 3):Pentru a doua ecuație folosim metoda șirului lui Rolle

X -2 -1,2 1,2 3

Y -6.25 -4.5 6.3 16.5

rădăcină reală ξ ( -1.2 ; 1.2)

1.2)Pentru a determina celelalte rădăcini folosim metoda grafică.

Chisinau 2015

Page 4: Met Num 1

1.3)Scriem ecuația 3x2-37x-52=0 sub forma φ (x)=ɡ(x) construim graficul nr 2 :

1.4) Avem 2 radacini ξ(-5 ; -3.5) si ξ(3.5 ; 6):Pentru a doua ecuație folosim metoda șirului lui Rolle

X -5 -3.5 3.5 6

Y 8 34 -138 -58

rădăcină reală ξ ( -3.5 ; 3.5)

Chisinau 2015

Page 5: Met Num 1

2) Calculul rădăcinii reale prin metoda înjumătățirii intervalului:

2.2)

#define _CRT_SECURE_NO_WARNINGS

#include <iostream>#include <math.h>

using namespace std;

double f(double x)

{

return pow(x, 3) - 37 * x -52;

}

int main() {int k = 0;double

a = -3.5,b = 3.5,c = 0,eps = 0.01;

while ((b - a)>eps) {k++;c = a + (b - a) / 2;if (f(c) == 0)

break;if (f(a)*f(c)<0)

b = c;else

a = c;}cout << "Radacina pentru x=" << c << endl;cout << "Numarul de iteratii: " << k;

cout << endl;system("pause");return 0;

}

Chisinau 2015