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

Prolog Discussion :

Création d'un compteur


Sujet :

Prolog

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut Création d'un compteur
    Bonjour à tous,

    Sans forcément fournir tous les détails, j'ai ces prédicats et règles :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    canWin(state(_,_,_,_,_,_,_,dead),[],_).
    canWin(State1,[M|L],Borne):-Borne>0,move(State1,M,State2),canWin(State2,L,Borne-1).
     
    solve(Moves,Borne):-canWin(state(z6,z6,z1,closed,closed,closed,closed,alive),Moves,Borne),!.
    Sans entrer dans les détails, ce mini projet permet de résoudre un petit niveau d'un jeux (trouver un plus court chemin).
    A l'heure actuelle pour trouver le nombre de coups minimum je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    solve(M,10).
    ...
    solve(M,9).
    ...
    etc
    Jusqu'à ce que solve ne soit plus vérifié.


    Comment faire pour que mon programme soit capable de déterminer le minimum de coup tout seul ?


    Y'a une récurrence à écrire que je n'arrive pas à trouver ....


    Merci de m'avoir lu,
    et par avance merci à quiconque pourra m'aider

  2. #2
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Par défaut
    pourquoi ne pas utiliser de programmation par contraintes sur domaines finis ?
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  3. #3
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut
    Un petit peu plus de lumière sur ce thème ?

  4. #4
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut
    C'est bon merci j'ai réussi à me débrouiller avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    canWin(state(_,_,_,_,_,_,_,dead),[],_).
    canWin(State1,[M|L],Borne):-Borne>0,move(State1,M,State2),canWin(State2,L,Borne-1).
     
    solve(Moves,Borne):-canWin(state(z6,z6,z1,closed,closed,closed,closed,alive),Moves,Borne),!.
     
    find(Moves,Count,Total):-solve(Moves,Count),Total is Count,!.
    find(Moves,Count,Total):-find(Moves,Count+1,Total),!.
    getMin(Moves,Count):-find(Moves,0,Count).

    Merci pour votre aide

  5. #5
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Par défaut
    un peu de doc sur gnu-prolog fd... le seul truc valable chez eux

    http://www.gprolog.org/manual/html_node/gprolog054.html
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/02/2008, 15h35
  2. Création d'un compteur
    Par PM_calou dans le forum Langage
    Réponses: 13
    Dernier message: 27/06/2007, 08h58
  3. [XSLT] création d'un compteur
    Par Katachana dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 20/06/2007, 11h03
  4. création d'un compteur dans un formulaire
    Par poney01 dans le forum IHM
    Réponses: 14
    Dernier message: 11/05/2007, 14h04
  5. [MySQL] Problème de création d'un compteur.
    Par fabreizhad dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 03/03/2006, 00h18

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