07 octobre 2007

 

Méfiez vous des calculatrices !

Même avec un système informatique irréprochable, la plupart des calculs conduisent inévitablement à des erreurs, heureusement repérables dans la majorité des cas. En effet, le résultat d'une opération sur ordinateur ne peut presque jamais être représenté exactement!

Les nombres représentables exactement, qui forment un sous-ensemble des nombres rationnels, sont appelés nombres machine. Tous les autres doivent être arrondis, c'est-à-dire fournir un nombre machine proche du résultat exact.Seuls les rationnels dont la forme irréductible est n/(2^q), peuvent avoir une représentation exacte ; les autres ont nécessairement une représentation approchée (par exemple, le nombre décimal 1/10 est converti en base 2 en 0.000110011..., la partie coloriée étant répétée indéfiniment)

Une succession d'arrondis peut conduire à des résultats extravagants comme dans l'exemple qui suit:

Considérons la suite de nombres u0, u1, u2… définie par :

u0 = 3/2 = 1,5
u1 = 5/3 = 1,6666666…
un+1 = 2003 - 6002/un + 4000/un un-1

La suite tend vers 2 (ce qui veut dire que les termes un s'approchent de plus en plus de 2 lorsque n croît).Pourtant si on calcule ses termes sur n'importe quel ordinateur (sauf avec un système qui fait du calcul exact avec les nombres rationnels), on aura l'impression qu'elle tend vers 2000.

Par exemple, la table suivante montre ce qu'on obtient avec une arithmétique virgule flottante de base 10 avec une précision de 10 chiffres (comme celle d'une calculette de lycéen).

n

Valeur calculée

Valeur exacte arrondie

2

1,800001

1,800000000

3

1,890000

1,888888889

4

3,116924

1,941176471

5

756,3870306

1,969696970

6

1996,761549

1,984615385

7

1999,996781

1,992248062

8

1999,999997

1,996108949

9

2000,000000

1,998050682

10

2000,000000

1,999024390


Extrait du Site interstices

Libellés :






<< Home

This page is powered by Blogger. Isn't yours?