Laporan Pendahuluan
1. Jelaskan apa yng dimaksud dengan prolog?
Jawab :
Prolog adalah bahasa pemrograman logika atau di sebut juga sebagai bahasa non-procedural. Namanya diambil dari bahasa Perancis programmation en logique (pemrograman logika). Bahasa ini diciptakan oleh Alain Colmerauer dan Robert Kowalski sekitar tahun 1972 dalam upaya untuk menciptakan suatu bahasa pemrograman yang memungkinkan pernyataan logika alih-alih rangkaian perintah untuk dijalankan komputer. Berbeda dengan bahasa pemrograman yang lain, yang menggunakan algoritma konvensionl sebagai teknik pencariannya seperti pada Delphi, Pascal, BASIC, COBOL dan bahasa pemrograman yang sejenisnya, maka prolog menggunakan teknik pencarian yang di sebut heuristik (heutistic) dengan menggunakan pohon logika.
2. Jelaskan dan sebutkan struktur pemograman prolog?
Jawab :
1. DOMAINS
berisi deklarasi (pernyataan) tentang jenis data yang digunakan dalam fakta dan aturan. Mirip dengan bahasa Pascal atau C.
2. PREDICATES
PREDICATES adalah nama simbolik untuk relasi.
3. GOAL
GOAL berisi pertanyaan yang anda ajukan kepada turbo prolog.Bagian GOAL ini hanya dituliskan menggunakan kata tunggal, karena hanya boleh ada sebuah GOAL. GOAL dapat terdiri dari beberapa SUBGOAL. Perlu diingat suatu pernyataan baik fakta, relasi atau GOAL dikatakan satu apabila diakhiri dengan tanda titik.
4. CLAUSES (KLAUSA)
CLAUSES (KLAUSA) berisi fakta dan aturan yang membentuk keseluruhan program
3. Buatlah program sederhana menggunakan bahasa prolog ?
Jawab :
Prolog Perulangan Segitiga Bintang
loopa(A,B):-
(A>0,
loopb(B),nl,
C is A-1,
D is B+1,
loopa(C,D);
A=0,nl).
loopb(D):-
( D>0,write('*'),
B is D-1,
loopb(B);
D=0,write('')).
menu :-
write('-------MENU-------'),nl,
write('1. Biodata'),nl,
write('2. Segitiga'),nl,
write('3. Keluar'),nl,
write('Masukkan pilihan : '), read(PIL), nl,
(PIL=1,nl,
write('------BIODATA------'),nl,
write('Nama saya : '),read(A),nl,
write('NPM saya : '),read(B),nl,
write('-------------------'),nl,
write('Nama saya : '),write(A),nl,
write('NPM saya : '),write(B),nl,
menu;
PIL=2,nl,
write('Nilai perulangan : '),read(A),loopa(A,1),
menu;
PIL=3,nl,
write('Makasih'),nl).