Changement de base de nombres fractionnaires

L’auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour !

J’essaye de noter le nombre réel 0,730,73 en base 2. J’obtiens :

0,101110101...0,101110101...

Comment est-ce possible qu’un nombre rationnel s’écrive avec une infinité de décimales en base 2 ?

+0 -0

C’est un phénomène qui existe aussi en base 10, par exemple 1/31/3 s’écrit bien avec une infinité de décimales

Holosmos

Peut être que sa question vient plus du fait que 0,73 en base 10 est fini mais en base 2 non.

Donc pour clarifier cela, 1/31/3 en base 10 est en effet avec une représentation infinie, mais en base 3 cela devient naturellement 0,1 qui est fini aussi.

Amateur de Logiciel Libre et de la distribution GNU/Linux Fedora. #JeSuisArius

+1 -0

Salut,

J’ai du mal à croire que 0,73 s’écrive en base 2 avec une infinité de décimales (contrairement à 1/3). J’ai vérifié avec Python, seulement je me retrouve limité par la capacité des nombres flottants de la norme IEEE 754 (manque de précision, donc).

Ou alors ça revient à vouloir additionner des moitiés successives de 1 jusqu’à vouloir arriver à 1 (et on n’y arrive alors jamais) ? Genre 1/2 + 1/4 + 1/8… Dans ce cas on aurait une infinité de décimales ?

Je me suis donc dit qu’il devait bien y exister des outils mathématiques pour le prouver, mais cela dépasse mes connaissances.

Quelqu’un aurait-t-il l’amabilité de m’éclairer sur la chose ?

J’ai du mal à croire que 0,73 s’écrive en base 2 avec une infinité de décimales (contrairement à 1/3). J’ai vérifié avec Python, seulement je me retrouve limité par la capacité des nombres flottants de la norme IEEE 754 (manque de précision, donc).

1/3 s’écrit aussi avec une infinité de décimales en base 2. Il s’écrit 0.1 en base 3.

Je me suis donc dit qu’il devait bien y exister des outils mathématiques pour le prouver, mais cela dépasse mes connaissances.

Quelqu’un aurait-t-il l’amabilité de m’éclairer sur la chose ?

Ge0

Un nombre en base k avec n chiffres après la virgule peut s’écrire sous une forme X/knX / k^n. Par exemple, 123.456 en base 10 peut s’écrire 123456/103123456/10^3. 0.73 ne peut pas s’écrire sous cette forme (c’est 73/100=73/(2252)73/100 = 73 / (2^2 * 5^2), avec un 55 au dénominateur que tu ne peux pas simplifier). 1/3 non plus.

+3 -0

0,101110101...0,101110101...

Comment est-ce possible qu’un nombre rationnel s’écrive avec une infinité de décimales en base 2 ?

Green

En fait, même en base 10 il peut s’écrire avec une infinité de décimale. 0,730...010,730 ... 01 ou 0,729...0,729...

Édité par ache

ache.one                 🦹         👾                                🦊

+0 -4

J’ai du mal à croire que 0,73 s’écrive en base 2 avec une infinité de décimales (contrairement à 1/3). J’ai vérifié avec Python, seulement je me retrouve limité par la capacité des nombres flottants de la norme IEEE 754 (manque de précision, donc).

Ge0

Justement, on remarque avec cette norme que 0,73 n’est pas représentable en base 2, et qu’il est arrondi à 1643813863990231251\frac{1643813863990231}{2^{51}} (0,729999999999999982236431605997495353221893310546875).

Édité par entwanne

Cette réponse a aidé l’auteur du sujet

Sans aller chercher jusqu’à 0.73, même 0.1 a besoin d’une infinité de digits pour s’écrire en base 2. Faisons le calcul pour 1/10 … et tu comprendras.

1/10 est plus petit que 1/2 donc on commence par 0.0??

Il est plus petit que 1/4 , il est plus petit que 1/8 , donc on commence par 0.00???

Il est plus grand que 1/16, donc on commence par 0.001???

1/10–1/16 est plus grand que 1/32, donc on commence par 0.0011???

1/10–1/16–1/32 est il plus grand que 1/64 ? 1/10–1/16–1/32, c’est 1/10–3/32 , ce nombre est il plus grand que 1/64 etc etc

On s’arrêtera quand ? On s’arrêtera quand on aura trouvé exactement 1/10. Dans mon calcul précédent, j’avais 3/32. Si on généralise, j’aurais toujours un truc du genre a/b, avec b égal à une puissance de 2. Et pour que ce ratio a/b soit égal à 0.1, il faut déjà que le dénominateur soit un multiple de 10. Or aucune puissance de 2 n’est un multiple de 10.

Donc une somme de nombres comme 1/16+1/32+1/128 etc ne donnera jamais exactement 1/10. Et donc on a besoin d’une infinité de digits pour écrire 1/10.

+0 -0

Il vient d’où ton 1 final ?
Je dirai plutôt qu’il peut s’écrire 0,72999999….

Looping

Euh … En quoi 0.7299… c’est plus cohérent ? Il est où le 33 et pourquoi tant de 99 ?

Je pourrais bien tenter de te convaincre mais bon pas sûr d’y arriver.

0=0.0..1=0.0..10 = 0.0..1 = -0.0..1

Que tu retires où ajoutes 00 tu vois que ça change pas grand chose.

Sinon, tu peux remarquer que 0.730.729..=0.730..10.730.73 - 0.729.. = 0.730..1 - 0.73. Je sais pas si ça t’aide à être convaincu.

On pourrait même écrire : 0.730.729..=0.730.730..10.73 - 0.729.. = 0.73 - 0.730..1

Édité par ache

ache.one                 🦹         👾                                🦊

+0 -5

Euh … En quoi 0.7299… c’est plus cohérent ? Il est où le 33 et pourquoi tant de 99 ?

ache

Parce que 0,999...0,999... avec une infinité de 9 est juste une autre écriture pour 1.

x=0,999...10x=9,999...=9+x9x=9x=1x = 0,999... \\ 10x = 9,999... = 9 + x \\ 9x = 9 \\ x = 1

Je pourrais bien tenter de te convaincre mais bon pas sûr d’y arriver.

0=0.0..1=0.0..10 = 0.0..1 = -0.0..1

Que tu retires où ajoutes 00 tu vois que ça change pas grand chose.

Sinon, tu peux remarquer que 0.730.729..=0.730..10.730.73 - 0.729.. = 0.730..1 - 0.73. Je sais pas si ça t’aide à être convaincu.

On pourrait même écrire : 0.730.729..=0.730.730..10.73 - 0.729.. = 0.73 - 0.730..1

ache

Mais ajouter un 1 dans le développement décimal, aussi infime soit-il, donne juste un autre nombre. 0,730,72999...=00,73 - 0,72999... = 0, pas 0,000...10,000...1.

Édité par entwanne

0,0000...10,0000...1 est une écriture qui n’a simplement aucun sens. 0,999990,99999, ça veut essentiellement dire "tous les chiffres sont des 9 aussi loin qu’on veut". Toi tu écris 0,000...10,000...1 comme si ça voulait dire "tous les chiffres sont des 0, aussi loin qu’on veut, sauf le dernier qui est un 1". Ça ne veut rien dire : il n’y a pas de dernier chiffre dans un développement décimal infini.

Ça se verrait un peu mieux si les choses étaient formalisées, là en bougeant les mains suffisamment vite et en plissant les yeux tu arrives à te convaincre que ça va passer, mais c’est pas comme ça que ça marche. Tu ne peux pas juste faire un truc qui "a l’air bon" en rajoutant des "…" au milieu :-)

Édité par Eusèbe

+9 -0

Pour compléter : c’est une histoire de série numérique. On peut considérer la série de terme général 9n10.1n9\cdot\sum_{n\ge1}0.1^{-n}, qui est une série à termes positifs et de raison 0.90.9 donc convergente et sa somme est 99.

Plus généralement, on peut démontrer que tout nombre décimal (je le fais en base 10 sinon je vais me tromper, mais ça marche dans n’importe quelle base :-° ) admet une unique écriture dite « propre », essentiellement l’écriture qui utilise un nombre fini de chiffres. Bien sûr, le résultat ne s’étend pas au rationnels, pour lesquels on a seulement la périodicité à partir d’un certain rang de la suite des décimales.

Édité par c_pages

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte