FORUM D’ENTRAIDE INFORMATIQUE (FEI)
Site d’assistance et de sécurité informatique

Entraide pour le programmation en général (tous langages).
Règles du forum : Entraide concernant la programmation informatique en général, tous langages : recherche ou correction d'un code ou d'une fonction, aide à la réalisation d'un projet...
Pour la programmation web (HTML, CSS, PHP, MySQL...), il est conseillé de s'orienter dans le forum Webmastering.
Merci de lire et de respecter la charte générale du forum.
  • Avatar du membre
  • Avatar du membre
  • Avatar du membre
Avatar du membre
par Mojada
#45699
Bonsoir à toutes et à tous.

Je suis là pour chercher un peu d'aide, j'me suis mis dans une situation assez délicate.

Voila, je devais develloper un projet en groupe sur du python et ma partie c'est l'interface graphique, ce qui est en soi un problème car j'y connaissais rien, néanmoins j'ai décidé d'apprendre mais il y'a un autre soucis (décidément ), l'autre parti du groupe à terminer le programme et je ne sais comment je dois m'y prendre pour le passer sur une interfaces graphique...

Le projet en question est le jeu reversi, sur lequel je serais noté dans moins d'une semaine en tant qu'épreuve du bac, et je sais pas du tout m'y prendre pour avancer, si quelqu'un pouvez m'aidez se serait vraiment sympa.

Je reste à votre disposition pour toutes informations complémentaires, Merci !
Avatar du membre
par Mojada
#45706
Oui, c'est le jeu othello (reversi), un jeu assez populaire.

Soit dis en passant, le code :


from random import *
import sys
choixdujoueur = 0
casepions = 0
caseselectionne = 0
tourdujoueur = 0 #variable definissant la couleur du pions
partifini = 0
coordonneeH1=0
coordonneeV1=0
n = 0 # variable qui vas permettre de boucler la fonction de detection de pions L 82 a L 165
k = 0 # variable qui vas permettre de changer la couleur des jetons L 85 a L 168
l = 0 # variable verifiant qu'il y as eu encadrement L82 a L 168
def tableaux():
    global Plateau_de_jeu
    global table_de_jeu
    global choixdujoueur
    partifini = 0
    Plateau_de_jeu=[[0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,2,1,0,0,0,],
                  [0,0,0,1,2,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,]]
    table_de_jeu=[[0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,2,1,0,0,0,0,],
                  [0,0,0,0,1,2,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,],
                  [0,0,0,0,0,0,0,0,0,0,]]
    print("  1  2  3  4  5  6  7  8")
    print("1",Plateau_de_jeu[0])
    print("2",Plateau_de_jeu[1])
    print("3",Plateau_de_jeu[2])
    print("4",Plateau_de_jeu[3])
    print("5",Plateau_de_jeu[4])
    print("6",Plateau_de_jeu[5])
    print("7",Plateau_de_jeu[6])
    print("8",Plateau_de_jeu[7])
    print (' ')

    choixdujoueur = randint(1,2)
    if choixdujoueur == 1:
        print("J1 start, vous avez les pions blanc")
    else :
        print("J2 start, vous avez les pions noirs")
def coordonneeHorizontal():
    global coordonneeH
    global coordonneeH1
    coordonneeH = int(input("Entrez l'ordonnee : "))
    if coordonneeH in [1,2,3,4,5,6,7,8]:
        print ("c'est bon, vous avez selectionnez :",coordonneeH)
        coordonneeH1 = coordonneeH-1
    elif cordonneeH == 0:
        print("tour impossible")

    else:
        print ("c'est pas bon")
        coordonneeHorizontal()
def coordonneeVertical():
    global coordonneeV
    global coordonneeV1
    coordonneeV = int(input("Entrez l'abscisse : "))
    if coordonneeV in [1,2,3,4,5,6,7,8]:
        print ("c'est bon, vous avez selectionnez :",coordonneeV)
        coordonneeV1 = coordonneeV-1
    else:
        print ("c'est pas bon")
        coordonneeVertical()
def jouabilite():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    global l
    global table_de_jeu
    print(coordonneeH,coordonneeV)
    if table_de_jeu[coordonneeH][coordonneeV] == 1:
        print("choix invalide,presence de 1. prenez une case inoccuper")
        tourdujoueur()
    elif table_de_jeu[coordonneeH][coordonneeV] == 2:
        print("choix invalide,presence de 2. prenez une case inoccuper")
        tourdujoueur()
    else:
        print("verification de la jouabilite...")
        if table_de_jeu[coordonneeH-1][coordonneeV]==0 and table_de_jeu[coordonneeH+1][coordonneeV]== 0 and table_de_jeu[coordonneeH][coordonneeV-1]== 0 and table_de_jeu[coordonneeH][coordonneeV+1]== 0 and table_de_jeu[coordonneeH-1][coordonneeV-1]== 0 and table_de_jeu[coordonneeH+1][coordonneeV-1]== 0 and table_de_jeu[coordonneeH+1][coordonneeV+1]== 0 and table_de_jeu[coordonneeH-1][coordonneeV+1] == 0:
            print ("erreur de placement : poser a coter d' un jetons")
            tourdujoueur()
        else:
            if table_de_jeu[coordonneeH-1][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV]!=0 or table_de_jeu[coordonneeH+1][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV]!=0 or table_de_jeu[coordonneeH][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV-1]!=0 or table_de_jeu[coordonneeH][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV+1]!=0 or table_de_jeu[coordonneeH-1][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV+1]!=0 or table_de_jeu[coordonneeH-1][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH-1][coordonneeV-1]!=0 or table_de_jeu[coordonneeH+1][coordonneeV-1]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV-1]!=0 or table_de_jeu[coordonneeH+1][coordonneeV+1]!=(choixdujoueur) and table_de_jeu[coordonneeH+1][coordonneeV+1]!=0:
                print("verification de l' encadrement : ")
                n = 1
                k = 1
                l = 0
                while table_de_jeu[coordonneeH-n][coordonneeV] != choixdujoueur and table_de_jeu[coordonneeH-n][coordonneeV] != 0:
                    n = n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV]==choixdujoueur:
                        print("c'est bon 1")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV]=choixdujoueur
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1]=choixdujoueur
                            k = k+1
                            l=1


                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV]!= 0 :
                    n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV] == choixdujoueur:
                        print("c'est bon 2")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur
                            k = k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV-n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH][coordonneeV-n] == choixdujoueur:
                        print("c'est bon 3")
                        for k in range (n):
                            table_de_jeu[coordonneeH][coordonneeV-k] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1][coordonneeV1-k] = choixdujoueur
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 4")
                        for k in range (n):
                            table_de_jeu[coordonneeH][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV-n]!=0:
      table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur            n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV-n]==(choixdujoueur):
                        print("c'est bon 5")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV-k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1-k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH+n][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH+n][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH+n][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 6")
                        for k in range (n):
                            table_de_jeu[coordonneeH+k][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1
                n=1
                while table_de_jeu[coordonneeH-n][coordonneeV+n]!=(choixdujoueur) and table_de_jeu[coordonneeH-n][coordonneeV+n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV+n]==(choixdujoueur):
                        print("c'est bon 7!")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV+k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1+k]=(choixdujoueur)
                            k=k+1
                            l=1

                n=1
                while table_de_jeu[coordonneeH-n][coordonneeV-n]!=(choixdujoueur) and table_de_jeu[coordonneeH-n][coordonneeV-n]!=0:
                    n=n+1
                    if table_de_jeu[coordonneeH-n][coordonneeV-n]==(choixdujoueur):
                        print("c'est bon 8")
                        for k in range (n):
                            table_de_jeu[coordonneeH-k][coordonneeV-k]=(choixdujoueur)
                            Plateau_de_jeu[coordonneeH1-k][coordonneeV1-k]=(choixdujoueur)
                            k=k+1
                            l=1
                if l != 1:
                    print("veuillez creer un encadrement avec vos pions autour de ceux de l' adversaire")
                    print("  1  2  3  4  5  6  7  8 ")
                    print("1",Plateau_de_jeu[0])
                    print("2",Plateau_de_jeu[1])
                    print("3",Plateau_de_jeu[2])
                    print("4",Plateau_de_jeu[3])
                    print("5",Plateau_de_jeu[4])
                    print("6",Plateau_de_jeu[5])
                    print("7",Plateau_de_jeu[6])
                    print("8",Plateau_de_jeu[7])
                    tourdujoueur()
                else:
                    print("c'est valide!")

            else:
                print("erreur d' encadrement")
                tourdujoueur()
def volonteJ():
    global VolonteJ, choixdujoueur
    VolonteJ = input("entre une commande : ")
    print("vous avez choisis de :",VolonteJ)
    if VolonteJ == "passez":
        if choixdujoueur==1:
            choixdujoueur=2
            print("c'est desormais au joueur", choixdujoueur,"de jouer")
            particontrejoueur()
        else:
            choixdujoueur=1
            print("c'est desormais au joueur", choixdujoueur,"de jouer")
            particontrejoueur()
    elif VolonteJ == "jouer":
        print("c'est parti")
    elif VolonteJ == "finir":
        VolonteJ = input("etes vous sur ? oui ou non ")
      table_de_jeu[coordonneeH+k][coordonneeV] = choixdujoueur
                            Plateau_de_jeu[coordonneeH1+k][coordonneeV1] = choixdujoueur if VolonteJ == "oui":
            comptage()
        else:
            volonteJ()
    else:
        print ("entre invalide, vous pouvvez entrer ces commandes :")
        print("passez; pour passez le tour")
        print("jouer, pour jouer votre tour")
        print("finir, pour finir la parti")
        volonteJ()
def comptage():
    print("comptage des jetons")
    partifini = 1
    blanc=0
    noir=0
    nul=0
    n=0
    while n7 :
        ligne=0
        while ligne 7:
            if Plateau_de_jeu[ligne][n]==1:
                blanc = blanc +1
            elif Plateau_de_jeu[ligne][n]==2:
                noir = noir+1
            else:
                nul = nul +1
            ligne = ligne+1
        n = n+1
    print("il y as",blanc,"pions blancs")
    print("il y as",noir,"pions noirs")
    print("il y as",nul,"case vide")
    if blanc noir:
        print("J1 gagne")
    elif blanc noir:
        print("J2 gagne")
    else:
        print("egaliter")
    rep = input("voulez vous rejouer : oui ou non ? ")
    if rep == "oui":
        jeux()
    else:
        print("Au revoir")
        sys.exit()
def MAJtableau():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    table_de_jeu[coordonneeH][coordonneeV]=choixdujoueur
    Plateau_de_jeu[coordonneeH1][coordonneeV1]=choixdujoueur
    print("    1  2  3  4  5  6  7  8")
    print("1",Plateau_de_jeu[0])
    print("2",Plateau_de_jeu[1])
    print("3",Plateau_de_jeu[2])
    print("4",Plateau_de_jeu[3])
    print("5",Plateau_de_jeu[4])
    print("6",Plateau_de_jeu[5])
    print("7",Plateau_de_jeu[6])
    print("8",Plateau_de_jeu[7])
    print (' ')
def tourdujoueur():
    global Plateau_de_jeu
    global coordonneeH
    global coordonneeV
    volonteJ()
    coordonneeVertical()
    coordonneeHorizontal()
    jouabilite()
def particontrejoueur():
    while partifini == 0:
        global choixdujoueur
        if choixdujoueur == 1:
            tourdujoueur()
            MAJtableau()
            choixdujoueur = 2
            print("tour fini, passer maintenant a joueur 2")
        else:
            tourdujoueur()
            MAJtableau()
            choixdujoueur = 1
            print("tour fini, passer maintenant a joueur 1")
        print("joueur",choixdujoueur)
def particontreAI():
    tableaux()
    particontrejoueur()
def jeux():
    tableaux()
    particontrejoueur()
jeux()
Avatar du membre
par Codex
#45711
Pour créer des interfaces graphiques en Python tu dois utiliser le module Tkinter qui est présent par défaut.

Tu devrais trouver beaucoup de tutorial complet sur celui-ci.
Avatar du membre
par Codex
#45716
Malheureusement je ne peux pas t'aider d'avantage car mes connaissances en codage sont vague.

Cependant, je peux te conseiller un site qui t'expliqueras tout ce qu'il faut savoir.
Sachant que tu n'es pas inscrit sur le forum je ne peux pas te communiquer l'adresse du site en message privé.
Je t'invite donc à m'envoyer un mail à cet adresse : "EMAIL RETIRER" soit à t'inscrire sur le forum. (C'est gratuit et Rapide )
Avatar du membre
par 2011N2
#45724
Salut,

Pourquoi ne pas mettre l'adresse du site dans le sujet même ?

De plus, Codex, je te conseil de ne pas mettre ton mail privé en public (pas de jeu de mot ), si tu veux éviter le spam...

@+

Gabriel.
Avatar du membre
par 2011N2
#45728
Re,

Non non, c'est seulement si c'est uniquement pour faire de la publicité, là ce n'est pas du tout le cas.

Merci pour le lien donc.

Bonne soirée,

Gabriel.
Avatar du membre
par 2011N2
#46960
ImageOù en-est votre problème ?

Deux solutions,
  • Votre problème est résolu, dans ce cas pensez à nous en faire part.
  • Votre problème est toujours d'actualité, merci de nous renseigner sur ce qui ne va pas, et donner des nouvelles régulièrement.


    À bientôt sur FEI !
Avatar du membre
par 2011N2
#47214
Image Bonjour,

Nous n'avons plus de nouvelle de l'auteur de ce sujet depuis plus de 10 jours. Nous considérons donc ce problème comme résolu ou abandonné par son auteur. La prochaine fois, merci de nous tenir au courant de l'évolution de votre problème, ou à faire un UP régulièrement !

Ce sujet est verrouillé, si vous souhaitez le reprendre, merci de contacter par message privé un membre de l'équipe de modération du forum.

À bientôt sur FEI !

Bonjour à tous, Je suis à la recher[…]

Best SEO Company Perth

With millions of websites on the internet, it can […]

Présentation Judi

Salut, Bienvenue sur FEI :) À très[…]