• Hi !

    Ich bin Prolog Anfänger und habe fogende Faktenbank:

    bei kinder() sind die ersten beiden Felder Vater und Mutter. Die Liste enthält die Kinder der Eltern.

    Jetzt wollte ich die allgemeinen Funktionen vater() und mutter() schreiben.

    Wenn ich kompile und sage

    Zitat

    vater(Philip,Andrew).

    , sagt SWI-Prolog mir:

    Zitat

    Philip = _G180
    Andrew = _G181

    Yes

    Wenn ich aber eine Frage mit falscher Antwort frage, sagt er das selbe:

    Zitat

    ?- vater(Philip,Baum).
    Philip = _G180
    Baum = _G181

    Yes


    Kann mir jemand helfen, was an meinem Quellcode falsch ist ??

  • Hi, also mein Prolog ist zwar schon etwas eingerostet, aber ich meine die Parameter sind Case-sensetive, soll heißen Anonyme Variablen werden groß geschrieben, konkrete klein. Sprich schreib die namen alle klein.

    Sämtlicher Code erhebt keinen Anspruch auf syntaktische Korrektheit geschweige denn Ausführbarkeit und ist für die Implementation außerhalb der Beispiele nicht geeignet.
    [Blockierte Grafik: http://www.snippr.de/social/img/logo.png]
    Kein Support für kommerzielle Scripts | Kein kostenloser Support via ICQ

  • Genau... Variablen werden groß geschrieben und "Prädikate" werden klein geschrieben(zumindest der anfangsbuchstabe)

    Dann klappt das auch...

    Bei fragen korrigier ich dir auch gerne kurz den Text