Bonjour,

j'ai un convertisseur à faire pour un cours d'algo, j'ai réussis a faire la partir décimale vers binaire mais je sèche pour faire l'inverse.


J'ai commencer comme ceci :
=======================
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<script>
	var valbin = prompt("Entrez une valeur ");
	var i = 0 ;
	var tab=[];
	var valeur = 0 ;
	var resultat = 0 ;
	while (valbin.charAt(i) != "")
		{ 
			tab[i] = valbin.charAt(i) ;
			i++;
		}
		tab.reverse();
	document.write(tab)
========================
a ce stade je récupère bien chaque caractère tappé dans un tableau, tableau que j'inverse.

Je voulais ensuite reprendre chaque valeur du tableau et lorsque je rencontre la valeur 1 j'aurai quelque chose du type : Math.pow(2,i);

J'ai donc continuer par ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
	while (tab[i] != 0)
		{
			if ((tab[i]) != 0)
			{
				resultat += Math.pow(2,i);	
			}		
			i++;	
		}
	document.write(resultat) ;
 
</script>
Mais je me retrouve avec une boucle infini et un code qui ne fonctionne pas...
Sans avoir à faire avec des fonctions trop poussées (je débute), pourriez vous me donner des pistes?

Merci par avance,