12.1
Membahas Contoh Program
suami(muktar,kiyah). // muktar adalah suami dari
kiyah
isteri(kiyah,muktar). // kiyah adalah isteri dari
muktar
ibu(kiyah,ani).
ibu(kiyah,kholik).
ibu(kiyah,mutia). // kiyah adalah ibu dari mutia
ayah(muktar,ani).
ayah(muktar,kholik). // muktar adalah ayah dari
kholik
ayah(muktar,mutia).
adik(kholik,ani).
adik(mutia,ani). // mutia adalah adik dari ani
adik(mutia,kholik).
kaka(ani,kholik).
kaka(ani,mutia). // ani adalah kaka dari mutia
kaka(kholik,mutia).
//melakukan pengambilan kesimpulan, pernyataan baru
anak(Y):- // akan benar anak si Y apabila
ibu(kiyah,Y),ayah(muktar,Y).
// ibunya adalah kiyah dan ayahnya adalah muktar
menikah(X,Y):- //akan benar menikah si X dengan Y
apabila
suami(X,Y),isteri(Y,X).
// suami (X,Y) dan isteri (Y,X)
menikah(Y,X):-
suami(X,Y),isteri(Y,X).
saudara(X,Y):-
adik(X,Y),kaka(Y,X).
saudara(Y,X):-
adik(X,Y),kaka(Y,X).
OUTPUT :
12.2 Membuat Program Sederhana
Dengan menggunakan bahasa
pemrograman Prolog kita akan terbantu dalam memecahkan suatu masalah karena
bahasa pemrograman Prolog dapat bekerja secara otomatis yang kemampuannya sama
dengan manusia. Berikut adalah contoh sederhana dari bahasa pemrograman Prolog
Bahasa Manusia
Keterangan :
Panji mempunnyai isteri bernama Nani, mereka mempunyai 3
orang anak yaitu: Bobi, Nina dan Tino. Tino mempunyai isteri bernama Sari,
mereka mempunyai 2 orang anak yang bernama Dida dan Dodo. Dida dan Dodo adlah
cucu dari Panji dan Nani, mereka juga keponakan dari Bobi dan Nina. Bobi
mempunyai dua orang adik yang bernama Nina dan Tino. Nina mempunyai 1 orang
kakak yaitu Bobi dan 1 orang adik yaitu Tino. Sari adalah menantu dari Panji
dan Sari.
Bahasa Prolog
Domains
Kakek,nenek,ayah,ibu,anak,suami,istri,kakak,adik,cucu,paman,
bibi,keponakan,mertua,menantu=symbol
namakakek,namacucu,namanenek,namaayah,namaibu,namaanak,
namasuami,namaistri,namakakak,namaadik,namapaman,namabibi,
namakeponakan,namamertua,namamenantu=symbol
Predicates
kakek(namakakek,namacucu)
nenek(namanenek,namacucu)
ayah(namaayah,namaanak)
ibu(namaibu,namaanak)
suami(namasuami,namaistri)
istri(namaistri,namasuami)
kakak(namakakak,namaadik)
adik(namaadik,namakakak)
paman(namapaman,namakeponakan)
bibi(namabibi,namakeponakan)
mertua(namamertua,namamenantu)
menantu(namamenantu,namamertua)
Clauses
ayah(panji,bobi).
ayah(panji,nina).
ayah(panji,tino).
ayah(tino,dida).
ayah(tino,dodo).
ibu(nani,bobi).
ibu(nani,nina).
ibu(nani,tino).
ibu(sari,dida).
ibu(sari,dodo).
kakek(panji,dida) :-
ayah(panji,tino) and ayah(tino,dida).
kakek(panji,dodo) :-
ayah(panji,tino) and ayah(tino,dodo).
nenek(nani,dida).
nenek(nani,dodo).
suami(panji,nani).
suami(tino,sari).
istri(nani,irham).
istri(sari,tino).
kakak(bobi,nina).
kakak(bobi,tino).
kakak(dida,dodo).
adik(nina,bobi).
adik(tino,bobi).
adik(dodo,dida).
paman(bobi,dida).
paman(bobi,dodo).
bibi(nina,dida).
bibi(nina,dodo).
mertua(panji,sari).
mertua(nani,sari).
menantu(sari,panji).
menantu(sari,nani).
Program Bahasa prolog diatas mempunyai banyak sekali
kemungkinan solusi/jawaban yang bisa diketahui melalui Goal kotak dialog.
Beberapa contoh diantaranya adalah:
1.
Keponakan dari Bobi
Goal:paman(bobi,Namakeponakan).
Namakeponakan=dida
Namakeponakan=dodo
Dapat diketahui bahwa keponakan dari Bobi adalah Dida dan
Dodo
1.
Anak dari Panji
Goal:ayah(panji,Namaanak).
Namaanak=bobi
Namaanak=nina
Dapat diketahui bahwa anak dari Panji adalah Bobi, Nina
dan Tino
1.
Mertua dari Sari
Goal:menantu(sari,Namamertua).
Namamertua=panji
Namamertua=nani
Dapat diketahui bahwa mertua dari Sari adalah Panji dan
Sari
1.
Keponakan dari Nina
Goal:bibi(nina,Namakeponakan).
Namakeponakan=dida
Namakeponakan=dodo
Dapat diketahui bahwa keponakan dari Nina adalah Dida dan
Dodo.
Masih banyak sekali terdapat kemungkinan dan peluang jika
program dalam bahasa prolog dikembangkan lebih lanjut.
Daftar Pustaka :
- https://panjitapen.wordpress.com/2007/09/30/contoh-sederhana-penggunaan-bahasa-pemrograman-prolog/