Programme
gregoire
-
gregoire -
gregoire -
Bonsoir,
Excusez-moi de vous déranger mais j'ai du mal à comprendre toutes les lignes de votre programme !! Pouvez-vous m'expliquer la fonction de chacune de ces lignes ?
Merci d'avance
Excusez-moi de vous déranger mais j'ai du mal à comprendre toutes les lignes de votre programme !! Pouvez-vous m'expliquer la fonction de chacune de ces lignes ?
Merci d'avance
Configuration: Windows / Firefox 83.0
14 réponses
-
-
Bonsoir,
Quel programme ? -
Ah oui excusez moi !!!
celui ci :
binaire = str(input("Entrez le nombre binaire à convertir :"))
decimal = 0
binaire = binaire[::-1]
print(len(binaire))
for x in range(len(binaire)):
d = binaire[x]
decimal += int(d)* 2**x
print(decimal)
Et en plus ce programme qui est censé convertir du binaire au décimal le fait bien mais affiche avant le résultat, le nombre de caractères en plus !!!
je ne comprends pas tout de son fonctionnement pouvez vous m'expliquer ?
Merci d'avance -
Bonjour gregoire,
Pas facile à lire sans les indentations
L'indentation étant importante en Python, merci de re poster ton code avec les balises de code
mode d'emploi:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Visuellement, ça doit ressembler à ceci (avec la coloration syntaxique) :
def test(): print('test') test() -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Merci beaucoup j'espère que c'est lisible cet fois-ci !!!
binaire = str(input("Entrez le nombre binaire à convertir :")) decimal = 0 binaire = binaire[::-1] print(len(binaire)) for x in range(len(binaire)): d = binaire[x] decimal += int(d)* 2**x print(decimal) -
Je pense que tu n'as pas suivi le mode d'emploi:
binaire = str(input("Entrez le nombre binaire à convertir :")) decimal = 0 binaire = binaire[::-1] print(len(binaire)) for x in range(len(binaire)): d = binaire[x] decimal += int(d)* 2**x print(decimal)
Admettons
Tu dis ne pas comprendre ce code, il sort d'où, en fait ?
Moi, je vois ce qui se passe: il y a des façons plus directes de convertir binaire -> décimal
Mais ici, c'est basé sur le fait que chaque bit du nb binaire est le coefficient du polynôme
qui est la somme des puissances de 2 de 0 à n :
Exemple: 100 en binaire
1 fois 2 puissance 2 + 0 fois 2 puissance 1 + 0 fois 2 puissance 0 = 4 -
Merci pour ta réponse !!
En fait je dois réaliser un seul programme qui convertit en même temps après le choix de l'utilisateur : base 2/base 10/base 16 ( qui passe de l'un à l'autre)
je suis en train de faire ligne par ligne et programme par programme en m'inspirant de programmes préexistant mais j'ai queques difficultés !!!! sinon merci pour tes explications !!!
J'ai déjà fait ça :choix = "b" while choix !=4 : print("Décimal vers Binaire : 1") print("Binaire vers Décimal : 2") print("Decimal vers Hexadecimal : 3") choix = input("Que voulez-vous ? ") if choix == "1" : valeur = int(input("entrer un entier :")) binaire = "" while valeur != 0 : reste = str(valeur%2) binaire = reste + binaire valeur = valeur//2 print("conversion en binaire :",binaire) else : if choix == "2" : binaire = str(input("Entrez le nombre binaire à convertir :")) decimal = 0 binaire = binaire[::-1] print(len(binaire)) for x in range(len(binaire)): d = binaire[x] decimal += int(d)* 2**x print(decimal) elif: if choix== "3": -
Holà grégoire,
tu t'es encore trompé: tu vois bien que les couleurs de ton code ne sont pas les mêmes que dans mon message précédent
Il faut copier/coller le code dans ton message, puis sélectionner tout le code à la souris, et enfin dérouler la liste (petite flèche noire vers le bas), et cliquer Python
Ceci dit, pour les test if, elif .... tu peux faire comme ça:
if(choix == '1'): .... elif(choix == '2'): .......... elif(choix == '3'): .........
A savoir qu'on peut convertir dans les différentes bases d'une manière simple en utilisant
les formats -
Merci pour ta réponse !!
Ah oups je suis vraiment désolé !!!
C'est une très bonne idée merci beaucoup pour ton aide !!!
Je ne comprends pas !! C'est quoi les formats ? -
Voilà en fait le problème c'est qu'on ne peut pas utiliser les formats sinon ce serait beaucoup trop simple !!
Donc as-tu une idée pour réaliser un programme de binaire à hexadécimal pour commencer ?
Au moins je pourrais compléter mon grand programme vu ci-dessus !! -
Bonjour Grégoire,
Pourquoi pas les formats ?
Sinon, tu as cherché sur Internet pour les conversions d'une base à une autre ? -
parce que le prof juge ça trop facile !!
Mais sinon j'ai du mal à trouver de bon résultats concluants !!!
As-tu des petits conseils à me donner ? -
Je ne me suis jamais penché sur la question ...
Pour binaire -> hexa, on pourrait faire binaire -> décimal (tu as déjà la fonction)
puis décimal -> hexa
Si j'avais à faire ça, je taperais "python convertir de binaire en hexa" dans la barre de recherche
internet ... -