Ergebnis 1 bis 8 von 8

Thema: Prolog Grammatik einlesen ?

  1. #1
    HTML Newbie
    Registriert seit
    11.01.2008
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Prolog Grammatik einlesen ?

    Bin fast NOOB in Prolog und soll eine Grammatik per konsole einlesen und dann auf linksrekursivität prüfen ...

    Mein aktuellstes Problem: Wie zur Hölle lese ich mit ner schleife symbole (später noch regeln) in ne Liste/ Datenbasis ein?- komme absolut nicht weiter wenn irgendwer nen Tip hätte wäre ich zu ewigem Dank verpflichtet ...
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hallo minfler!

    assert(regel(A,B,C)).

    Vorsicht, das wird für die gesamte Laufzeit behalten, wenn du das löschen wilsst:

    retract(regel(A,B,C)).

    Wenn du alles löschen willst, muss irgendwie das Programm zu dem hier kommen:
    Code:
    deleteregel :- retract(regel(X,Y,Z)),fail.
    Praktisch zur verarbeitung wäre sowas:

    assert(userrule([Uebergabe1,Ue2...],[[UeBedingung1,Ub2...],[2te Bedingung],...]]).

    Wenn du dann rekursiv diese Listen zu einer Regel machst, gehts halt.


    Achso, ich freue mich,dass mal wieder jemand mit einer Prologfrage kommt!

    Viele liebe Grüße
    The User

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    11.01.2008
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    danke für den Tip - habs dann auch so in etwa realisiert am Ende - kämpfe derzeit mit nicht terminierenden schleifen und gedönz aber sehe licht am ende des Tunnels ...

  4. #4
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Bitte sehr, Bei Problemen meld dich.

    The User

  5. #5
    HTML Newbie
    Themenstarter

    Registriert seit
    11.01.2008
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    nächste frage:

    will wissen ob zb. ein buchstabe in der datenbasis vorkommt ...

    meine datenbasis: zeug

    mein test: check(X):-zeug(X).

    mein problem: wenn ich check("a") aufrufe und a ist in Zeug dann erhalte ich ein "yes" im umkehrschluss dachte ich ok dann muss es ja ein no/fail geben wenn das "a" nicht vorkommt. Aber so wies aussieht passiert gar nix also die stelle terminiert nicht ^^ was mach ich falsch oder wie teste ich am besten ob die variable member der db ist ?

    Hab mir bissl was zusammengestrikt und jetzt tritt hier ein bug nachm anderen auf ...^^

  6. #6
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Mal eine ganz blöde Frage:
    Warum benutzst du check und nicht einfach Zeug?

    Naja, deine Sache.
    Ich kann es mir eigentlich nur so erklären, dass da noch eine Regel zeug ist, die nicht terminiert.

    Bei mir kein Problem mit einem einfachen Datensatz.

    Viele liebe Grüße
    The User

  7. #7
    HTML Newbie
    Themenstarter

    Registriert seit
    11.01.2008
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    problem ist nicht ganz so einfach zu erklären - ich programmiere derzeit im kreis ...

  8. #8
    Forum Guru Avatar von The User
    Registriert seit
    28.10.2007
    Ort
    Zwischen Pazifik und Atlantik...
    Beiträge
    4.044
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    In der Datei muss eine nicht terminierende Funktion geben.
    Wenn der Compiler am Ende ankommt geht er eine Ebene höher und wenn das nicht geht bricht er ab undsagt no.
    Ansonsten trenn diese Regel von dem Zeug, gib ihr einen anderen Namen als den Eintrag.
    Natürlich könnte da auch eine schlechte Regel check vorhanden sein.
    Kennst du das '!' ?

    The User

Ähnliche Themen

  1. Ich brauch ein ENGLISCHEN grammatik Überprüfer
    Von Natscho im Forum Off Topic und Quasselbox
    Antworten: 8
    Letzter Beitrag: 18.03.2010, 00:58
  2. Prolog
    Von Sandra_DD im Forum Forum für alle anderen Programmiersprachen
    Antworten: 0
    Letzter Beitrag: 07.04.2008, 20:32
  3. [PROLOG] Arithmetische Ausdrücke als Grammatik einlesen
    Von PaddyG im Forum Forum für alle anderen Programmiersprachen
    Antworten: 1
    Letzter Beitrag: 02.03.2008, 00:40
  4. Prolog?
    Von The User im Forum Forum für alle anderen Programmiersprachen
    Antworten: 0
    Letzter Beitrag: 05.02.2008, 00:05
  5. Grammatik Fehler?
    Von Mella im Forum Off Topic und Quasselbox
    Antworten: 2
    Letzter Beitrag: 12.06.2007, 14:09

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •