J'ai besoin d'aide en PYTHON

Vinzbu
2021-04-30 16:14:31

Je dois programme un puissance 4 avec une IA :(

tamerlanThai
2021-04-30 16:15:34

https://www.google.com/search?q=Puissance+4+python&sxsrf=ALeKk01f1CGW7Pf0Q1A3ipeZafzAo_rwFw%3A1619792106168&source=hp&ei=6hCMYOCdB4XG4-EP6ryOgAY&oq=Puissance+4+python&gs_lcp=ChFtb2JpbGUtZ3dzLXdpei1ocBADMgIIADICCAAyAggAMgIIADICCAAyAggAMgIIADICCAA6CgguEOoCECcQkwI6BwgjEOoCECc6BwguEOoCECc6BAgjECc6BAguECc6BAguEEM6CgguELEDEIMBEEM6CggAELEDEIMBEEM6DgguELEDEIMBEMcBEKMCOgcILhBDEJMCOgQIABBDOg0ILhCxAxDHARCjAhBDOgsILhCxAxDHARCjAjoICAAQsQMQgwE6DgguELEDEIMBEMcBEK8BOgUIABCxAzoHCAAQsQMQQzoECAAQDVDSCViWOmDIPWgBcAB4AIABvwGIAdgVkgEEMC4yMJgBAKABAbABDw&sclient=mobile-gws-wiz-hp

2503_0352
2021-04-30 16:15:44

Crée un tableau de tableau et l'indice 0 c'est le bas. Ou crée des structures de piles ce sera plus facile pour remplir

Vinzbu
2021-04-30 16:17:35

Le 30 avril 2021 à 16:15:44 :
Crée un tableau de tableau et l'indice 0 c'est le bas. Ou crée des structures de piles ce sera plus facile pour remplir

je sais juste faire :

def create_board():
board = np.zeros((6,7))
return board

board = create_board

Vinzbu
2021-04-30 16:18:43

:(

2503_0352
2021-04-30 16:19:38

Le 30 avril 2021 à 16:17:35 :

Le 30 avril 2021 à 16:15:44 :
Crée un tableau de tableau et l'indice 0 c'est le bas. Ou crée des structures de piles ce sera plus facile pour remplir

je sais juste faire :

def create_board():
board = np.zeros((6,7))
return board

board = create_board

Déso mec moi je sais faire que des programmes en C :hap:
Je créerais déjà la fonction de remplissage
Ensuite je gèrerais la couleur
Enfin je ferais la logique pour gagner le jeu (logique à appliquer à chaque tour de jeu)

Plumedoiseau
2021-04-30 16:21:09

et bah tu sais pas juste boucler toi, c'est bien. tu peux avoir de la conversation aussi.

Jency20
2021-04-30 16:22:03

apprends ce que c'est qu'une "pile" (stack) en informatique
tu auras 6 piles
tu auras en entrée de ton programme (dans une boucle) un nombre entre 0 et 5 qui détermine dans quelle pile le pion va aller

2503_0352
2021-04-30 16:22:45

Le 30 avril 2021 à 16:21:09 :
et bah tu sais pas juste boucler toi, c'est bien. tu peux avoir de la conversation aussi.

Et oui je suis un citoyen cultivé et accompli :oui:

Plumedoiseau
2021-04-30 16:23:47

Le 30 avril 2021 à 16:22:45 :

Le 30 avril 2021 à 16:21:09 :
et bah tu sais pas juste boucler toi, c'est bien. tu peux avoir de la conversation aussi.

Et oui je suis un citoyen cultivé et accompli :oui:

jparlais a l'op x)

2503_0352
2021-04-30 16:24:10

Le 30 avril 2021 à 16:23:47 :

Le 30 avril 2021 à 16:22:45 :

Le 30 avril 2021 à 16:21:09 :
et bah tu sais pas juste boucler toi, c'est bien. tu peux avoir de la conversation aussi.

Et oui je suis un citoyen cultivé et accompli :oui:

jparlais a l'op x)

Oups déso :hap:

Jency20
2021-04-30 17:18:06

Tiens, je sais pas faire de python j'ai bricolé ça en 30 min, il manque juste à faire la fonction qui détecte si quelqu'un a aligné 4 jetons

# initialise le plateau de jeu, par defaut 6x6
def init(board_width = 6, board_height = 6):
board = []
for w in range(board_width):
stack = []
board.append(stack)
return board

# affiche le plateau de jeu
def display(board, board_width = 6, board_height = 6):
for w in range(board_width):
print("--", end='')
print("-")
for h in range(1, board_height+1):
for w in range(board_width):
print(" ", end='')
# affiche rien si la pile n'est pas assez haute
if (len(board[w]) <= (board_height-h)):
print(" ", end='')
else:
# affiche a l'envers (board_height-h) pour que le premier element de la pile soit en bas
print(board[w][board_height-h], end='')
print("")
for w in range(board_width):
print("--", end='')
print("-")

# ajoute un jeton dans la pile x si elle n'est pas pleine
def put(x, symbol, board, board_width = 6, board_height = 6):
if x < board_width:
if (len(board[x]) < board_height):
board[x].append(symbol)
return 1
return 0

# verifie si 4 jetons sont alignes
def check(board, board_width = 6, board_height = 6):
# a faire
return 0



# debut du programme
board = init()

# les joueurs sont identifies par un numero 0 ou 1
symbol = 0
while (1):
display(board)
print ("joueur ", symbol)
# le joueur choisit dans quelle pile
x = int(input('pile [0-5] '))
if x > 5 or x < 0:
print ("numero de pile invalide", x)
continue
if not put(x, symbol, board):
print ("pile pleine", x)
continue
# verifie si quelqu'un a gagne
win = check(board)
if win:
print ("victoire du joueur ", symbol)
break
# incremente le joueur
symbol = (symbol + 1) % 2

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.