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

Programmation multimédia/Jeux Python Discussion :

Afficher un damier [Débutant(e)]


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    domaine automobile
    Inscrit en
    Août 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : domaine automobile
    Secteur : Transports

    Informations forums :
    Inscription : Août 2008
    Messages : 22
    Points : 16
    Points
    16
    Par défaut Afficher un damier
    bonjour,

    je bute sur un truc tous con, normale je débute ...

    je souhaite afficher un damier comme ci dessous

    OXOXOX
    XOXOXO
    OXOXOX
    XOXOXO

    merci d avance pour votre aide

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Vu le manque de précisions, ceci devrait faire l'affaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    >>> damier='''OXOXOX
    ... XOXOXO
    ... OXOXOX
    ... XOXOXO'''
    >>> print (damier)
    OXOXOX
    XOXOXO
    OXOXOX
    XOXOXO
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre à l'essai
    Homme Profil pro
    domaine automobile
    Inscrit en
    Août 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : domaine automobile
    Secteur : Transports

    Informations forums :
    Inscription : Août 2008
    Messages : 22
    Points : 16
    Points
    16
    Par défaut
    merci pour ta réponse, désolé pour le manque de précision , en faite il faut utiliser la boucle for pour afficher un damier de 40x40 mais je n y parviens pas avec le code ci dessous (car la deuxième ligne doit commencer par X):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for loop in range(20):
        for loop in range (20):
            print ("X" , end = "")
            print ("O" , end = "")
        print ("")
    merci bien

  4. #4
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    Un essai pour montrer ta bonne volonté ?
    Pas d'aide par mp.

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,


    Citation Envoyé par amfortaf Voir le message
    merci pour ta réponse, désolé pour le manque de précision , en faite il faut utiliser la boucle for pour afficher un damier de 40x40 mais je n y parviens pas avec le code ci dessous (car la deuxième ligne doit commencer par X):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for loop in range(20):
        for loop in range (20):
            print ("X" , end = "")
            print ("O" , end = "")
        print ("")
    merci bien
    Si vous utilisez la même variable "loop" pour contrôler la boucle, çà ne va pas le faire.
    Soient x, y.... la question est effectivement d'exprimer la fonction de x, y qui permettra de choisir si on affiche 'X' ou 'O'.
    Et tant que vous ne savez pas trop exprimer cette fonction en français pas la peine d'essayer de coder çà en Python.
    Et pour çà il faut regarder un damier et faire un peu de topologie.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre à l'essai
    Homme Profil pro
    domaine automobile
    Inscrit en
    Août 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : domaine automobile
    Secteur : Transports

    Informations forums :
    Inscription : Août 2008
    Messages : 22
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,




    Si vous utilisez la même variable "loop" pour contrôler la boucle, çà ne va pas le faire.
    Soient x, y.... la question est effectivement d'exprimer la fonction de x, y qui permettra de choisir si on affiche 'X' ou 'O'.
    Et tant que vous ne savez pas trop exprimer cette fonction en français pas la peine d'essayer de coder çà en Python.
    Et pour çà il faut regarder un damier et faire un peu de topologie.

    - W
    je vois ce qu'il me reste a faire ...
    en tous cas merci pour ton conseil

  7. #7
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    On peut utiliser le test
    pour savoir si une ligne est paire ou impaire.
    Pourquoi pas alors ensuite :
    ou bien "OX" ?
    Pas d'aide par mp.

  8. #8
    Membre à l'essai
    Homme Profil pro
    domaine automobile
    Inscrit en
    Août 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : domaine automobile
    Secteur : Transports

    Informations forums :
    Inscription : Août 2008
    Messages : 22
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par marco056 Voir le message
    On peut utiliser le test
    pour savoir si une ligne est paire ou impaire.
    Pourquoi pas alors ensuite :
    ou bien "OX" ?
    enfin ! j'ai finalement résolu le probleme avec le code ci-dessous selon l'enoncé suivant:
    Ce que doit faire votre programme :

    Un damier de dimension 4 par 4 peut se représenter sous la forme suivante :

    OXOX
    XOXO
    OXOX
    XOXO
    Votre programme doit afficher un damier de taille 40 par 40. Assurez-vous bien que la case tout en haut à gauche contienne un "O", comme c'est le cas dans le damier ci-dessus.


    le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    x="X"
    y="O"
    for loop in range (20):
       for loop in range (20):
          print (y, end = "")
          print (x, end = "")
       print("")     
       for loop in range(20):
          print (x, end = "")
          print (y, end = "")
       print("")
    un peut long pour ce que ça fait mais, j’espère que je vais réussir a le simplifier

    merci

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par marco056 Voir le message
    On peut utiliser le test
    pour savoir si une ligne est paire ou impaire.
    Pourquoi pas alors ensuite :
    ou bien "OX" ?
    Pas facile à généraliser aux damiers est 3x3 ou 9x9 i.e. ayant un nombre impair de lignes et de colonnes.
    Mais çà a le mérite d'être d'un algo. qu'on peut essayer de coder.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  10. #10
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Pas facile à généraliser aux damiers est 3x3 ou 9x9 i.e. ayant un nombre impair de lignes et de colonnes.
    Mais çà a le mérite d'être d'un algo. qu'on peut essayer de coder.

    - W
    C'est vrai que ma solution ne fonctionne que pour des damiers pairs.
    Pas d'aide par mp.

  11. #11
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    Citation Envoyé par amfortaf Voir le message
    enfin ! j'ai finalement résolu le probleme avec le code ci-dessous selon l'enoncé suivant:
    Ce que doit faire votre programme :

    Un damier de dimension 4 par 4 peut se représenter sous la forme suivante :

    OXOX
    XOXO
    OXOX
    XOXO
    Votre programme doit afficher un damier de taille 40 par 40. Assurez-vous bien que la case tout en haut à gauche contienne un "O", comme c'est le cas dans le damier ci-dessus.


    le code :

    x="X"
    y="O"
    for loop in range (20):
    for loop in range (20):
    print (y, end = "")
    print (x, end = "")
    print("")
    for loop in range(20):
    print (x, end = "")
    print (y, end = "")
    print("")

    un peut long pour ce que ça fait mais, j’espère que je vais réussir a le simplifier

    merci
    C'est bien à part 2 points à améliorer selon moi :
    - 2 variables (par exemple i et j) à la place de loop.
    - remplacer 20 par n en l'ayant défini préalablement.
    Pas d'aide par mp.

  12. #12
    Membre à l'essai
    Homme Profil pro
    domaine automobile
    Inscrit en
    Août 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : domaine automobile
    Secteur : Transports

    Informations forums :
    Inscription : Août 2008
    Messages : 22
    Points : 16
    Points
    16
    Par défaut
    Citation Envoyé par marco056 Voir le message
    C'est bien à part 2 points à améliorer selon moi :
    - 2 variables (par exemple i et j) à la place de loop.
    - remplacer 20 par n en l'ayant défini préalablement.
    ok je récrirai le code avec vos remarques

    cdlt

  13. #13
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    "Visuellement", les diagonales du damier sont de la même couleur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
         0   1   2   3   4
    0    X   O   X   O 
    1    O   X   O
    2    X   O
    3    O
    4
    et cette diagonale là est définie par la valeur de x + y.
    Pour alterner, il suffit de tester si la somme est paire ou impaire.
    Ce qui se traduit assez facilement en Python par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    >>> count = 3
    >>> for x in range(count):
    ...    for y in range(count):
    ...        if (x + y) % 2:
    ...           print('X', end='')
    ...        else:
    ...           print('O', end='')
    ...    print()
    ...
    OXO
    XOX
    OXO
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  14. #14
    Membre chevronné
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 608
    Points : 2 072
    Points
    2 072
    Par défaut
    Excellent !
    Pas d'aide par mp.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher Pion sur Damier
    Par salamox dans le forum Débuter
    Réponses: 8
    Dernier message: 02/06/2015, 18h24
  2. Afficher un Damier en tableau 2D
    Par SexyProgrammeuse78 dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 23/10/2012, 22h42
  3. comment afficher un damier en c#
    Par thor76160 dans le forum C#
    Réponses: 35
    Dernier message: 15/02/2010, 11h54
  4. Réponses: 4
    Dernier message: 28/01/2007, 22h39
  5. [debutant]Afficher un damier
    Par mikedavem dans le forum 2D
    Réponses: 2
    Dernier message: 08/05/2006, 15h39

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