Gabung Ke Forum Saya Di 4KA01

Membuat Menu Pada Prolog

Pada pembahasan kali ini saya ingin mendiskusikan bersama teman-teman mengenai cara pembuatan menu pada prolog. Sebenarnya ini mirip bentuk percabangan pada jenis bahasa pemograman yang lainnya. Akan tetapi bentuk umum atau syntax nya saja yang berbeda. Hal utama yang temen-temen harus perhatikan adalah penulisan huruf besar dan huruf kecil! hal ini sangatlah berpengaruh, selain itu hal-hal kecil yang biasanya kita sepelekan adalah tanda (,) koma yang ini sangat riskan dan harus digunakan setiap kali teman-teman membuat suatu statement pada baris yang baru. juga tanda (.) titik yang menunjukan akhir dari suatu statement program dijalankan. untuk lebih jelasnya temen-temen bisa membaca di Part1 Prolog yang membahas bagaimana cara kita memanggil file yang ada dalam notepad yang kemudian dicompile dan menghasilkan output pada console SWI-Prolog.

Berikut ini merupakan contoh sederhana program menu dengan menggunakan prolog. 


Penjelasan : 

menu:-   //Merupakan nama variabel yang mewakili keseluruhan program yang ada dipanggil pada console SWI-Prolog dengan menuliskan menu.
Contoh :

?-menu.

write ( )   //Syntax ini digunakan untuk mencetak variabel string yang diapit dengan tanda petik tunggal (')

nl        //Atau lebih dikenal newline merupakan perintah untuk berpintah menuju baris yang baru.

read ( )   //Syntax ini digunakan untuk memberikan nilai inputan pada variabel yang diberikan didalam tanda kurung.

E is C*D*0.5     //Biasa lebih kita kenal E=C*D*0.5 sama saja.

(PIL=1,nl,         //Prinsipnya sama dengan select case pada QBasic, jika kita menekan 1, akan memproses
                           blok program didalamnya.
.
.
PIL=2,nl,        
.
.
PIL=3,nl,
.
.                      
Hasil Output : 




Silahkan Temen Temen Download File menu.pl disini.
Sekian dari saya..Semoga Bermanfaat!
Baca Selengkapnya..

Silsilah Keluarga Pada Prolog







Kasus-1 
Sebuah silsilah keluarga saya.


Cara Menggunakan SWI-PROLOG 
1. Buka SWI-PROLOG


2. Pilih File-New(beri nama file bebas dengan extension .pl) Mis :hierarki_keluarga.pl - Kemudian Save.


3. Kemudian Muncul Jendela Baru dalam bentuk Notepad dengan nama-file yg sudah kita beri nama sebelumnya. Disinilah tempat temen-temen menuliskan programnya.


4. Setelah selesai menuliskan program nya, di close dan di save.


5. Selanjutnya akan kembali ke tampilan awal dari SWI-PROLOG. Kemudian Pilih File-Consult. Untuk memanggil file.pl yang sudah kita buat sebelumnya. "gambar dibawah ini  merupakan tampilan tidak menunjukan pesan error !", jika muncul pesan error maka teman-teman harus membetulkannya kembali dengan cara memilih File-Edit. Dan akan kembali ke editor Notepad sebelumnya.


Baca Selengkapnya..

Program INPUT & OUTPUT PROLOG

Pendahuluan
Prolog menyediakan fasilitas untuk menampilkan output dan menginput suatu pernyataan (term) atau karakter baik melalui keyboard maupun dari media lain seperti hard disk atau CD-ROM. Penjelasan mengenai hal tersebut akan saya bahas dalam postingan kali ini.


Menampilkan output pernyataan
Untuk menampilkan output berupa pernyataan dapat digunakan predikat bawaan dari prolog, yaitu write, writeq, dan nl. Predikat write/1 (satu argumen) digunakan untuk menampilkan output tanpa tanda petik. Predikat writeq sama dengan predikat write, hanya saja writeq menampilkan pernyataan dengan disertai tanda petik (quote), kecuali jika pernyataan yang ditulis hanya satu kata saja, maka tanda petik tidak tertampilkan. Sedangkan predikat nl/0 (tanpa argumen) berfungsi sama dengan tombol enter, yaitu untuk membuat baris baru (new line).


Contoh penggunaan dari predikat-predikat diatas adalah sebagai berikut:
1 ?- write(‘matdis itu asik’).
matdis itu asik
Yes
2 ?- writeq(‘hati-hati’).
‘hati-hati’
Yes
3 ?- writeq(‘hati’).
hati
Yes
4 ?- writeq(‘hati-hati dengan hati’).
‘hati-hati dengan hati’
Yes
5 ?- write(‘maju terus pantang mundur’),nl,nl,writeq(‘mundur terus kapan majunya?’).
maju terus pantang mundur
‘mundur terus kapan majunya?’
Yes.


Menggunakan Input pernyataan
Predikat yang digunakan untuk menginput pernyataan adalah read/1 yang membutuhkan satu argument, yang harus berbentuk variable.. Pada inputan yang berasal dari keyboard,  biasanya muncul tampilan karakter prompt seperti tanda titik dua(:), yang berarti dibutuhkan inputan dari user. Nilai dari pernyataan yang kita inputkan akan diberikan kepada variable argument. Jika variable argument sudah diberikan nilai sebelumnya, maka goal akan tercapai hanya jika nilai yang diinput sama dengan nilai awalnya.


Contoh penggunaan dari predikat-predikat diatas adalah sebagai berikut:
1 ?- read(X).
|: 1000.
X = 1000
Yes
2 ?- read(Y).
|: ‘jika ini maka itu’.
Y = ‘jika ini maka itu’
Yes
3 ?- X=joko,read(X).
|: joko.
X = joko
Yes


Menggunakan Input dan output dengan karakter
Untuk problem seperti membaca sebuah seri karakter dari keyboard dan menghitung jumlah huruf hidupnya, akan lebih efektif jika menggunakan input sebuah karakter. Untuk melakukan hal tersebut kita harus terlebih dahulu mengetahui nilai ASCII untuk sebuah karakter. Semua printing karakter dan non-printing karakter (spasi, tab) mempunyai hubungan dengan nilai ASCII, yaitu bilangan bulat dari 1 sampai 255.
Menampilkan Output dengan Karakter
Menampilkan Output Karakter digunakan dalam predikat put/1. Predikat ini menggunakan satu argumen, dengan nilai berupa angka antara 0 – 255 atau pernyataan yang memiliki nilai integer sesuai batasan tadi.Penggunaan tujuan put menghasilkan sebuah karakter yang merupakan output dari urutan output. Karakter ini berhubungan dengan nilai numerik (nilai ASCII) dari argumen yang digunakan
Contoh :
?- put(97),nl.
a
yes
?- put(122),nl.
z
yes
kedua contoh di atas merupakan output dari nilai 97 dan 122. Seperti kita ketahui dalam ASCII nilai 97 dan 122 merupakan nilai untuk huruf a dan z.



Baca Selengkapnya..

PROLOG (PROgramming in LOGic)

Definisi PROLOG
PROLOG adalah kependekan dari PROgramming in LOGic, yang berarti pemrograman logika. Pemrograman Prolog menggunakan bahasa deklaratif, dimana pemrogram memberi fakta dan aturan untuk selanjutnya diselesaikan oleh Prolog secara deduktif sehingga menghasilkan suatu kesimpulan. Hal ini berbeda dengan bahasa prosedural seperti Pascal, Fortran, C, atau yang sejenis, dimana pemrogram memberi perintah atau penugasan untuk memecahkan persoalan langkah demi langkah, sehingga sering disebut sebagai programming with assignment. Disamping itu, berbeda dengan pemrograman fungsional, pemrograman logika ini menggunakan relasi, bukan fungsi sehingga sangat sesuai untuk implementasi sistem pakar. Prolog juga salah satu contoh interpreter, meskipun ada juga dalam  bentuk compilernya.

Sejarah PROLOG
  • Dikembangkan oleh  Alain Colmenraurer dan P.Roussel di Universitas Marseilles Perancis, tahun1972.
  • Prolog populer di Eropa untuk aplikasi artificial intelligence, sedangkan di Amerika peneliti mengembangkan aplikasi yang sama, yaitu LISP.
Tipe Data PROLOG


Program Sederhana PROLOG
Kasus-neh
Dalam sebuah hasil ujian 3KA33 Matematika Lanjut, beberapa mahasiswa mendapatkan nilai sebagai berikut: 

Dodoy(B)
Pike(A)
Abi(B)
Susi(C)
Bima(C)

Seorang mahasiswa bernama Cici selalu diprediksi prestasinya menyamai mahasiswa yang bernama Pike. Berikut ini fakta-fakta didalam bahasa Prolog.

Solusi:
domains
   nama = string 
   nilai = symbol 
predicates 
   nilai_3KA33(nama,nilai)
clauses
   nilai_3KA33("Dodoy",b).
   nilai_3KA33("Pike",a).
   nilai_3KA33("Abi",b).
   nilai_3KA33("Susi:,c).
   nilai_3KA33("Bima",c).
   nilai_3KA33("Cici",Asoy) if  nilai_3KA33("Pike",Asoy).

Silahkan Download Software SWI-PROLOG Disini

*NB : Buat teman-teman kelas gw yang kebetulan nyasar kesini dimohon untuk tersenyum...

Baca Selengkapnya..