Hilfe in Programmiersprache Prolog gesucht
Ich bin gerade dabei mir eine kleine Datenbank für die bevorstehende Frauen-Fussball-Weltmeisterschaft zu basteln. Dazu möchte ich Prolog verwenden, um eine weitere Programmiersprache zumindest ansatzweise kennenzulernen. Ich habe dazu bislang eine Gruppe der Weltmeisterschaft angelegt und als Ergebnisse schon einmal Testdaten eingetragen. Meine Daten haben folgende Form:
- Code: Alles auswählen
begegnung(spiel(<nameMannschaft1>,<nameMannschaft2>),endstand(<tore1>,<tore2>))
Als einen ersten Schritt möchte ich nun zwei Prädikate schreiben. Das eine soll lediglich eine Liste aller Spiele ausgeben, sodass also nur die beiden am dem Spiel teilnehmenden Mannschaften gespeichert und gegebenenfalls ausgegeben wird. Das andere Prädikat soll dafür sorgen, dass zu einer Mannschaft die in einem Spiel erreichten Punkte zurück gegeben werden. Dazu habe ich mir folgende Schreibweise überlegt:
- Code: Alles auswählen
punkteProSpiel(A,spiel(A,B),P)
Hier soll A eine Mannschaft sein, für die die Punkte P in der Partie A gegen B geliefert werden. Bei dem ersten Prädikat habe ich schon einen konkreten Lösungsansatz gefunden. Jedoch liegt mein Problem darin, dass ich nicht genau weiß wie ich das Ergebnis in einer Liste speichern soll. Bei dem zweiten Prädikat hänge ich derzeit noch etwas in der Luft und weiß nicht so genau ich am besten anfangen soll.
Kennt sich eventuell jemand etwas besser mit Prolog aus und kann mir hierbei etwas auf die Sprünge helfen? Ich hab leider noch nicht viel Erfahrung mit dieser Sprache und tue mir dann hier und da teilweise noch sehr schwer. Aber ich hoffe, dass sich dies mit der Zeit dann auch wieder gibt.
Also generell kann ich dir von Prolog als Programmiersprache nur abraten. Es ist langsam, es ist alt, es ist unübersichtlich, es ist in seinen Möglichkeiten sehr begrenzt und die Syntax finde ich auch grauenhaft. Kennst du dich ein wenig mit Listen in Prolog aus? Außerdem verstehe ich nicht, weshalb du das Ergebnis überhaupt in einer Liste speichern willst. (Lass dich aber von mir nicht verunsichern, so gut kenne ich mich auch nicht aus mit Prolog )
rumkugeln hat geschrieben:Also generell kann ich dir von Prolog als Programmiersprache nur abraten. Es ist langsam, es ist alt, es ist unübersichtlich, es ist in seinen Möglichkeiten sehr begrenzt und die Syntax finde ich auch grauenhaft. Kennst du dich ein wenig mit Listen in Prolog aus? Außerdem verstehe ich nicht, weshalb du das Ergebnis überhaupt in einer Liste speichern willst. (Lass dich aber von mir nicht verunsichern, so gut kenne ich mich auch nicht aus mit Prolog )
Ich weiß, dass es sicherlich bessere Alternativen geben wird, aber ich möchte es zumindest einmal versuchen und das angefangene Projekt nun zumindest soweit weiter entwickeln, dass ein paar Grundbausteine wirklich funktionieren. Die Ergebnisse will ich ja auch gar nicht in einer Liste speichern. In die Liste sollen lediglich die Begegnungen, also jeweils die zwei Mannschaften, die an der Begegnung teilgenommen haben.
Meiner Meinung nach macht es gar keinen Sinn, wenn du die beiden Mannschaften, die an einem Spiel teilgenommen haben in einer Liste speicherst und diese dann dem Prädikat übergibst. Das ist doch viel zu aufwendig, wo es sich doch immer nur um zwei Mannschaften handelt. Probiere es doch einmal die beiden Mannschaften einzeln, als festgesetzte Werte, dem Prädikat zu übergeben. Ich hoffe dies ist dir zumindest ein Denkanstoß.
Der Sinn liegt einfach daran, dass du dann eine Liste mit allen Paarungen bekommst. Dann sieht man eben wer gegen wen spielen wird oder eventuell dann schon gespielt hat. Mein Problem liegt auch weniger darin, dass ich die Mannschaften nicht bekomme, sondern darin, dass ich nicht weiß oder nicht verstehe wie ich mit der Liste arbeiten kann. Das Aufrufen der Mannschaften habe ich, zumindest so wie ich das sehe, bereits richtig geschrieben.
Ehrlich gesagt kenne ich mich mit Listen auch nicht gut aus und daher würde ich in jedem Fall versuchen sie zu vermeiden. Ich weiß nicht wie weit du mit deinem Wissen über Listen in Prolog bist, aber weißt du schon das Listen in Prolog immer aus Listenkopf und Listen Rumpf bestehen? Du kannst Listen also recht leicht ergänzen, indem du einer Liste vorne einfach etwas ranhängst. Eine genaue Erklärung zu Listen in Prolog findest du hier
Link dieser Seite https://www.talkteria.de/forum/topic-163726.html
Ähnliche Themen
Weitere interessante Themen
- Schöne Blatt Pflanze für die Wohnung 1024mal aufgerufen · 1 Antworten · Autor: Rubbelfeld · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Schöne Blatt Pflanze für die Wohnung
- Palmen für die Wohnung 2984mal aufgerufen · 1 Antworten · Autor: Dreddi · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Palmen für die Wohnung
- Was kann man gegen eine tropfende Birkenfeige tun? 1837mal aufgerufen · 1 Antworten · Autor: helgak62 · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Was kann man gegen eine tropfende Birkenfeige tun?
- Verträgt Banane chemisches Anti Insekten Mittel? 1331mal aufgerufen · 1 Antworten · Autor: Wawa666 · Letzter Beitrag von Verbena
Forum: Garten & Pflanzen
- Verträgt Banane chemisches Anti Insekten Mittel?