brauche Hilfe in Prolog

JackNukem

Enthusiast
Thread Starter
Mitglied seit
01.08.2006
Beiträge
1.140
Ort
Berlin
Das Problem isst folgendes:

Wir arbeiten mit dem Buch "Informatik mit Prolog, Sek II" herrausgegebn vom Hessischen Kultusministerium, und benutzen die Software SWI-Prolog Editor.

Unser Thema ist gerade Listenoperatoren, aber das ist momentan eher nebensächlich.
Denn wir, der Lehrer und ich, sind auf folgendes Problem gestoßen:

Nomalerweise gibt man die Zugehörigkeit wie folgt an:

Code:
vater(paul, maria).
Was soviel heisst wie: Paul ist der Vater von Maria.

Abfragen tut man wie folgt:

Code:
?- vater(paul, maria). 
yes.

Die Antwort fällt positiv aus, also ist die Anfrage korrekt.

Unser Problem ist das wir Listen keinen Namen zuweisen können:

Code:
liste1(a,a,a,b,b,c,c).

mitglied(X, [X|_]).
mitglied(X, [_|Y]):-
    mitlgied(X, Y).

Bei einer Anfrage wie z.B.

Code:
?- mitglied(b,liste1).

Kommt immer ein "no" bei raus.

Wenn man bei der Abfrage die Liste komplett mit angibt:
Code:
?- mitglied(b, [liste1(a,a,a,b,b,c,c)]).
funktioniert es.

Es kann doch nicht sein dass man keinen Datensatz vorgeben kann um ihn dann per Namen abzurufen und zu benutzen.

Die Frage ist wie man einer Liste einen verwendbaren Namen zuweist.

P.S.:
Im letzten Code habe ich die Klammern wahrscheinlich vertauscht, bitte nicht schlagen, korrigiert mich lieber. :)

Danke
Jack
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh