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 :

Sauvegarde des prédicats dynamiques


Sujet :

Prolog

  1. #1
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut Sauvegarde des prédicats dynamiques
    Bonjour, ou re- bonjour.
    J'espère que vous ne m'en voudrez pas d'avoir encore une question.


    J'ai déclarer 4 predicats comment suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    :- dynamic ( sujet/1 ).
    :- dynamic ( verbe/1 ).
    :- dynamic ( complément/1 ).
    :- dynamic ( lire/3 ).
    Je cherche comment sauvegarder les faits ajouter au cours du traitement, pour pouvoir terminer Prolog et recharger les faits par la suite.

    J'ai essayé, mais ne parviens qu'à sauvegarder les clauses ci-dessus.


    J'en suis là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    save :-
        tell('subjects.pl'),                                   
        listing(sujet),
        told.
    S'il vous palit !!

    Merci pour votre éclairage.
    Logique sans matière est matière de logique.

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Ayant perdu ma boule de cristal, je voudrais savoir quel genre de faits ne pouvez-vous pas sauvegarder ?
    Comment sont-ils mémorisés ?
    Le principe tell/told est parfait.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut
    Bonjour Trap_D.

    Et bien avec la clause ":- dynamic (sujet/1)." après j'ajouter mes sujets avec assertz((sujet(X)) ; Je souhaiterais sauvegarder les sujet ajouté avec assertz/1.

    normalement en dynamique après avoir ajouté : sujet(je), je devrais sauvegarder "sujet(je)".

    Mais je n'ai dans le fichier "subjects.pl" que la clause ":- dynamic (sujet/1).". (que d'ailleurs je ne veux pas dans mon fichier subjects.pl puisque déjà dans le fichier principal.

    Merci pour vos réponses.
    Logique sans matière est matière de logique.

  4. #4
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Il m'est arrivé d'avoir besoin de suavegarder des faits mémorisés au cours de l'utilisation d'un programme.
    Je faisais comme vous, je sauvegardais les données, à la fermeture du programme avec le même genre de mécanisme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    save :-
        tell('subjects.pl'),                                   
        listing(sujet),
        told.
    Je lisais ce fichier au lancement suivant du programme et tout fonctionnait bien. Je ne comprends pas ou est le problème.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  5. #5
    Membre du Club
    Homme Profil pro
    codeur
    Inscrit en
    Mars 2018
    Messages
    158
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : codeur

    Informations forums :
    Inscription : Mars 2018
    Messages : 158
    Points : 64
    Points
    64
    Par défaut
    Bonjour Trap_D.

    Effectivement, le prédicat sujet/1 n'existe pas.

    Alors ça viens de mon prédicat écrire/3 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    /* Ajout des prédicats Sujet/1 et Verbe/1 s'ils n'existe pas et des prédicats */
    /* Complément/1 et lire/3                                                     */
    écrire(Sujet, Verbe, Complément) :-
        (not(verbe(Verbe) ->
                 assertz((verbe(Verbe))))),
        (not(sujet(Sujet) ->
                 assertz((sujet(Sujet))))),
        assertz((complément(Complément))),
        assertz((lire(Sujet, Verbe, Complément))).
    Et je crois que j'ai trouver, les nots ne sont pas terminé à temps.

    Merci Trap_D.

    Je suis déolé, a propos, Trap_D, c'est hors sujet.
    Merci beaucoup encore.
    Logique sans matière est matière de logique.

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

Discussions similaires

  1. [Débutant] Sauvegarder en XML avec des class dynamiques
    Par Speed41 dans le forum C#
    Réponses: 2
    Dernier message: 17/06/2014, 08h45
  2. [Débutant] Ajouter des boutton dynamiquement Avec sauvegarde.
    Par sakhana88 dans le forum C#
    Réponses: 2
    Dernier message: 07/02/2013, 11h13
  3. sauvegarde des données des tables
    Par tomm dans le forum Bases de données
    Réponses: 18
    Dernier message: 27/04/2004, 21h29
  4. [Souris] Sauvegarde des paramètres du driver
    Par Giovanny Temgoua dans le forum x86 16-bits
    Réponses: 7
    Dernier message: 31/01/2004, 19h24
  5. Sauvegarde des attributs de texte en fichier ini
    Par Raylemon dans le forum Langage
    Réponses: 2
    Dernier message: 06/09/2003, 21h28

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