www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Sonstige" - Prolog Programmierung
Prolog Programmierung < Sonstige < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Sonstige"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Prolog Programmierung: Idee, Tipp, Antwort
Status: (Frage) überfällig Status 
Datum: 23:11 Mo 04.02.2008
Autor: webspacer

Aufgabe
"An einer Geburtstagsparty nehmen genau 7 Ehepaare teil. Die Familiennamen der Männer
sind: Anders, Bauer, Conrad, Dahlke, Ebert, Frey und Göbel. Die Frauen heißen mit
Vornamen Hilde, Inge, Karin, Luise, Maria, Nora und Olga.
Im Verlaufe des Abends tanzte Herr Anders mit Inge und Luise, Herr Frey mit Maria und
Luise, Herr Göbel mit Inge und Nora, Herr Conrad mit Inge, Herr Dahlke mit Luise und Herr
Ebert mit Nora.
Später wurde zu viert Domino gespielt. Zuerst beteiligten sich Herr Conrad, Herr Anders,
Nora und Olga am Spiel. Die beiden männlichen Mitspieler wurden nach einer Weile von den
Herren Dahlke und Frey abgelöst. Zum Schluss lösten Hilde und Inge die beiden Frauen ab.
Merkwürdigerweise hat kein Ehemann mit seiner Frau getanzt oder mit ihr gemeinsam am Dominotisch gesessen.
Schreibe ein Prologprogramm, welches für Dich herausfindet, wer mit wem verheiratet ist! Das Prädikat „ verheiratet" soll in der Form einer Regel definiert werden, so dass die Frage „verheiratet(X, Y) " alle notwendigen Antworten liefert!"

grüss Gott!
Ich bitte um eure Hilfeleistung.

Ich habe versucht den Lösungsweg zu finden:
Ich habe Prädikate geschrieben:
w(hilde).
w(inge).
w(karin).
w(luise).
w(maria).
w(nora).
w(olga).
m(anders).
m(bauer).
m(conrad).
m(dahlke).
m(ebert).
m(frey).
m(gobel).
t(anders,inge).
t(anders,luise).
t(frey,maria).
t(frey,luise).
t(gobel,inge).
t(gobel,nora).
t(conrad,inge).
t(dahlke,luise).
t(ebert,nora).
t(conrad,nora).
t(conrad,olga).
t(anders,nora).
t(anders,olga).
t(dahlke,nora).
t(dahlke,olga).
t(frey,nora).
t(frey,olga).
t(dahlke,hilde).
t(dahlke,inge).
t(frey,inge).
t(frey,hilde).
Das bringt aber mich nicht weiter, ich hab mir überlegt, „verheiratet(X, Y) " soll mit t(X;Y) in Verbimdung gesetzt werden, meine Vermutung kann aber auch falsch sein.  Ich habe mir den Kopf über diese Aufgabe zerbrochen. Ich habe nur die Hoffnung, dass ihr mir damit helft. Danke im vorraus

        
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 23:20 Mo 04.02.2008
Autor: Gilga

Es fehlen die Prozedurklauseln
t(anders,olga) => nicht verheiratet(anders,olga)
.......

Bezug
                
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 13:58 Di 05.02.2008
Autor: webspacer

ich habe nun die Regeln entworfen, ich weiß, aber nicht, wie ich verheiratet(X;Y) durch nicht verheiratet ausdrucken soll. Das soll genau das Umgekehrte sein, der Ausdruck in Prolog fehlt mir aber:
nichtverheiratet(X,Y):- t(X,Y).
verheiratet(X;Y):- m(X), w(Y),

Bezug
                        
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 17:24 Di 05.02.2008
Autor: webspacer

Ich habe zwei Programme entworfen. Sie laufen aber nicht. Wo ist der Fehler? Helfen Sie mir bitte!
1. Variante:
w(hilde).
w(inge).
w(karin).
w(luise).
w(maria).
w(nora).
w(olga).
m(anders).
m(bauer).
m(conrad).
m(dahlke).
m(ebert).
m(frey).
m(gobel).
t(X,Y):- w(X), m(Y).
verheiratet(X,Y):- t(X,Y),
t(anders,F1), F1(StrichGleichheitszeichen)nora, F1(StrichGleichheitszeichen)olga, F1(Strich Gleichheitszeichen)inge, F1(Strich Gleichheitszeichen)luise,
t(conrad,F2), F2(Strich Gleichheitszeichen)olga, F2(StrichGleichheitszeichen)nora, F2(Strich Gleichheitszeichen)inge, F1(Strich Gleichheitszeichen)F2,
t(frey,F3), F3(StrichGleichheitszeichen)maria, F3(StrichGleichheitszeichen)luise, F3(StrichGleichheitszeichen)nora, F3(StrichGleichheitszeichen)olga, F3(StrichGleichheitszeichen)inge, F3(StrichGleichheitszeichen)hilde, F1(StrichGleichheitszeichen)F3, F2(StrichGleichheitszeichen)F3,
t(gobel,F4), F4(StrichGleichheitszeichen)inge, F4(StrichGleichheitszeichen)nora, F4(StrichGleichheitszeichen)F1, F4(StrichGleichheitszeichen)F2, F4(StrichGleichheitszeichen)F3,
t(dahlke,F5), F5(StrichGleichheitszeichen)luise, F5(StrichGleichheitszeichen)olga, F5(StrichGleichheitszeichen)nora, F5(StrichGleichheitszeichen)F1, F5(StrichGleichheitszeichen)F2, F5(StrichGleichheitszeichen)F3, F5(StrichGleichheitszeichen)F4,
t(ebert,F6), F6(StrichGleichheitszeichen)nora, F6(StrichGleichheitszeichen)F1, F6(StrichGleichheitszeichen)F2, F6(StrichGleichheitszeichen)F3, F6(StrichGleichheitszeichen)F4, F6(StrichGleichheitszeichen)F5,
t(bauer,F7), F7(StrichGleichheitszeichen)F1, F7(StrichGleichheitszeichen)F2, F7(StrichGleichheitszeichen)F3, F7(StrichGleichheitszeichen)F4, F7(StrichGleichheitszeichen)F5, F7(StrichGleichheitszeichen)F6.
2. Variante:
w(hilde).
w(inge).
w(karin).
w(luise).
w(maria).
w(nora).
w(olga).
m(anders).
m(bauer).
m(conrad).
m(dahlke).
m(ebert).
m(frey).
m(gobel).
t(X,Y):- w(X), m(Y).
loesung(Anders,Bauer,Conrad,Dahlke,Ebert,Frey,Goebel):-
w(Anders), Anders(StrichGleichheitszeichen)inge, Anders(StrichGleichheitszeichen)luise, Anders(StrichGleichheitszeichen)nora, Anders(StrichGleichheitszeichen)olga,
w(Bauer), Bauer(StrichGleichheitszeichen)Anders,
w(Conrad), Conrad(StrichGleichheitszeichen)inge, Conrad(StrichGleichheitszeichen)Anders, Conrad(StrichGleichheitszeichen)Bauer,
w(Dahlke), Dahlke(StrichGleichheitszeichen)luise, Dahlke(StrichGleichheitszeichen)nora, Dahlke(StrichGleichheitszeichen)olga, Dahlke(StrichGleichheitszeichen)hilde, Dahlke(StrichGleichheitszeichen)inge, Dahlke(StrichGleichheitszeichen)Anders, Dahlke(StrichGleichheitszeichen)Bauer, Dahlke(StrichGleichheitszeichen)Conrad,
w(Ebert), Ebert(StrichGleichheitszeichen)nora, Ebert(StrichGleichheitszeichen)Anders, Ebert(StrichGleichheitszeichen)Bauer, Ebert(StrichGleichheitszeichen)Conrad, Ebert(StrichGleichheitszeichen)Dahlke,
w(Frey), Frey(StrichGleichheitszeichen)maria, Frey(StrichGleichheitszeichen)luise, Frey(StrichGleichheitszeichen)nora, Frey(StrichGleichheitszeichen)olga, Frey(StrichGleichheitszeichen)hilde, Frey(StrichGleichheitszeichen)inge, Frey(StrichGleichheitszeichen)Anders, Frey(StrichGleichheitszeichen)Bauer, Frey(StrichGleichheitszeichen)Conrad, Frey(StrichGleichheitszeichen)Dahlke, Frey(StrichGleichheitszeichen)Ebert,
w(Goebel), Goebel(StrichGleichheitszeichen)inge, Goebel(StrichGleichheitszeichen)nora, Goebel(StrichGleichheitszeichen)Anders, Goebel(StrichGleichheitszeichen)Bauer, Goebel(StrichGleichheitszeichen)Conrad, Goebel(StrichGleichheitszeichen)Dahlke, Goebel(StrichGleichheitszeichen)Ebert, Goebel(StrichGleichheitszeichen)Frey.

Bezug
                                
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 02:10 Mi 06.02.2008
Autor: Zneques

Hallo,

Du solltest das Gesammte mit dem Tanzen und Domino als Fakten hinzufügen.
nichtverh(anders,luise).
usw.
Dann dürfte dir die Regel für verheiratet deutlich leichter fallen.

Ciao.

Bezug
                                        
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:33 Mi 06.02.2008
Autor: webspacer

Hallo Zneques,
ich habe auch das gemacht, die richtige Regel mit verheiratet(X;Y) fallt mir nicht ein. Können Sie noch einen weiteren Tipp geben, wie ich die Wissensbasis aus der Aufgabe in die Regel umsetzen kann? Danke für die Beteiligung.

Bezug
                                                
Bezug
Prolog Programmierung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 12:28 Do 07.02.2008
Autor: Zneques

Das sieht schon ganz gut aus.
Soweit ich mich erinnere Funktioniert das =/= nur mit Zahlen. Für logische Verneinung müsste eigentlich "not" zu benutzen sein.
D.h. er findet keine Fakten/Regeln, dass die Aussage stimmt.
verheiratet(X,Y):- nichtverh(X,Z), w(Y), m(X), not(Y=Z).
Besser dürfte jedoch sein wenn man erstmal jedes Paar m-w als mögliches Ehepaar betrachtet :
verheiratet(X,Y):- m(X), w(Y), not(nichtverh(X,Y)).
nun sucht er erst nach einen Mann X, dann die Frau Y und kontrolliert dann, ob es Indizien gegen die Heirat gibt.

Bezug
        
Bezug
Prolog Programmierung: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 23:20 Mi 06.02.2008
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Sonstige"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]