Bonjour a tous, je suis en train de faire un code sur demande de mon professeur, l'énoncé est le suivant :
1. Écrire une fonction (cf le prototype ou la signature ci-dessous) qui prend en paramètre une chaîne de caractère (sans espace) et qui insère un espace tous les 4 caractères. Ne pas oublier le docstring.
Signature : Fonction decoupeChaine(ch : String) : String
Avec mot=’01234567891011’, print(decoupeChaine(’01234567891011’)) affiche 0123 4567 8910 11
2. Même question, mais il faut commencer par la fin du mot.
Signature : Fonction decoupeChaineFin(ch : String) : String
Avec mot=’01234567891011’, print(decoupeChaineFin(’01234567891011’)) affiche 01 2345 6789 1011
Je suis bloqué sur la partie deux.
Voila mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| def decoupeChaineFin(mot):
'''Signature : Fonction decoupeChaine(ch : String) : String'''
#Variables Espace
taille = len(mot)
motRep=""
#Variable Reverse 1
listReverse =[]
motReverse=""
#Variable Reverse 2
listReverse2=[]
motReverse2=""
tailleReverse=len(motRep)
#Premier Reverse
for i in range( taille -1 , -1 , -1) :
listReverse . append( mot [ i ])
motReverse=(''.join(listReverse))
#Espaces
for i in range (taille):
if i % 4==0 and i>0:
motRep = motRep + " " + motReverse[i]
else:
motRep = motRep + motReverse[i]
#Deuxième Reverse
for i in range( tailleReverse -1 , -1 , -1) :
listReverse2 . append( motRep [ i ])
motReverse2=(''.join(listReverse2))
return motReverse2
print(decoupeChaineFin("01234567891011")) |
Si vous pouvez m'aider a trouver mon erreur et m'orienter sur comment résoudre ce problème ça serait super !
Merci d'avance !
Partager