Convertisseur numérique
Jean-PierreBoudine
-
Jithel Messages postés 843 Date d'inscription Statut Membre Dernière intervention -
Jithel Messages postés 843 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cherche à écrire le script d'un convertisseur de la base dix à la base trois.
Je suis tout à fait débutant en Python.
J'ai écrit ceci, qui imite la démarche standard :
Mais Python me dit que "q" n'est pas défini.
Quelqu'un peut-il m'expliquer quelle(s) faute(s) je fais ?
Bien cordialement,
JP Boudine
Configuration: Windows / Chrome 70.0.3538.102
Je cherche à écrire le script d'un convertisseur de la base dix à la base trois.
Je suis tout à fait débutant en Python.
J'ai écrit ceci, qui imite la démarche standard :
n=input("n:") i=0 q[i]=n while q[i] > 0 : q[i+1]=q[i]//3 r[i]=q[i]%3 print "r[i-1],r[i-2],..r[1],r[0]"
Mais Python me dit que "q" n'est pas défini.
Quelqu'un peut-il m'expliquer quelle(s) faute(s) je fais ?
Bien cordialement,
JP Boudine
Configuration: Windows / Chrome 70.0.3538.102
A voir également:
- Convertisseur numérique
- Télévision numérique - Guide
- Télévision numérique terrestre - Accueil - TV & Vidéo
- Pavé numérique bloqué - Guide
- Convertisseur mp3 - Télécharger - Conversion & Extraction
- Clavier numérique bloqué - Guide
JP
Maintenant Python me dit, à propos de la ligne 4 (q[i]=n) "index assignment out of range". Le fond de l'affaire c'est que je ne comprends pas comment fonctionne l'indice. On fait des divisions successives des quotients par trois jusqu'à obtenir un quotient inférieur à 3, ainsi le suivant sera zéro, et à la fin on collecte les restes dans l'ordre inverse. On ne peut pas savoir combien il y aura d'étapes, donc je ne comprends pas comment je peux être "out of range".
n=input("n")
i=0
q=[]
q[i]=n
while q[i] > 0 :
q[i+1]=q[i]//3
r[i]=q[i]%3
print "r[i-1],r[i-2],..r[1],r[0]"
Bonne journée,
JP
PS je n'ai pas non plus compris où il faut mettre des balises pour que le code apparaisse correctement ici.
1. "index assignment out of range" signifie que tu tentes d'accéder à un élément du tableau par un index (ici i) qui est en supérieur à sa taille (ici, 0).
Il faut initialiser ton tableau à une taille si tu la connais au début, ou ajouter des éléments dedans au fur et à mesure avec la méthode
2. La boucle while n'est jamais censé s'arrêter et effectuera la même opération tout le temps :
il manque la ligne suivante après les deux instructions de la boucle :
Concernant l'insertion de code Python dans les balises, il faut que tu cliques sur l'icone <> dans l'édition de ton message puis tu choisis Python. Tu peux aussi écrire </code>