Question

Je comprends n'importe quel fraction pour être un quotient d'entiers qui ne sont pas0 , mais après avoir traversé le terme "flotteur" dans divers langages de programmation (tels que JavaScript), je comprends mal comprendre pourquoi il est même nécessaire et nous ne disons pas une fraction à la place.

Quelle est la différence entre une fraction et un flotteur?

Était-ce utile?

La solution

Les ordinateurs gèrent généralement des nombres à virgule flottante plutôt qu'avec des fractions. La principale différence est que les nombres de points flottants ont une précision limitée, mais sont beaucoup plus rapides pour effectuer des arithmétiques avec (et sont le seul type de nombres non entiers pris en charge de manière native dans le matériel).

Les numéros de point flottant sont stockés dans "Notation scientifique" avec une précision fixe , qui dépend du type de données. À peu près, ils sont stockés dans la forme $ \ alpha \ cdot 2 ^ \ beta $ , où $ 1 \ Leq \ alpha <2 $ , $ \ beta $ est un entier, et les deux sont stockés dans un nombre fixe de bits. Cela limite la précision de $ \ alpha $ et la plage de $ \ beta $ : si $ \ alpha $ est stocké avec $ A $ A $ bits (comme $ 1. x_1 \ ldots x_a $ ) alors il exprime toujours une fraction dont le dénominateur est 2 ^ a $ , et si $ \ beta $ est stocké avec $ B $ bits alors il est toujours dans la plage $ - 2 ^ {b-1}, \ ldots, 2 ^ {b-1} -1 $ .

En raison de la précision limitée des nombres à virgule flottante, l'arithmétique de ces chiffres n'est qu'approximatif, conduisant à des inexactitudes numériques. Lorsque vous développez des algorithmes, vous devez garder cela à l'esprit. Il y a en fait une zone entière de l'informatique, Analyse numérique , consacrée à de tels problèmes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top