Les bases de la numération
-
<p>Bonjour à vous !</p><p></p><p>
Avant de commencer, et avant que vous me criiez dessus, je tiens à m'expliquer :</p><p>
J'ai eu beaucoup d'idées de tutos pour Melinyel, de sujets qui me passionnent, et qui j'espère vous aideront.</p><p>
Et pour certains, la numération est importante pour bien comprendre, c'est pourquoi je refais un cours un peu plus poussé que celui existant déjà, en expliquant vraiment comment compter dans toutes les bases.</p><p></p><p>
Sur ce, commençons !</p><p></p><p><span><strong><span style="font-size:18px;">I - Introduction</span></strong></span></p><p></p><p>
Une petite introduction est toujours la bienvenue,</p><p>
Pour essayer de comprendre comment marchent certains aspects de l'informatique, il est préférable de comprendre comment compter en base 2 (binaire) ou même en base 16 (hexadécimale), pourquoi ?</p><p></p><p>
Car l'ordinateur ne sait pas compter après 1, il connait juste "0" et "1". Il est un peu bête me diriez vous, mais c'est tout à fait normal. En réalité, le "0" (ou 0 logique) signifie qu'il n'y a pas de courant (ou état bas, ou état 0) et le "1" (ou 1 logique) signifie qu'il y a du courant.</p><p>
A partir de la, l'ordinateur peut tout faire.</p><p></p><p>
Seulement, si nous devions communiquer avec lui en binaire, on n'aurait pas fini. C'est pourquoi on a crée les langages de programmation, qui servent d'intermédiaire entre le langage humain et le binaire pour communiquer avec l'ordinateur.</p><p></p><p>
Enfin la, je commence déjà a divaguer.</p><p>
Dans ce cours, nous allons nous intéresser à :</p><ul><li>Compter dans n'importe quelle base</li><li>Le binaire (compter, et faire des additions)</li><li>L'hexadécimal (qui est étroitement lié au binaire, vous verrez)</li></ul>
Ce cours sera sans doute un peu long, et fastidieux, j'essaierai d'être le plus clair possible, et le moins scolaire possible ^^<p>
N'hésitez pas a poser vos questions, et faire des remarques !</p><p></p><p><span><strong><span style="font-size:18px;">II - Compter dans n'importe quelle base</span></strong></span></p><p></p><p>
En réalité, quand je vous parle de base arithmétique, vous me prenez pour un dingue, qui parle une langue inconnue. Mais sans le savoir, vous savez déjà compter en base 10.</p><p>
Et oui Jamie, quand on compte dans la vie de tous les jours, on utilise une base décimale (ou base 10) !</p><p>
Concrètement, qu'est-ce que ça signifie ?</p><p>
Que vous avez 10 caractères "disponibles" pour compter (de 0 à 9) et qu'avec ça, on peut faire tous les nombres qu'on veut (en base 10)</p><p></p><p>
Prenons un nombre au hasard : 542.</p><p>
542, c'est quoi ?</p><p>
C'est 5 centaines + 4 dizaines + 2 unités</p><p>
Quoi ? Je vous prends pour des bébés ? Tant mieux ^^</p><p>
Pour parler un peu plus mathématiquement, 542 = 5100 + 410 + 21 ou même mieux :</p><p>
542 = 5(10^2) + 4*(10^1) + 2*(10^0) <span style="color:#ff0000;"><span style="font-size:10px;">(lire (10^2) = "10 exposant 2")</span></span></p><p></p><p>
C'est comme ça qu'on compte en base 10, et le principe est le même dans les autres bases. Je vous explique :</p><p></p><p>
Pour compter dans une base arithmétique, on reprends le même principe : (Numéro de la base)^0 puis 1 puis 2 etc...</p><p>
Je suis d'accord que c'est flou, mais on va l'appliquer directement au binaire, vous devriez comprendre.</p><p></p><p><span><strong><span style="font-size:18px;">III - Compter en binaire</span></strong></span></p><p></p><p>
Le binaire, comme son nom l'indique est en faite la base 2. Dans cette base, par pure convention, on appelle chaque caractère un "bit" et on aime travailler sur des systèmes de 8 bits (ou "octets").</p><p></p><p><strong><span style="color:#ff0000;">Attention : bit et Byte sont de faux amis. bit = bit et Byte est la traduction anglaise d'octet donc 8 bits = 1 Byte (Byte a toujours un B majuscule)</span></strong></p><p></p><p>
On obtiens donc la grille suivante pour un octet : <img alt="acaa3a4c3d.png" src="https://puu.sh/b1ALV/acaa3a4c3d.png"/></p><p></p><p>
Bon, c'est bien beau, mais concrètement, comment on passe du décimal au binaire ?</p><p>
Vous vous souvenez, un peu plus haut, je vous ai montré comment compter dans n'importe quelle base ?</p><p>
Appliquons-le ici, voila les valeurs que prennent chaque case (en rouge, c'est la valeur en base 10) :</p><p><img alt="f71ee7aa65.png" src="https://puu.sh/b1B5l/f71ee7aa65.png"/></p><p></p><p>
Cette grille est quelque chose d'utile à savoir, a mon sens, c'est la base de tout.</p><p></p><p>
Pour convertir un nombre décimal en binaire, il existe plusieurs méthodes :</p><ul><li>Vous connaissez déjà le résultat. La, pas de soucis.</li><li>A la calculatrice (si elle le fait)</li><li>A la main : C'est la partie que l'on va approfondir un peu ici, car c'est la plus amusante !
</li></ul>
Donc comment faire ?<p>
Pour expliquer, on va passer par un exemple :</p><p>
Prenons le fameux nombre 42, on va le convertir en binaire. Vous êtes prêts ? On y va !</p><p></p><p>
L'idée ici est de faire une succession de divisions par 2, du nombre que l'on veut convertir en binaire.</p><p>
Les restes des divisions successivs lus de droite à gauche composeront notre nombre en binaire.</p><p></p><p>
Pour se rendre compte de l'intérêt de cette méthode, nous allons poser les divisions :</p><p></p><p><img alt="5c867dc459.png" src="https://puu.sh/b3h87/5c867dc459.png"/></p><p></p><p>
Ce qui donne au final : <img alt="59c448ef0c.png" src="https://puu.sh/b1Bvf/59c448ef0c.png"/></p><p></p><p>
Je reconnais que au début, c'est fastidieux, c'est long, il faut du papier pour écrire. Mais comme on dit, c'est en forgeant qu'on devient forgeron, et plus vous en faites, mieux ça ira !</p><p></p><p>
C'est exactement le même principe pour tous les autres nombres.</p><p></p><p>
Aller, je vous en donne quelques un avec les réponses, mais essayez de les faire sans regarder
!</p><p></p><p>
5</p><p>
127</p><p>
186</p><p>
254</p><p>
357</p><p></p><p>
Et voila les réponses :</p><p></p><blockquote class="ipsStyle_spoiler" data-ipsspoiler=""><p>5 = 101</p><p>
127 = 01111111</p><p>
186 = 10111010</p><p>
254 = 11111110</p><p>
357 (un peu plus difficile celui-ci !) = 101100101</p></blockquote><p></p><p><span style="font-size:14px;"><strong>Vous avez compris tout ça ? Parfait, on va pouvoir faire quelques additions !
</strong></span></p><p></p><p>
N'ayez pas peur, c'est très simple. Vous savez faire une addition en base 10 ? (Avec des retenues hein, faut pas déconner non plus !
)</p><p>
Vous saurez donc faire une addition en base 2.</p><p></p><p>
Je vais encore une fois illustrer mes propos par un exemple, essayons de faire :</p><p>
101010 + 1010 (En décimal, c'est 42+10).</p><p></p><p>
On pose l'addition :</p><p><img alt="ced0dbacd6.png" src="https://puu.sh/b1GfQ/ced0dbacd6.png"/></p><p></p><p>
Et c'est parti, on résoud !</p><ul><li>0+0, pas de surprise, ca fait<span style="font-size:12px;"> <del>la tête a toto</del></span> <span style="font-size:14px;">0</span></li><li>1+1, on serait tenté de dire 2 hein ? Sauf que, en binaire, on a seulement 0 et 1, donc 1+1 = 10. Ici, on notera 0, et on retiens 1 !</li></ul>
On en arrive ici : <img alt="03c313dfd3.png" src="https://puu.sh/b1GqP/03c313dfd3.png"/><ul><li>0+0+1 = 1</li><li>1+1 = 10, donc je note 0 et je retiens 1</li><li>0+0+1 = 1</li><li>1+0 = 1</li></ul>
Et voila, on arrive à ce résultat : <img alt="14d2589aea.png" src="https://puu.sh/b1GxE/14d2589aea.png"/><p></p><p>
Et normalement, 110100 devrait donner 52, on vérifie : 32 + 16 + 4 = 52 <span style="color:#008000;">On a tout juste ! Bravo !</span></p><p></p><p>
Voila, pour la base du binaire. Je ne ferais pas les autres opérations (du moins pour le moment peut être), et je n'aborderai pas les nombres négatifs (que l'on appelle le Complément à 2 ou Cà2 pour les intimes).</p><p></p><p>
On va brièvement passer à l'hexadécimal, je veux surtout vous montrer une méthode efficace pour passer du binaire à l'hexa, et inversement car le reste, vous savez le faire maintenant !</p><p></p><p>
C'est parti !</p><p></p><p><span><span style="font-size:18px;"><strong>IV - L'hexadécimal </strong></span></span><span><span style="font-size:18px;"><strong>: Ou compter avec des lettres (WTF ?!)</strong></span></span></p><p></p><p>
L'hexadécimal est donc la base 16. Vous me direz, comment on peut faire une base 16, alors que on n'a que 10 chiffres de disponibles ? Eh bien, en mettant des lettres. en effet l'hexadécimal contient 16 caractères de 0 à F.</p><p></p><p>
On peut donc montrer le tableau suivant :</p><p><img alt="655649a2cc.png" src="https://puu.sh/b1H5n/655649a2cc.png"/></p><p><a href="http://www.apprendre-en-ligne.net/crypto/images/bases.html" rel="external nofollow">Source</a></p><p></p><p>
Note : On notera un nombre en Hexadécimal avec le préfixe 0x (Exemple : 0xFF)</p><p></p><p>
Voila, vous savez tout.</p><p></p><p>
Passons donc directement à la conversion binaire <-> hexadécimal</p><p>
Vous me direz : "C'est plutôt simple, il suffit de passer par le décimal !"</p><p>
On pourrait, mais on perdrait trop de temps, et nous on cherche plutôt à en gagner !</p><p></p><p>
Heureusement pour nous, les choses ont été bien faites.</p><p></p><p>
Prenons 4 bits en binaire. On a 16 valeurs possibles (de 0000 à 1111). Comme l'hexadécimal me direz vous, et bien oui ! Un "quartet" (4 bits) est en fait un caractère hexadécimal.</p><p>
Pour la conversion, c'est plutôt simple :</p><p>
Prenons par exemple 10010110 que l'on veut convertir en Hexa.</p><p>
On divise l'octet en quartets, on a donc : 1001 et 0110</p><p>
Suivant le tableau ci-dessus, on a 1001 = 0x9 et 0110 = 0x6</p><p>
Donc 10010110 en binaire vaut 0x96 en hexa.</p><p></p><p>
Simple non ?</p><p></p><p>
Ca marche aussi dans le sens inverse,</p><p>
Cherchons a convertir 0xA2 en binaire :</p><p>
0xA = 1010 en binaire et 0x2 = 0010 en binaire</p><p>
Donc 0xA = 10100010 en binaire et vaut 162 en décimal.</p><p></p><p><span><strong><span style="font-size:18px;">V - Les entiers relatifs</span></strong></span></p><p></p><p>
Bon, jusqu'à maintenant, nous n'avons vu que les entiers naturels, c'est à dire les entiers positifs. C'est pas mal, mais on peut pousser le vice encore plus loin, de façon à ce que ça soit plus pratique (effectivement, si on ne doit faire que des additions ou des soustractions qui ont un résultat positif, on n'est pas rendus...)</p><p></p><p>
Notez que dès maintenant, je me situerai en base 2. Le principe de conversion restant le même, je n'ai plus besoin d'y revenir
</p><p></p><p>
Comment on note des nombres négatifs en binaire ? C'est simple, pour ça on va utiliser ce qu'on appelle le <strong>"Complément à 2"</strong></p><p>
C'est quoi le Complément à 2 ? Eh bien, c'est le complément à 1 + 1. Tout simplement.</p><p></p><p>
Comment différencier un nombre positif d'un nombre négatif en complément à 2 ?</p><p>
On va a voir ce qu'on appelle un "bit de signe" qui sera situé à gauche (on dit que c'est le bit de poids fort ou "MSB") de notre nombre en binaire.</p><p>
Lorsque le bit de signe est à 0, le nombre est positif et lorsque le bit de signe est à 1, le nombre est négatif.</p><p></p><p>
Seulement, comment savoir quel bit est le bit de signe ?</p><p>
Très bonne question !</p><p>
En réalité, avant de convertir un nombre en complément à 2, on se place dans un intervalle de n bits (on dit, le nombre que je vais convertir est codé sur n bits) ce qui donne l'intervalle suivant : [-(2^n)/2 ; ((2^n)/2)-1]</p><p></p><p>
Pourquoi ((2^n)/2)-1 ? Car il y a le zéro au milieu qui n'est ni positif, ni négatif, mais qui est tout de même présent, il faut donc lui laisser un place dans l'intervalle.</p><p></p><p>
Bref, attaquons !</p><p>
Plus concrètement, mettons que l'on ait (0101)B (0101 en binaire), comment obtenir l'opposé ?</p><p></p><p>
Pour cet exemple, notre nombre est codé sur 4 bits, donc on est sur l'intervalle [-2^4/2 ; ((2^4)/2)-1], ou encore [-8;7].</p><p>
Et le MSB ici est égal à 0 donc le nombre (0101)2 est bien positif. On peut le convertir :</p><p></p><p>
Il nous suffit de faire une inversion bit à bit, et de rajouter 1.</p><p></p><p>
Regardons le résultat :</p><p>
C2(0101) = (1010)2 + 1 = (1011)2</p><p></p><p><span><strong>Note :</strong></span> En complément à 2, 1011 = 1111111111011 peu importe le nombre de "1" présents <strong>à gauche</strong>, du moment qu'il y en a un pour dire "c'est un nombre négatif", on peut en mettre une infinité.</p><p></p><p>
Voila, (1011)2 = -5. C'est simple non ?</p><p></p><p>
Vous cherchez maintenant à convertir un nombre négatif en nombre positif ? Eh bien sachez que c'est EXACTEMENT la même méthode. Inversion bit à bit +1. Tout simplement.</p><p>
Vous savez donc aussi maintenant écrire des nombres négatifs en Hexadécimal Cà2 !</p><p></p><p>
C'est fou qu'on apprend vite
</p><p>
Aller, on passe a quelque chose de beaucoup plus subtil !</p><p></p><p><span><strong><span style="font-size:18px;">VI - Tous les réels</span></strong></span></p><p></p><p>
On a donc vu les entiers naturels, les entiers relatifs.</p><p>
Mais il serait intéressant de pouvoir exprimer des nombres à virgule non ? Par exemple, comment exprimer -12,75 ? Vous pensez que c'est impossible ? Vous faites erreur !
</p><p></p><p>
PS : Je signale que cette partie est nettement moins compréhensible que les précédentes. Il se peut que je m'embrouille moi même dedans, n'hésitez pas à me corriger !
</p><p></p><p>
Pour exprimer un réel, il est préférable de se positionner sur beaucoup de bits (vous allez comprendre pourquoi).</p><p>
Ici, j'utiliserai 32 bits (Norme <a href="http://fr.wikipedia.org/wiki/IEEE_754" rel="external nofollow">IEEE 754</a>) que l'on va découper en 3 parties comme l'image suivante :</p><p></p><p><img alt="IEEE754_Format_General.png" src="https://upload.wikimedia.org/wikipedia/commons/2/29/IEEE754_Format_General.png"/></p><p></p><p>
Dans notre cas, il y aura :</p><ul><li>1 bit de signe</li><li>8 bits d'exposant</li><li>23 bits de mantisse</li></ul>
Comme ceci : <img alt="IEEE754_simple_precision.png" src="https://upload.wikimedia.org/wikipedia/commons/0/08/IEEE754_simple_precision.png"/><p>
Du charabia hein ?
</p><p></p><p>
Il faut savoir que la mantisse ne prends pas les valeurs que l'on a pu voir jusqu'à maintenant.</p><p>
On prends le MSB de la mantisse, il a la valeur 2^-1 et on augmente l'exposant au fur et à mesure que l'on se décale sur la droite.</p><p>
Ce qui donnerait donc : 2^-1 2^-2 2^-3 ... 2^-23 (pour 32 bits).</p><p></p><p>
En fait, c'est très simple. Le nombre réel correspondant à un nombre binaire suit la formule suivante :</p><p></p><pre class="ipsCode prettyprint lang-auto">
R = (-1)^s * (1+m) * 2^(e-127)Avec :
- s : La valeur du bit de signe
- e : La valeur de l'exposant
- m : La valeur de la mantisse
</pre>
On est bien avancés avec ça...<p>
Hé bien, a vrai dire, plutôt
</p><p></p><p>
Essayons d'exprimer le nombre suivant en décimal :</p><pre class="ipsCode prettyprint">
(1 10000010 01100000010000000000000)2 (Hé oui, on est sur 32 bits !)
</pre>
Je suis gentil, je vous ai fait les séparations des différentes parties
<p></p><p>
Donc on a :</p><p>
e = 128 + 2</p><p>
m = 2^-2 + 2^-3 + 2^-10 = 1/4 + 1/8 + 1/(2^10) = 0,3759765625</p><p></p><p>
En appliquant la fameuse formule, on a :</p><p><span style="color:#008000;">R = (-1)^1 * (1,3759765625) * 2^(130-127) = <span><strong>-11,0078125</strong></span></span></p><p></p><p>
Sympathique n'est-ce pas ?
</p><p></p><p>
Vous êtes encore présents ? Aller, on fait dans l'autre sens ?</p><p>
Reprenons -12,75. Qu'avons nous ?</p><p></p><p>
Regardez la photo suivante :</p><p></p><p><img alt="b1c792a792.png" src="https://puu.sh/bnWXU/b1c792a792.png"/></p><p>
(Source : Mon cours sur les systèmes informatiques)</p><p></p><p>
Et voila, vous savez tout !</p><p>
Si vous avez des questions ou des remarques, n'hésitez pas !
</p><p>
Pirkoa</p>
-
<p>En même temps le premier topic vient de Mars donc bon .. source : <iframe data-embed-src="<base_url>/topic/771-compter-en-base-2-10-et-16/?do=embed" data-embedcontent="" frameborder="0" src="//melinyel.net/applications/core/interface/js/spacer.png"></iframe>)</p>
<p>C'est une très bonne chose que tu détailles ça ^^'</p> -
<blockquote class="ipsQuote" data-cite="Drobat" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10584" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408622800" data-ipsquote-username="Drobat"><div><p>En même temps le premier topic vient de Mars donc bon .. source : <iframe data-embed-src="<base_url>/topic/771-compter-en-base-2-10-et-16/?do=embed" data-embedcontent="" frameborder="0" src="//melinyel.net/applications/core/interface/js/spacer.png"></iframe>)</p><p>C'est une très bonne chose que tu détailles ça ^^'</p></div></blockquote><p>J'ai lu justement l'autre sujet, j'ai trouvé (ce n'est pas méchant hein
) qu'il "survolait" un peu la chose, j'ai décidé d'érire quelque chose de plus poussé encore, mais sans trop m'enfoncer ^^ J'espère avoir fait le bon choix, et ne pas bêtement répèter ce que disait mars.</p> -
<blockquote class="ipsQuote" data-cite="Soulalex" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10588" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408624843" data-ipsquote-username="Soulalex"><div>
<div>
<p>Je te félicite pour ce tutoriel très complet et très instructif
</p>
</div>
</div></blockquote>
<p>Merci beaucoup ! ^^</p>
<p>Et encore, il en manque pas mal
Je l'etofferai si je trouve le temps (et la motiv :v)</p> -
<blockquote class="ipsQuote" data-cite="mars073" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10607" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408652536" data-ipsquote-username="mars073"><div>
<div>
<p>j'avoue j'ai un peu "survolait" mais je fais des tutos "rapide"
</p><p>
sinon assez complet, un peu trop de texte mais +1Rep quand même</p>
</div>
</div></blockquote>
<p> </p>
<p>Je pense que effectivement il y a beaucoup de texte ^^ Après, je vois mal comment en mettre moins, il faut tout de même expliquer ^^</p> -
<p>ça sert à rien de formater le binaire sur un quartet (4bits) ou alors autant formater l'hexa en 6 caractères avec "0x" devant
</p><p> </p><blockquote class="ipsQuote" data-cite="Pirkoa" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10582" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408622115" data-ipsquote-username="Pirkoa"><div><p>Donc, prenons 42 :</p><p>"Est-ce que dans 42, il y a 128 ? Non. Je mets donc un 0"</p><p>"Est-ce que dans 42, il y a 64 ? Non plus. Je mets un 0"</p><p>"Est-ce que dans 42, il y a 32 ? Oui. Je mets un 1, <strong>et je soustrais</strong> : 42-32 = 10"</p><p>"Est-ce que dans 10 il y a 16 ? Non. Je mets un 0"</p><p>"Est-ce que dans 10, il y a 8 ? Oui. Je mets un 1 <strong>et je soustrais</strong> 10-8 = 2"</p><p>"Est-ce que dans 2, il y a 4 ? Non. Je mets un 0"</p><p>"Est-ce que dans 2, il y a 2 ? Oui. Je mets un 1 <strong>et je soustrais</strong> 2-2 = 0"</p><p>"Est-ce que dans 0, il y a 1 ? Non. Je mets donc un 0"</p><p> </p><p>Ce qui donne au final : <img alt="59c448ef0c.png" src="https://puu.sh/b1Bvf/59c448ef0c.png"/></p></div></blockquote>pour convertir en binaire à mon école on fessait:<p>42 = 224 + <strong><span style="color:#800080;">0</span></strong></p><p>21 = 210 + <strong><span style="color:#800080;">1</span></strong></p><p>10 = 25 + <strong><span style="color:#800080;">0</span></strong></p><p>5 = 22 + <strong><span style="color:#800080;">1</span></strong></p><p>2 = 2*<strong><span style="color:#FF0000;">1</span></strong> + <strong><span style="color:#800080;">0</span></strong></p><p></p><p>tu prends le chiffre rouge puis les mauves de bas en haut ce qui donne 10 1010 donc bien 42 ^-^</p><p></p><p>parcontre convertir binaire en décimal on fessait comme tu as fais sur ton tableau et si c'est 1 on ajoute le chiffre expose donc là ça ferait</p><p>32+8+2 = 42
</p><p></p><p>je pense pas en avoir parlé sur mon post mais il existe une notation appelée BCD</p><p>est par exemple 42 se formate sur 2 quartets (un pour 4 et le second pour 2) de qui donne: 0100 0010</p> -
<blockquote class="ipsQuote" data-cite="mars073" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10631" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408717279" data-ipsquote-username="mars073"><div>
<div>
<p>pour convertir en binaire à mon école on fessait:</p><p>
42 = 224 + <strong><span style="color:#800080;">0</span></strong></p><p>
21 = 210 + <strong><span style="color:#800080;">1</span></strong></p><p>
10 = 25 + <strong><span style="color:#800080;">0</span></strong></p><p>
5 = 22 + <strong><span style="color:#800080;">1</span></strong></p><p>
2 = 2*<strong><span style="color:#FF0000;">1</span></strong> + <strong><span style="color:#800080;">0</span></strong></p>
</div>
</div></blockquote>
<p> </p>
<p>Après je ne dis pas qu'il y a une seule méthode, au contraire ^^</p>
<p>En revanche, j'ai du mal à comprendre ta méthode ^^</p>
<p> </p>
<p>Je ne fais que proposer une solution !
</p> -
<blockquote class="ipsQuote" data-cite="Pirkoa" data-ipsquote="" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentcommentid="10633" data-ipsquote-contentid="1009" data-ipsquote-contenttype="forums" data-ipsquote-timestamp="1408718110" data-ipsquote-username="Pirkoa"><div><p>Après je ne dis pas qu'il y a une seule méthode, au contraire ^^</p><p>En revanche, j'ai du mal à comprendre ta méthode ^^</p><p> </p><p>Je ne fais que proposer une solution !
</p></div></blockquote>Elle est plus simple que la tienne sur des grand chiffre, tu prends 11 par exemple:<p>11 / 2 = 5.5 mais tu peux avoir que des entier dans ça donne</p><p>donc avec ma méthode 11=25+1 tu reprends le 5 qui se trouve au milieu et tu redivise par la base</p><p>5 / 2 = 2.5 pas entier donc pareil = 5 =22 +1</p><p>2/2= 1 donc 2=2*1+0</p><p></p><p>rendu:</p><p>11 = <span style="color:#008000;"><strong>2</strong></span> * 5 + <span style="color:#800080;"><strong>1</strong></span></p><p>5 = <span style="color:#008000;"><strong>2</strong></span> * 2 + <span style="color:#800080;"><strong>1</strong></span></p><p>2 = <span style="color:#008000;"><strong>2</strong></span> * <span style="color:#FF0000;">1</span> + <span style="color:#800080;"><strong>0</strong></span></p><p>résultat = 1011</p><p><strong><u>Légende:</u></strong></p><p><span style="color:#008000;"><strong>Base dans la quel il faut convertir</strong></span></p><p><span style="color:#FF0000;"><strong>premier chiffre de la réponse</strong></span></p><p><span style="color:#800080;"><strong>Chiffres suivants de la réponse (à prendre de bas en haut)</strong></span></p><p></p><p>jolie dessin: ^-^</p><p><img alt="count-47409e3.png" src="<base_url>/applications/sslimageproxy/interface/image.php?url=http://img110.xooimage.com/files/1/c/f/count-47409e3.png"/></p> -
<p>Je vois le truc, ca ressemble au final à ça non ?</p>
<p> </p>
<p>Mettons que je veuille convertir 77 :</p>
<p> </p>
<p><img alt="9bcaa8f449.png" src="https://puu.sh/b3eGO/9bcaa8f449.png"/></p>
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login