728x90
가족관계 추론
prolog나 pylog를 사용하여 가족관계를 추론할 수 있는 프로그램을 작성.

male(rahim).
male(karim).
male(kabir).
male(roy).
female(tisa).
female(jesi).
parent(rahim,karim).
parent(rahim,kabir).
parent(karim,tisa).
parent(karim, jesi).
parent(babir, roy).
son(X,Y):- male(X), parent(Y,X).
daughter(X,Y):- female(X), parent(Y,X).
father(X,Y) :- male(X), parent(X,Y).
mother(X,Y) :- female(X), parent(X,Y).
spouse(X,Y) :- child(P,X), child(P,Y).
brother(X,Y) :- male(X), sibling(X,Y).
sister(X,Y) :- female(X), sibling(X,Y).
cousin(X,Y) :- parent(P,X), sibling(P,Q), parent(Q,Y).
child(X,Y) :- parent(Y,X).
sibling(X,Y) :- parent(P,X), parent(P,Y), X\=Y.
실행결과






SWISH -- SWI-Prolog for SHaring
ebeveyn(ayla,ulas). ebeveyn(pinar,ayla). ebeveyn(cansu,dilek). ebeveyn(cagri,yaprak). ebeveyn(arif,dilek). ebeveyn(pinar,arif). ebeveyn(pinar,fatma). ebeveyn(fatma,burak). ebeveyn(serkan,cansu). ebeveyn(serkan,muge). ebeveyn(talat,cagri). ebeveyn(talat,osm
swish.swi-prolog.org
FediSalhi/Prolog-Family-Tree
Programming of a family tree using SWI. Contribute to FediSalhi/Prolog-Family-Tree development by creating an account on GitHub.
github.com
728x90
'Computer Science > Programming language' 카테고리의 다른 글
| 한글코드의 표준화 과정 (0) | 2020.03.27 |
|---|---|
| 손이 가는 프로그래밍 일탈 10가지 (0) | 2020.03.26 |
| 프로그래밍 언어 : Rust (0) | 2020.03.26 |
| 프로그래밍 언어론 (0) | 2020.03.26 |
| 프로그래밍 언어론 용어정리 (0) | 2020.03.25 |
댓글