SWI-Prolog IF-Bedingung

Neue Frage »

Auf diesen Beitrag antworten »
AryaNoAkuma SWI-Prolog IF-Bedingung

Hallo!

Ich muss in der Schule ein Projekt zum Thema Stammbaum ´von Hunden erstellen. Eine Teilaufgabe soll sein, dasss ausgegeben wird mit welcher Wahrscheinlichkeit ein Hund eine bestimmte Erbkrankheit hat. Dabei gehe ich erstmal nur von einer Krankheit aus, es ist also nicht wichtig welche Krankheit es ist. Das Ganze soll folgendermaßen funktionieren:

Ein Hund hat eine generelle Wahrscheinlichkeit von 13 % krank zu sein.
Ist ein Elternteil bereits krank wird diese Wahrscheinlichkeit mal 2 genommen (13*2).
Sind beide Elternteile krank wird diese Wahrscheinlichkeit mal 3 genommen (13*3).

Dazu habe ich bisher das geschrieben:

k_prozent(X,Y):-vater(A,X),krank(A,nein),mutter(B,X),krank(B,nein),Y=:=13.
k_prozent1(X,Y):-vater(A,X),mutter(B,X),(krank(B,ja),krank(A,nein))traurig krank(B,nein),krank(A,ja)),Y=:=13*2.
k_prozent2(X,Y):-vater(A,X),krank(A,ja),mutter(B,X),krank(B,ja),Y=:=13*3.


Daraus wollte ich jetzt etwas in der Richtung basteln wie:

wahrscheinlichkeit(X,Y):-wenn kein elternteil krank dann k_prozent(X,Y)
sonst wenn ein elternteil krank dann k_prozent1(X,Y)
sonst wenn zwei elternteil krank dann k_prozent2(X,Y).

Wenn das mit der IF-Bedinung irgendwie gehen würde, würde ich das bisherige natürlich zerlegen, dass heißt die Bedingungen würden dann dem prädikat "wahrscheinlichkeit" zugeordnet werden und mann bräuchte k_prozent usw. nicht mehr und könnte einfach gleich bei "wahrscheinlichkeit" Y=:=13 usw. schreiben.

Meine Frage wäre jetzt aber, wie und ob es möglich ist in Prolog eine derartige IF-Bedinung zu formulieren.



Danke für die Hilfe!


Grüße Arya
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »