Conversion d'un nombre en binaire en langage Python
PierrotLeFou -
Bonjour à tous,
Je suis en seconde au lycée et fais mes premiers pas en python et en connais que quelques instructions. Le professeur nous donné le travail suivant, mais je ne m'en sors pas, et je crois que ça va être la même chose pour pas mal de copains de classe. Il s'agit de convertir un nombre saisi sur la console en nombre binaire et d'afficher le code binaire. Voici la description de algorithme ci-dessous :
Algorithme :
- demander à l’utilisateur d’entrer un nombre entier positif ;
- récupérer cet entier dans une variable nbr ;
- diviser nbr par 2 tant que nbr reste différent de 0 ;
- ajouter le reste au début d’une chaîne de caractères appelée code ;
- donner à nbr la nouvelle valeur nbr:2 ;
- afficher la chaîne code
J'ai écrit ce début de code mais ça ne marche pas :
nbr = int(input ("Tapez votre entrée")) while nbr != 0 : nbr // 2 reste = nbr % 2 code = str(reste)
Quelqu'un peut-il m'aider ? La programmation m'intéresse beaucoup mais pour l'instant, le professeur ne nous a pas donné assez de cours malheureusement. Ça ira mieux dans quelques semaines j'espère.
Merci d'avance.
- Rémi et safia ont découvert le code binaire
- Code ascii - Guide
- Code binaire - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
2 réponses
Bonjour,
nbr//2 effectue l'opération, mais ne faisant rien du résultat il n'est pas conservé.
code=str(reste) tu affectes à code la valeur binaire du reste, mais tu ne conserves pas les valeurs antérieures
voir :
nbr = int(input ("Tapez votre entrée ")) code='' while nbr !=0 : reste = nbr%2 code = str(reste)+code nbr = nbr//2 print(code)
ps : pour la coloration syntaxique du code utiliser l'icone Code et le langage, Python
Est-ce toi ou le prof qui a donné ou décidé l'algorithme? Regardes ce que jee pee a fait.
Il va d'abord chercher le reste, puis il place le nouveau reste à la "gauche" du précédent.
Si tu veux comprendre, imagine qu'on veut le faire en décimal. Je prend le nombre 2145
Je prend d'abord le reste 5 de la division par 10, le quotient est 214
214 % 10 = 4, je l'ajoute: 45, et le quotient est 21
etc.