ben justement 2^0 = 1
2^1 = 2
2^2 = 4
2^3 = 8
15 = (2^0 + 2^2 + 2^3 + 2^4) = 1111
je ne dis pas que la méthode de jpa n'est pas bonne, j'essaie de donner un truc le plus simple possible. A ce que je sache, quand on t'apprends à convertir un nombre deci en nombre binaire, on te dis de faire des divisions successives par 2, c sur quoi je me base :
quot := 15;
rest := 0;
1)
quot = 7
rest = 1
2)
quot = 3
rest = 1
3)
quot = 1
rest = 1
et à la fin tu as 1111
le pb c'est que les chiffres sont affichés à l'envers donc on fait comme jpa :
on crée un tableau de longueur 8 nommé binar qu'on initialise à 0, ensuite on fait :
bon tu fais un truc du style :
writeln ('entrez le nb à convertir');
readln (nb);
quot := nb;
rest := 0;
i:=1;
while (quot >= 1) do
{
quot := (quot div 2);
rest := (quot % 2);
binar[i] := rest;
i := i+1;
}
for i=8 downto 1 do
write (binar[i];
il me semble que ça marche comme ça.
[edit]--Message édité par Bounga69--[/edit]