• Aucun résultat trouvé

nom- bres distincts. Nous ne manipulerons donc pas directement les nombres r´ eels mais des approximations. Le type double permet de repr´ esenter les nombres entre −1.7 × 10

N/A
N/A
Protected

Academic year: 2022

Partager "nom- bres distincts. Nous ne manipulerons donc pas directement les nombres r´ eels mais des approximations. Le type double permet de repr´ esenter les nombres entre −1.7 × 10"

Copied!
3
0
0

Texte intégral

(1)

IUT Littoral 2019 - 2020

Info 2A Ana. Num. – C++

TP 1 - Introduction

Pour repr´ esenter les nombres r´ eels nous allons utiliser le type double du C++. Le type double ´ etant habituellement cod´ e sur 64 bits, nous n’aurons acc` es qu’` a 2

64

nom- bres distincts. Nous ne manipulerons donc pas directement les nombres r´ eels mais des approximations. Le type double permet de repr´ esenter les nombres entre −1.7 × 10

−308

et 1.7 × 10

308

.

1. Fonction r´ eelle

Une fonction math´ ematique f : R → R sera cod´ ee en C++ par double f(double).

Exercice 1. On rappel que pour tout x ∈ R la fonction exponentielle est donn´ ee par : exp(x) =

+∞

X

k=0

x

k

k! .

a. Ecrire une fonction double exp v1(double x,size t n) qui retourne la valeur approch´ ee

exp

n

(x) =

n

X

k=0

x

k

k!

de exp(x).

b. Tester la fonction exp v1 pour x = 1 et n = 10, 15, 20 et 25.

c. Ecrire une fonction double exp v2(double x,double p) qui retourne une valeur approch´ ee exp

n

(x) de exp(x) v´ erifiant

| exp

n+1

(x) − exp

n

(x)| = |x|

n+1

(n + 1)! 6 p Exercice 2. Reprendre l’exercice 1 pour

arctan(x) =

+∞

X

k=0

(−1)

k

x

2k+1

2k + 1 .

Tester les fonctions pour x = −0.7 (Cette m´ ethode de calcul de arctan(x) fonctionne bien que pour des petites valeurs de x.)

Exercice 3. Soit a > 0 un nombre r´ eel. On consid` ere la suite (u

n

) donn´ ee par u

0

= 1 et u

n+1

= 1

2

u

n

+ a u

n

pour n > 0.

On suppose que la suite (u

n

) converge.

a. Expliquer rapidement pourquoi (u

n

) converge vers √ a.

b. Coder une fonction double sqrt(double a,size t n) qui retourne u

n

pour n’importe quel nombre a > 0.

c. Tester votre fonction pour diff´ erentes valeurs de a et de n. Par exemple a = 2 et

n = 4, 5, 6.

(2)

2

2. Quadrature

Soit I = [a, b] un intervalle de R et f une fonction continue de I dans R . Nous souhaitons obtenir une valeur approch´ ee de

A = Z

b

a

f (t)dt.

Exercice 4. Fixons un entier n > 1. Nous souhaitons d´ ecouper l’intervalle I en n sous- intervalles I

1

, . . . , I

n

de mˆ eme longueur.

a. Quelle est la longueur de l’intervalle I ? Et celle des intervalles I

k

? Pour k = 1, . . . , n, on pose I

k

= [x

k

, x

k+1

].

b. D´ eterminer les valeurs de x

k

pour tout k ∈ {1, . . . , n + 1}.

c. Justifier l’´ egalit´ e

Z

b

a

f (t)dt =

n

X

k=1

Z

xk+1

xk

f(t)dt.

Afin d’obtenir une valeur approch´ ee de A nous consid´ erons diff´ erentes m´ ethodes don- nant des valeurs approch´ ees des int´ egrales

A

k

= Z

xk+1

xk

f(t)dt

pour tout k ∈ {1, . . . , n}.

Exercice 5 (M´ ethode des rectangles). Fixons un entier k ∈ {1, . . . , n}. La m´ ethode des rectangles consiste ` a approcher f sur l’intervalle I

k

par la fonction constante

f

k

(x) = f(x

k

) + f (x

k+1

)

2 .

a. Faire un dessin

b. Quelle est la valeur approch´ ee de A

k

donn´ ee par cette m´ ethode ?

c. Ecrire (en pseudo langage) un algorithme permettant de calculer la valeur ap- proch´ ee de A en utilisant la m´ ethode des rectangles.

Exercice 6 (M´ ethode de Simpson). Fixons un entier k ∈ {1, . . . , n}. La m´ ethode de Simpson consiste ` a approcher f sur l’intervalle I

k

par une fonction parabolique f

k

passant par les points (x

k

, f (x

k

)) et (m

k

, f(m

k

)) et (x

k+1

, f (x

k+1

)) o` u m

k

=

xk+x2k+1

est le milieu de l’intervalle I

k

.

a. Faire un dessin

On note f

k

(x) = a

k

× x

2

+ b

k

×x + c

k

l’approximation de f ainsi obtenue sur l’intervalle I

k

. b. D´ eterminer a

k

, b

k

et c

k

en fonction de f, a

k

, b

k

et c

k

.

c. Quelle est la valeur approch´ ee de A

k

donn´ ee par cette m´ ethode ?

d. Ecrire (en pseudo langage) un algorithme permettant de calculer la valeur ap- proch´ ee de A en utilisant la m´ ethode des trap` ezes.

Exercice 7. Coder les deux m´ ethodes d’approximation de A obtenues aux exercices

pr´ ec´ edents en C++.

(3)

3

3. Calcul approch´ e de π .

Le but de cette section est de vous faire d´ ecouvrir diff´ erentes m´ ethodes retournant une valeur approch´ ee de π.

Exercice 8. Supposons qu’on tire al´ eatoirement des fl´ echettes sur la cible suivante :

On suppose que le carr´ e est de cˆ ot´ e 1.

a. Quel est la surface du carr´ e ? Du quart de disque ?

b. Quel est la propabilit´ e qu’une fl´ echette touchant la cible soit dans la zone grise ? c. En d´ eduire une m´ ethode probabiliste donnant une valeur approch´ ee de π.

d. Ecrire une fonction double monte carlo(size t n) qui effectue n tires de fl´ echettes al´ eatoirement sur la cible et retourne la valeur approch´ ee de π ainsi obtenue.

Exercice 9. On consid` ere la fonction f de [0, 1] dans R donn´ ee par f (x) = √

1 − x

2

et un entier n non nul quelconque. Conne ` a la section 2, on d´ ecoupe l’intervalle [0, 1] en n sous-intervalles I

k

= [α

k

, α

k+1

] pour k = 1, ..., n. On suppose que les intervalles I

k

sont de longueur

1n

et qu’on a 0 = x

1

< x

2

< ... < x

n

< x

n+1

= 1. La courbe de la fonction est le quart de cercle de l’exercice pr´ ec´ edent. On a donc

π 4 =

Z

1

0

f(t)dt =

n

X

k=1

Z

xk+1

xk

√ 1 − t

2

dt.

a. Ecrire une fonction double pi rectangle(double n) qui retourne une approx- imation de π en utilisant la m´ ethode des rectangles pour approximer l’int´ egrale de f . On utilisera la fonction sqrt d´ efinie ` a l’exercice 3 (en prenant 20 pour le param` etre n.)

b. Ecrire une fonction double pi simpson(double n) qui retourne une approxima- tion de π en utilisant la m´ ethode de Simpson.

c. Comparer ces deux m´ ethodes.

Exercice 10. En 1706 le math´ ematicien John Machin donne la fomule suivante : π

4 = 4 arctan 1

5 − arctan 1 239

A l’aide de la fonction double arctan v1(double a,size t n) coder ` a l’exercice 2

´

ecrire une fonction double machin(size t n) retournant une valeur approch´ ee de π

`

a l’aide de la formule de Machin. (Le param` etre n sera celui utilis´ e dans l’appel de

arctan v1.)

Références

Documents relatifs

Lorsque l’on examine l’intersection de deux intervalles ouverts de l’une ou l’autre des formes ]a, b[, ] − ∞, a[ ou ]a, +∞[, on voit que cette intersection est soit vide,

Pour chacune des fonctions logarithme n´ ep´ erien, exponentielle, puissance d’exposant α, sinus , cosinus et tangente , sont exig´ es. – les

Dans le contexte d’enquˆ ete sur la pˆ eche sportive, la s´ election par la m´ ethode du cube semble ˆ etre une excellente alternative d’´ echantillonnage... R´

Trouver l’erreur commise en appliquant la m´ ethode des rectangles ` a

En analyse num´ erique, la m´ ethode de Romberg est une m´ ethode r´ ecursive de calcul num´ erique d’int´ egrale, bas´ ee sur l’application du proc´ ed´ e d’extrapolation

Examen d’analyse num´ erique.. Aucun document n’est

Examen d’analyse num´ erique.. Aucun document n’est

Antisym´ etrie, bilin´ earit´ e. Caract´ erisation de vecteurs colin´ eaires. Interpr´ etation g´ eom´ etrique et notion d’orientation de l’espace... Chapitre 2.