Kamis, 24 Oktober 2013

Membuat Timer pada strawberry prolog

Pada kali ini saya akan membahas tentang laporan akhir praktikum PKB(Pengantar Kecerdasan Buatan). Pada kali ini saya akan membuat Timer pada strawberry prolog. Pertama-tama yang harus anda lakukan adalah anda membuka strawberry prolog pada laptop/pc anda. Setelah anda buka ketikkan program seperti gambar dibawah ini.


atau anda bisa mencopas listing program diatas. 

Listing Program

?-
G_N=5,
window(_,_,win_func(_),"Timer",100,100,400,400).
win_func(paint):-
G_waktu is set_timer(_,1,time_func).
time_func(end):-
(G_N=:=0->
kill_timer(_,G_waktu),
message("Message","You Win!",1),
close_window(_)
else
G_N<>=G_N-1),
Angka is printq(G_N),
text_out(185,150,Angka).

Kemudian saya akan menjelaskan logika dari syntax pada listingan program diatas.



Logika program diatas maksudnya adalah pada saat anda menjalankan program pada listingan yang telah anda buat, logika diatas maksudnya adalah menghitung mundur dari angka 5,4,3,2,1,0. Jika angka 5 diganti dengan 10 maka dimulai dari 10,9,8,dst.



Pada listingan diatas adalah untuk mengaktifkan window saat program dijalankan yaitu dengan ukuran window (100,100,400,400) yang maksudnya titik tersebut berada pada kordinat (x1,y1,x2,y2) dan listingan tersebut diberi nama judul “Timer”.

 Logika program diatas maksudnya digunakan untuk mencetak timer selama 1 detik maksudnya adalah saat program dijalankan dan akan muncul timer dimulai dari 5. Dan saat dari detik ke 5 menuju ke detik ke 4, program terebut menunggu selama 1 detik dan kemudian bergerak ke detik ke 4. Tetapi jika angka 1 pada listingan tersebut diganti 3 maka detik ke 5 menuju detik ke 4 akan menunggu selama 3 detik sekali.


Program diatas maksudnya adalah saat program dijalankan, maka timer akan muncul hingga detik ke 0 karena G_N tidak sama dengan 0 sehingga saat muncul detik ke 0 maka akan muncul message “You Win! Dan kemudian keluar dari timer.


Program diatas maksudnya adalah melakukan perulangan logika setiap 1 detik akan berkurang. Dan pada Angka is printq(G_N) maksudnya adalah mendeklarasikan angka menjadi syntax G_N kemudian pada text_out(185,150,Angka) digunakan untuk meletakkan timer pada koordinat x=185 dan y=150 yaitu terletak di tengah tengah window.

 Output Program




4 komentar:

  1. menarik sekali ka pembahasannya.. saya jadi bisa belajar nih.. makasih ya..

    BalasHapus
  2. cup... aku ga bisa masa pake timer :3

    BalasHapus
    Balasan
    1. memang kalau timer-nya di masukkan ke program rada susah, terkadang looping, harus benar menempatinya .

      memang buat game apa ?

      Hapus