dimanche 29 novembre 2009

Pleins d'exercices sur les chaines !

Bonjour, me voici de retour avec pas moins de 5 exercices sur les chaines de caractères en Python !
Comme il y en a beaucoup, et qu'ils se ressemblent tous un peu, j'ai décidé de ne faire qu'un article les regroupant tous !
(A noter qu'il n'y aura que quatre screenshots et quatre liens vers du code car j'ai fusionné deux exercices !)
J'avoue avoir eu un peu de mal au début, car j'avais des erreurs de type "overflow" à cause de mes affectations de compteurs. J'incrémentais/décrémentais mal ceux-ci ; donc je me retrouvais par exemple à 'chaine[n]', où 'n = 6' alors que la chaine ne mesure que 'chaine[5]'. Cela car j'incrémentais ma variable de comptage au début de la boucle au lieu d'à la fin. Cette difficulté m'est apparue dans l'exercice "Gaston", et j'ai quand même mit un petit peu de temps avant de comprendre d'où ça venait, c'est bête.
Petite information aussi, j'ai décidé de prendre Eclipse, avec l'extension PyDev, car je trouve que c'est plus pratique pour accéder rapidement aux différents codes, et c'est assez performant.
Voici à quoi ressemble Eclipse pour ceux qui ne connaissent pas :
(Vous pouvez constater qu'avoir tous les scripts à portée de main est quand même bien pratique ! Car avec IDLE, il fallait à chaque fois ouvrir le script que l'on voulait après avoir ouvert le dossier où il est, une joyeuse perte de temps pour moi !)

De plus, les screenshots de cet article sont les premiers prit depuis Linux !
Trêve de bavardages, entrons dans le vif du sujet !

Exercice 1 et 2 : Voici les exercices que j'ai fusionné ! Le premier consiste à vérifier si le caractère 'e' est présent dans une chaine, le second doit compter le nombre d'occurrences de celui-ci. Il était donc plus pratique d'en faire un seul qui fait tout.Lien vers le code : ici

Exercice 3 : Gaston ! Voila l'exercice qui m'a donné du fil à retordre au début à cause des dépassements de taille de chaine ! Mais bon, c'est en faisant des erreurs qu'on apprend ;).
Lien vers le code : ici

Exercice 4 : Je l'ai trouvé facile, il suffisait d'inverser une chaine de caractère.
Lien vers le code : ici

Exercice 5 : J'aurais aussi pu le fusionner avec le 4, car c'est la même chose, avec quelques lignes en plus, mais bon.
Lien vers le code : ici

Voila, c'est tout pour l'instant, j'espère que vous appréciez mes billets, même s'ils ne sont pas quotidiens !
La prochaine fois ça sera les listes.

(Les petits malins auront peut-être remarqué sur le premier screenshot que j'ai déjà fait les exercices ;) (mais je les posterais plus tard par manque de temps...)).

2 commentaires:

  1. Salut.

    En python, tu devrais essayer d'utiliser des boucles for, sa simplifirait beaucoup la taille et la lisibilité de ton code.

    Genre la tu parcours ton mot comme sa:

    mot = "mot"
    i = 0

    while i < len(mot):
    print mot[i],
    i += 1

    Sa fait un peu, un vieux réflèxe de C.
    Tu peut faire simplement (dans cette exemple y'as pas beaucoup de différence):

    mot = "mot"

    for lettre in mot:
    print lettre,

    Dans l'éxercice 3 d'ailleurs tu as eu du mal à cause de la taille de ton mot alors qu'avec une boucle for tu t'en fous, tu parcours juste le mot lettre par lettre et s'tout xD.

    PS: C'est qu'une question de gout après :D
    PS2: On peut pas mettre des tabulation dans les commentaires ?
    ++

    RépondreSupprimer
  2. Salut, non, je crois que les tabulations ne fonctionnent pas !
    Sinon, merci pour l'exemple sur les boucles 'for', j'y arriverais bientôt dans le tutoriel, et j'essayerais donc de les utiliser ! Mais grâce à toi je viens de comprendre leur fonctionnement que je ne comprenais pas quand je voyais juste des petits bouts de code par-ci par-là. Bien pratique si on a plus à faire attention à la taille :p

    RépondreSupprimer