Bonjour à tous,
Je viens vers vous aujourd'hui car je suis en train de péter un boulon sur les virgules flottantes ...
J'ai bien compris comment coder un tel nombre et ce n'est pas le but de ma question.
Mais, en regardant les tailles en bits des float et des int en C++, j'ai remarqué que la taille allouée pour un int est de 32bits et que cela permet de coder une plage de -2 147 483 648 à 2 147 483 647 soit 2^32 nombres.
Jusque là tout va bien. Mais j'ai aussi remarqué que la mémoire allouée pour un float est également de 32bits et que la plage que cela permet de coder est de -3.4*10^-38 à 3.4*10^38. Là est mon problème : je ne vois pas comment un nombre codé sur 32 bits peut permettre autant de possibilité sachant que le nombre maximum de combinaison que l'on peut faire est de 2^32 !!
Est-ce que les floats permettent de coder plus que 2^32 nombres sur 32 bits ? Et si oui comment cela est-il possible ?!
Je vous en supplie aidez moi ma tête est en train de tourner très vite ...
Merci beaucoup !
-----