latihan perulang dan rekursif.docx

5
/* Contoh 1 ------------*/ PREDICATES nondeterm negara(symbol) cetak_negara CLAUSES negara("Inggris"). negara("Perancis"). negara("Jerman"). negara("Denmark"). cetak_negara:- negara(X), write(X), /* tulis nilai X */ nl, /* ganti baris baru */ fail. cetak_negara. 1. Ouput tampil : Inggris Perancis

description

Representasi dan penalaran

Transcript of latihan perulang dan rekursif.docx

/* Contoh 1------------*/PREDICATESnondeterm negara(symbol)cetak_negaraCLAUSESnegara("Inggris").negara("Perancis").negara("Jerman").negara("Denmark").cetak_negara:-negara(X),write(X), /* tulis nilai X */nl, /* ganti baris baru */fail.cetak_negara.1. Ouput tampil :InggrisPerancis

/* Contoh 2------------*/PREDICATESnondeterm ulangnondeterm mesinketikCLAUSESulang.ulang:-ulang.mesinketik:-ulang,readchar(C), /* baca sebuah karakter, ikat ke variabel C */write(C),C = '\r'. /* Apakah ditekan Enter? Gagal jika tidak */GOALmesinketik,nl.latihan1. input 1 character langsung exit2. jika inputan berupa huruf x (exit)

/* Contoh 3------------*/PREDICATESfaktorial(unsigned,real)CLAUSESfaktorial(1,1):-!.faktorial(X,FaktorX):-Y=X-1,faktorial(Y,FaktorY),FaktoX = X*FaktorY.GOALX=5,faktorial(X,Y).1. X=5 tpi hasil tetap Y=6

Struktur data rekursifDOMAINStipepohon = pohon(string, tipepohon, tipepohon)DOMAINStipepohon = pohon(string,tipepohon,tipepohon) ; empty()/* Contoh 5------------*/PREDICATESbuat_pohon(string,tipepohon)sisip_kiri(tipepohon,tipepohon,tipepohon)sisip_kanan(tipepohon, tipepohon, tipepohon)bentuk_pohon(tipepohon)CLAUSESbuat_pohon(A,pohon(A,empty,empty)).sisip_kiri(X,pohon(A,_,B),pohon(A,X,B)).sisip_kanan(X,pohon(A,B,_),pohon(A,B,X)).bentuk_pohon(Ca3):-buat_pohon("Charles",Ch),buat_pohon("Hazel",H),buat_pohon("Michael",Mi),buat_pohon("Jim",J),buat_pohon("Eleanor",E),buat_pohon("Melody",Me),buat_pohon("Cathy",Ca),sisip_kiri(Ch, Mi, Mi2),sisip_kanan(H, Mi2, Mi3),sisip_kiri(J, Me, Me2),sisip_kanan(E, Me2, Me3),sisip_kiri(Mi3, Ca, Ca2),sisip_kanan(Me3, Ca2, Ca3).GOALbentuk_pohon(Pohon).

Pohon=pohon("Cathy",pohon("Michael",pohon("Charles",empty,empty),pohon("Hazel",empty,empty)),pohon("Melody",pohon("Jim",empty,empty),pohon("Eleanor",empty,empty)))1 Solution

Menjelaskan listing code diatas Point(15)