Bonjour
J’en suis content (après en avoir essayé plusieurs des dépôts) sauf que . . .
quelqu’un pourrait-il m’expliquer comment réaliser une conversion d’un nombre base 10 en nombre base 2.
Simplement, directement et rien d’autre !
- Tu divises ton nombre euclidiennement (avec reste) par 2.
- Si le nombre est impair, au début de la conversion en base 2, tu notes 1, sinon 0.
- Remplace le nombre par le quotient.
- Tant que ton nombre n’est pas 0, tu recommences au 1).
Exemple avec 37 :
37=18×2+1 → 1 reste 18
18=9×2+0 → 01 reste 9
9=4×2+1 → 101 reste 4
4=2×2+0 → 0101 reste 2
2=1×2+0 → 00101 reste 1
1=0×2+1 → 100101 reste 0
Donc 37₁₀=100101₂.
En effet, 37=32+4+1=1×2⁵+0×2⁴+0×2³+1×2²+0×2¹+1×2⁰.
Merci
Maintenant, avec la calculatrice ! Oui, j’ai manqué de précision . . . 
tape nombre to bin
42 to bin
C’est avec le bouton en bas à droite du pavé des fonctions :
![]()
facile 37=32+5 donc 100000+101=100101 
il faut plutot travailler dans la base numéraire correspondante, donc avec les puissance de 2, sachant que par 4 bits c’est des bnlocs puissance de 16, par 8 bits des blocs puissance de 256, etc…
Non, il ne faut pas, il suffit de.
C’est une autre technique, mathématiquement équivalente mais qui suppose de chercher d’abord le logarithme en base 2 du nombre.
L’avantage de la « mienne » est qu’elle est simplissime à écrire (mais un poil moins pour comprendre pourquoi ça marche).
echo 'obase=2;42' | bc
inversement
echo 'obase=10;ibase=2;10101010' | bc
Merci à vous, je regarde ça.
@nicola
Non, il ne faut pas, il suffit de → ça me rajeunit → il faut et il suffit . . .
De toutes les propositions c’est la plus simple 
Avec une hésitation pour celle de Zargos, mais elle ne fonctionne que pour 37 . . .
Si ta question est bien relative à Qalculate, le sujet, il n’y a pas de difficulté particulière à convertir de décimale en binaire:

Si la question n’est plus relative à Qalculate, mais une autre solution graphique, speedcrunch peut aussi convenir:
bin(255) > 0b11111111
Si ta recherche est une solution en mode terminal, et que Qalculator est installé, qalc est disponible, et la syntaxe qui fonctionne dans mon environnement est celle-ci:
qalc dec 255 to bin
dec("255") = 0000 0000 1111 1111
→ la base numérique d’entrée doit être renseignée. Pourquoi pas nécessaire ailleurs ? Je l’ignore.
Sinon, avec bc plus couramment utilisé, mais n’est pas installé par défaut.
→ ibase= input base ; obase= output base
echo "-ibase=10 ; -obase=2; 255" |bc
11111111
Sinon, Bash permet de faire directement une conversion décimale/binaire avec cette fonction par exemple:
dec2bin(){ local n b
for ((n=$1;n>0;n>>=1)); do b=$((n&1))$b; done
printf "%s\n" "${b-0}"
}
dec2bin 255
11111111
Python fait exactement la même chose (et la sortie est une chaîne de caractères).
Elle marche pour tous les nombres mais implique de bien connaître le binaire (et donc les puissances de deux) et les notion de numération.
La conversion se fait à partir de la décomposition des puissances de 2, 16, 256, 65536, etc.
conversion d’un nombre base 10 en nombre base 2.
Simplement, directement et rien d’autre !
…/…
Maintenant, avec la calculatrice !
Il faudrait mieux décrypter ce qui signifie « plus simple » ou avec « la calculatrice » dont chacun peut avoir une interprétation différente.
Quelques points complémentaires à toutes fins utiles ou pas:
Pas convaincu qu’une décomposition manuelle en facteurs de 2 soit la méthode « la plus simple », si le nombre à convertir est à 10 chiffres. Encore faut-il faire au moins un script pour rendre la conversion moins laborieuse et chronophage.
Qalculate est puissant, mais un peu trop usine à gaz pour une usage ‹ simple › et courant.
Speedcrunch que j’avais tenté d’abandonner car non porté en qt6 est un bon compromis en application qt, entre puissance et ergonomie: finalement ré-adopté en qt5 puisque VLC n’est pas encore porté en qt6.
Qalc peut avoir un comportement non prédictif causé par sa configuration stockée dans ~/.config/qalculate/qalc.cfg, qui explique pourquoi « qalc 42 to bin » ne fonctionnait plus directement dans mon environnement, mais bien après purge de ce fichier dont la gestion reste à clarifier (aussi alimenté par qalculate ?).
La solution techniquement la plus efficace est la fonction (ou script) dec2bin proposée:
1- ne nécessite aucune application supplémentaire autre que Bash installé par défaut
2- la conversion ne nécessite aucun calcul en décimal, un CPU ne comprenant que les 0/1.
Le seul petit bémol: fonctionnement pas simple à comprendre puisque faisant appel à des ‹ bitwise operators › de bash non couramment utilisés. Il faut moins de 200 nanosecondes à dec2bin pour convertir un nombre décimal à 10 chiffres en binaire:
dec2bin 1234567890
1001001100101100000001011010010
Il faut être plus courageux et avoir du temps à perdre pour faire la même opération manuellement et sans calculatrice.