Bonjours tous le monde. J'essaie de faire un programme qui me retourne la valeur binaire d'un nombre négatif. (Je précise que je débute alors soyez indulgents et ne me parler pas en chinois s'il vous plaît 😅). Et je ne comprend pas car quand je le lance, la console me renvoie cette erreur : unsupported operand type(s) for +: 'builtin_function_or_method' and 'str' en parlant de la ligne 10. Malheureusement je ne comprend pas ce que ça signifie et je doute que ça soit une erreur de type car j'ajoute un caractère a une chaine de caractère. En espérant que vous pourrez m'aider, bonne journée !
dec = int(input("Entrer un nombre : "))
if dec<0: dec = dec*(-1)
bin = ""
while dec > 0: if dec%2 == 0: bin += "0" elif dec%2 != 0: bin += "1" dec = dec//2
len_bin = len(bin)
bin = reversed(bin)
while len_bin < 8: bin = bin + "0" len_bin += 1
inverse = ""
for i in bin: if i == "0": inverse += "1" else: inverse += "0"
la console me renvoie cette erreur : unsupported operand type(s) for +: 'builtin_function_or_method' and 'str' en parlant de la ligne 10. Malheureusement je ne comprend pas ce que ça signifie et je doute que ça soit une erreur de type car j'ajoute un caractère a une chaine de caractère
Dans votre code, vous avez bien tenté d’initialiser bin à la chaine vide mais avec Python d'indentation, c'est important... Et cette ligne là n'est exécuté que lorsque dec est négatif! Du coup, il travaille avec le bin qu'il connaît déjà et on ne peut pas faire ce qu'on veut avec celui là.
Merci de colorer votre code à l'aide du bouton Code
Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: python;">Votre code ici</pre>.
Merci de modifier votre message d'origine en fonction.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Python c'est bon, mangez-en.