IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Comprendre l'instruction WHILE.


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 144
    Par défaut Comprendre l'instruction WHILE.
    Bonjour
    j'apprend Python et a ce propos je suis le tutorial présent sur Developpez.com de Gérard Swinnen : Apprendre à programmer avec Python.

    Je suis dans le tuto a la boucle While donc au début mais je suis bloqué dans treois des exercices et je ne veux pas allé plus loin tant que je n'ai pas bien compris.

    Exercices :

    4.2. Écrivez un programme qui affiche les 20 premiers termes de la table de multiplication par 7.

    4.3. Écrivez un programme qui affiche une table de conversion de sommes d'argent exprimées en euros, en dollars canadiens. La progression des sommes de la table sera « géométrique »,
    comme dans l'exemple ci-dessous :
    1 euro(s) = 1.65 dollar(s)
    2 euro(s) = 3.30 dollar(s)
    4 euro(s) = 6.60 dollar(s)
    8 euro(s) = 13.20 dollar(s)
    etc. (S'arrêter à 16384 euros)

    4.4. Écrivez un programme qui affiche une suite de 12 nombres dont chaque terme soit égal au triple du terme précédent.
    Pour le dernier exercice le 4.4, j'ai essayé ce qui suit mais est ce que cela est vraiment correct?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> a, b, c = 3, 3, 3
    >>> while c  < 300000 :
    ...     print b,
    ...     a, b, c = b, a*b, c*3
    ...
    3 9 27 243 6561 1594323 10460353203 16677181699666569 174449211009120179071170507 2909321189362570808630465826492242446680483 507528786056415600719754159741696356908742250191663887263627442114881
    Est il possible que quelq'un m'explique les deux premiers exercices et m'indique si ce que j'ai fait pour le troisième et la bonne façon de procéder.

    Merci

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    i = 1
    while i < 3000:
        print i
        i *= 3

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 144
    Par défaut
    Merci,
    ton code n'affiche que 8 termes hors l'exercice en demande 12. En faisant des essais je m'aperçois qu' en augmentant le nombre de While le nombre de résultats change mais est ce vraiment cela?

    Par exemple avec ton code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    i = 1
    while i < 3000:
        print i
        i *= 3
    on obtient comme résultat : ...

    1 3 9 27 81 243 729 2187

    mais si je tape comme code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> i = 1
    >>> while i < 30000:
    ...     print i,
    ...     i *=3
    j'obtient :

    1 3 9 27 81 243 729 2187 6561 19683

    Autre chose le signe * après le i doit il être considéré comme le signe multiplier ou a-t-il une autre signification?

    Merci

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Je n'avais pas lu la donnée correctement!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    p = 1
    i = 0
    while i < 12:
        print p
        p *= 3
        i += 1
    ou plus pythonique:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    p = 1
    for i in xrange(12):
        print p
        p *= 3
    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  5. #5
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    144
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 144
    Par défaut
    Merci beaucoup.

    Si qu'elqu'un peux m'expliquer pour les deux premiers exercices ce serait sympa.

    Merci encore

  6. #6
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par pcsystemd Voir le message
    Merci beaucoup.

    Si qu'elqu'un peux m'expliquer pour les deux premiers exercices ce serait sympa.

    Merci encore
    Pour le 1er exercice, il s'agit d'afficher la suite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    7 14 21 28 35 42 49 56 63 70 77 84 91 98 105 112 119 126 133 140
    Le 2ème exercice me paraît clair. Pour résoudre ces 2 exercices, il te faut également utiliser une boucle.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

Discussions similaires

  1. instruction while et tableau de valeurs
    Par Sh4dow49 dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 16/07/2009, 15h32
  2. Instructions While / switch imbriquées
    Par countrycrisp dans le forum Débuter
    Réponses: 3
    Dernier message: 21/08/2008, 14h33
  3. Comprendre l'instruction do while
    Par romi36 dans le forum VBScript
    Réponses: 4
    Dernier message: 19/07/2007, 07h12
  4. Réponses: 1
    Dernier message: 19/03/2007, 22h15
  5. Réponses: 13
    Dernier message: 03/08/2006, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo