Anda di halaman 1dari 4

Fakta dan Aturan Prolog

F : Yusuf adalah ayah dari zein ayah(yusuf,zein).


F : zein adalah ayah dari dona ayah(zein,dona).
F : yusuf adalah kakek dari dona kakek(slamet,badu).
A : yusuf adalah benar kakek
dona jika yusuf adalah benar ayah kakek(yusuf,zein) :-
zein dan zein adalah benar ayah ayah(yusuf,zein) and
dona. ayah(zein,dona).

F : zein adalah saudara kandung saudara_kandung(zein,fajar).


fajar ayah(yusuf,zein).
F : zein mempunyai ayah yusuf ayah(yusuf,fajar).
F : fajar mempunyai ayah yusuf
A : zein adalah benar saudara
kandung fajar, jika zein saudara_kandung(zein,fajar) :-
mempunyai ayah Slamet dan fajar ayah(yusuf,zein) and
juga mempunyai ayah Slamet. ayah(yusuf,fajar).

NOMER 3
Pertanyaan Prolog dan Jawaban Program
Apakah dona suka boneka ? ?- suka(dona,boneka).
Yes ……. (jika faktanya dona suka boneka)
No……..…(jika tidak sesuai fakta).
Apakah yang disukai dona ? ?- suka(dona,Apa).
Apa=boneka
Siapakah yang suka boneka ? ?- suka(Siapa,boneka).
Siapa=dona
Dari contoh silsilah keluarga
di atas :
Siapakah kakek dona ? ?- kakek(Siapa,dona).
Siapa=yusuf
?- kakek(yusuf,Cucu).
Siapakah cucu yusuf ?
Cucu=dona ; Cucu=doni

(jika kemungkinan ada lebih dari satu


jawaban gunakan tanda “;” pada akhir
setiap jawaban).
%% FAKTA */

%%orang tua */
ayah(yusuf,zein).
ayah(yusuf,fajar).
ayah(zein,dona).
ayah(zein,doni).
ayah(fajar,ramon).
ayah(fajar,roman).
ayah(santoso,bu_zein).
ayah(supardi,bu_fajar).
ibu(bu_yusuf,zein).
ibu(bu_yusuf,fajar).
ibu(bu_zein,dona).
ibu(bu_zein,doni).
ibu(bu_fajar,ramon).
ibu(bu_fajar,roman).
ibu(bu_santoso,bu_zein).
ibu(bu_santoso,bu_fajar).

%% ATURAN */
%% Kakek adalah kakek Cucu */
kakek(Kakek,Cucu) :-
ayah(Ayah,Cucu),
ayah(Kakek,Ayah).
kakek(Kakek,Cucu) :-
ibu(Ibu,Cucu),
ayah(Kakek,Ibu).

%% Nenek adalah nenek Cucu */

nenek(Nenek,Cucu) :-
ayah(Ayah,Cucu),
ibu(Nenek,Ayah).
nenek(Nenek,Cucu) :-
ibu(Ibu,Cucu),
ibu(Nenek,Ibu).

%% Nama1 adalah saudara kandung Nama2


saudara_kandung(Nama,Name) :-
ayah(Ayah,Nama),
ayah(Ayah,Name),
ibu(Ibu,Nama),
ibu(Ibu,Name),
Nama \= Name.

%% Sdr1 adalah saudara sepupu Sdr2 saudara_sepupu(Sdr1,Sdr2) :-


ayah(Ayah1,Sdr1),
ayah(Ayah2,Sdr2),
saudara_kandung(Ayah1,Ayah2).
saudara_sepupu(Sdr1,Sdr2) :-
ayah(Ayah,Sdr1),
ibu(Ibu,Sdr2),
saudara_kandung(Ayah,Ibu).
saudara_sepupu(Sdr1,Sdr2) :-
ibu(Ibu,Sdr1),
ayah(Ayah,Sdr2),
saudara_kandung(Ibu,Ayah).
saudara_sepupu(Sdr1,Sdr2) :-
ibu(Ibu1,Sdr1),
ibu(Ibu2,Sdr2),
saudara_kandung(Ibu1,Ibu2).

Anda mungkin juga menyukai