Liste des chiffres extraits d'un nombre

adrien -  
 adrien -
Bonjour,
je dois écrire un code permettant de donner la liste des chiffres d'un nombre dans son écriture en base 10: soit très simplement en prenant un exemple: n = 1472 donne L= [1,4,7,2]. J'ai écrit un code mais il me donne la liste inversée. De plus j'ai comme contrainte de ne pas utiliser la fonction reverse.
Pourriez vous m'aider svp, merci


Configuration: Windows / Chrome 77.0.3865.120
A voir également:

3 réponses

Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   7 345
 
0
adrien
 
Voila, c'est tout simplement ca :

def liste_chiffres(n):
          r=n%10
          q=n//10
          L=[r]
          while q>9:
                  r=q%10
                 q=q//10
                 L.append(r)
          L.append(q)
          return L

print(liste_chiffres(1789))  #résultat inverse


(et la j'obtiens très logiquement L=[9,8,7,1])
bien sur en mettant l'indentation, le code marche très bien)

j'ai ecris ce code aussi qui revient au meme:
def liste_chiffres(n):
    L=[]
    while(n>0):
        r=n%10
        L.append(r)
        n=n//10
    return L
print(liste_chiffres(1472)) #résultat inverse
0
Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   7 345
 
Bonjour,

Pense à attribuer à ton code la couleur syntaxique et la forme correcte avec le bouton
<>
.
0
adrien
 
ok merci
0
jee pee Messages postés 41521 Date d'inscription   Statut Modérateur Dernière intervention   9 720
 
Bonjour,

L.append(x)
ajoute en fin de liste, mais il existe une autre instruction sur les listes qui permet d'ajouter en début de liste. Effectue une recherche sur le traitement des listes.

Cdlt
0
adrien
 
ok je vais voir ca, ca permettra donc d'inverser le sens pour lequel les chiffres entrent dans la liste
merci
0