sujets du 26 septembre 2018

Pour poser des problèmes mathématiques, et tenter de les résoudre
Répondre
pascal hubert
Messages : 4
Enregistré le : 23 sept. 2018, 22:01
Ville : Marseille

sujets du 26 septembre 2018

Message par pascal hubert » 03 oct. 2018, 10:35

Bonjour,
voici les sujets que j'ai proposés pendant la première séance : les tablettes de chocolat et les problèmes de distances
distances.pdf
(205.01 Kio) Téléchargé 4459 fois
tablette-chocolat.pdf
(96.21 Kio) Téléchargé 4413 fois
bien à tous,
pascal

sebastien_simao
Messages : 12
Enregistré le : 23 sept. 2018, 17:37
Ville : Marseille
Contact :

Re: sujets du 26 septembre 2018

Message par sebastien_simao » 03 oct. 2018, 13:55

Un Framapad pour travailler dessus : https://mypads.framapad.org/mypads/?/my ... -lh233c7su d'autres options de travail collaboratif : viewtopic.php?f=3&t=9

Lucas Tachen
Messages : 2
Enregistré le : 23 sept. 2018, 19:34
Ville : Aix
Contact :

Re: sujets du 26 septembre 2018

Message par Lucas Tachen » 27 janv. 2019, 11:42

Bonjour à tous,

Je propose à ceux qui sont intéressés par la programmation ( et les autres aussi ) de compléter mon programme sur le jeu du chocolat avec une intelligence artificielle qui pourrait jouer contre un joueur humain. Ayant déjà un peu travailler sur le sujet, je connais une stratégie gagnante que l'on pourrait étudier puis programmer.
Le code est en python 3 et il est disponible sur Github ( https://github.com/TMlucas/Jeu-du-choco ... hocolat.py ) ce qui permet de pouvoir travailler dessus facilement. Je le mets également en dessous.
N'hésitez pas à me poser des questions que ce soit sur le sujet ou sur le programme ( on pourra mettre en place une plateforme d'échange comme Slack ou même Messenger ).

Code : Tout sélectionner

from tkinter import *
from random import randint
import time


def clic(event):
    X=event.x
    Y=event.y
    if X<800/w and Y<400/h:
        lose=Label(main,text="C'est perdu")
        lose.pack()
        lose.configure(font=font28)
        clear()
    i=1
    while X>(i*800/w):
        i=i+1
    xa=(i-1)*800/w
    i=1
    while Y>(i*400/h):
        i=i+1
    ya=(i-1)*400/h
    canvas.create_rectangle(xa,ya,800,400,fill='black')
    #time.sleep(3)
    #hasard()

def clear():
    canvas.delete(ALL)
    lose=Label(text='')
    for i in range (1, w):
        canvas.create_rectangle(i*800/(w),0,i*800/(w),400,fill='black')
    for i in range (1,h):
        canvas.create_rectangle(0,i*400/h,800,i*400/h,fill ='black')
    canvas.create_rectangle(0,0,800/w,400/h,fill ='green')

def hasard():
    xp=randint(1,799)
    yp=randint(1,399)
    if xp<800/w and yp<400/h:
        lose=Label(main,text="Vous avez gagné!")
        lose.pack()
        clear()
    i=1
    while xp>(i*800/w):
        i=i+1
    xa=(i-1)*800/w
    i=1
    while yp>(i*400/h):
        i=i+1
    ya=(i-1)*400/h
    canvas.create_rectangle(xa,ya,800,400,fill='white')

    


d=0
while d==0:
    try:
        print ("Entrez la taille de la tablette de chocolat\n(Maximum 10 par 10)\n")
        h=int(input("Entrer la largeur : "))
        w=int(input("Entrer la longueur : "))
        if h>10 or w>10:
            print("Les dimensions sont trop grandes\n")
        else :
            d=1
    except:
        print ("Les donnees ne sont pas correctes\n")


main = Tk()
main.title ("Jeu du chocolat")
main.geometry('1000x800+25+25')
main.config(cursor='hand1')
font28="-size 28"
titre = Label (main, text="Bienvenue dans le jeu du chocolat")
titre.pack()
titre.configure(font=font28)
effacer=Button(main, text="Effacer", command=clear)
effacer.pack()


canvas = Canvas(main, width=800, height=400, background='brown')
canvas.pack(padx=10, pady=100)
for i in range (1, w):
    canvas.create_rectangle(i*800/(w),0,i*800/(w),400,fill='black')
for i in range (1,h):
    canvas.create_rectangle(0,i*400/h,800,i*400/h,fill ='black')
canvas.create_rectangle(0,0,800/w,400/h,fill ='green')


canvas.bind('<Button-1>', clic)

main.mainloop()

sebastien_simao
Messages : 12
Enregistré le : 23 sept. 2018, 17:37
Ville : Marseille
Contact :

Re: sujets du 26 septembre 2018

Message par sebastien_simao » 29 janv. 2019, 19:37

C'est une très bonne idée ce programme Python ! Effectivement il reste à compléter pour faire une IA fonctionnelle, mais il fonctionne bien et permet de tester des stratégies à deux joueurs humains. Au club on a étudié la stratégie sur des tablettes carrés, certains comme lucas ou armel pourraient en parler dans ce post.

Répondre