[Etudes Supérieures] Théorème, ruine du joueur, Prolog

100101110001

[Etudes Supérieures] Théorème, ruine du joueur, Prolog

Messagepar statique le 07/12/2016 à 13:43

Bonjour à toute l'équipe. J'ai un sujet de TP sur Prolog concernant le théorème de la ruine du joueur ( Si un joueur a une fortune initiale finie, il n'existe pas de stratégie pour gagner à coup sûr. À l'inverse, s'il joue sans limite de temps, il finira ruine) et ayant déjà des difficultés dans cette langue de programmation, je me permets de vous demander des conseils.

Mon problème :
- Je pense savoir comment l'exprimer en français, mais j'éprouve des difficultés pour le retranscrire en Prolog et par la suite pour le faire boucler.

- Qu'elles sont les premières questions à se poser ou les méthodes à utiliser afin de résoudre cette exercices.


Mon Sujet :
Le joueur dispose de 134 €. La mise effective sera de 60 Euros €. Si le joueur n’a plus d’argent, le jeu s’arrête, il est ruiné.
Il est demandé de réaliser un programme qui sera appelé par le prédicat jeu/3 définit comme suit :


Prédicat jeu(Mise_init,Strategie,Valeur) */ /* ROLE prédicat d'appel global qui permet de savoir en combien de parties un joueur qui a une mise initiale donnée met à être ruine en suivant une stratégie donnée.
Argument Mise_init(entier, +) : somme disponible en début de partie.
Stratégie (entier, +) : type de stratégie (fixe=2,variable=1).
Valeur (entier, +) : pourcentage de la mise disponible ou somme fixe.



Mes idées :
Pour moi en français, cela donne :

Temps que le joueur à de l'argent, je boucle. Suivant la stratégie au début, je génère un nombre aléatoire (0=gagner, 1=perdu), suivant le résultat de ce nombre aléatoire, je déduis ou ajoute la somme à la mise initiale. Je regarde si la mise initiale est bien > à 0 (condition d’arrêt) et je boucle.

Condition d’arrêt : si le joueur n'a plus d'argent, il a perdus (Mise_ini<0).( en Prolog pour moi cela donne
jeu(x):- mise_ini(y), y>0. mais je ne sais pas si c'est bon )

Voici ce que j'ai commencé à faire, mais une fois que j'ai testé avec l'arbre de résolution, je me rends compte que la récursivité ne fonctionne pas comme je le souhaitais

mise_ini(_).
strategie(_).
pari(_).
lancement(gagner,mise_ini + pari).
lancement(perdu,mise_ini - pari).
gen_random(N).
gen_random(1,gagner).
gen_random(0,perdu).

/* X joue si y est la mise et Y superieur a 0(condition d'arret)*/
jeu( X,_,_):- mise_ini(X),X>0.
jeu(X,Y,Z):-strategie(Y),mise_ini(X),pari(Z),gen_random(N,W),lancement(W,_),jeu(_,_,_).

Je vous ai copié la partie du cahier des charges demandé dans un fichier Word ci-joint pour que ça soit plus clair.
Je vous remercie par avance pour vos conseils
Respectueusement
Pièces jointes
TP Prolog.docx
Copie du cahier des charges exercices Prolog
(14.83 Kio) Téléchargé 9 fois
statique
nouveau
 
Messages: 1
Inscrit le: 07/12/2016 à 13:40
profil: Elève

Re: [Etudes Supérieures] Théorème, ruine du joueur, Prolog

Messagepar xtrabee le 10/01/2017 à 16:37

Tu es toujours à la recherche d'une aide pour ton TP ou c'est trop tard ?
xtrabee
nouveau
 
Messages: 1
Inscrit le: 10/01/2017 à 16:22
profil: Cyberpapy


Retourner vers Informatique

Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité