Pada
tutorial kali ini akan dibahas mengenai
kode Ascii dimana kode tersebut di gunakan dalam pembuatan program kali ini.
Ascii sendiri adalah kepanjangan dari American Standard Code For Information
Interchange yang merupakan suatu standar internasional dalam kode huruf dan
symbol. Ascii selalu digunakan oleh computer dan alat komunikasi lain untuk
menunjukkan teks, sedangkan fungsi kode ascii ialah digunakan untuk mewakili
karakter-karakter angka maupun huruf.
Untuk mulai mengetikkan kode
programnya, terlebih dahulu kita membuka aplikasi strawberry prolognya :
Lalu pilih menu di atas : File- New- Strawberry
Project - Ok
LISTING
PROGRAM & LOGIKA PROGRAM
?-
%var
yang digunakan
G_XU
:=0, G_YU :=0,
%window
pertama
window(G_key,_,win_ascii(_),"karakter",100,50,500,500).
win_ascii(key_down(32,_)):-
message("ASCII","ini tombol spasi",i).
win_ascii(key_down(65,_)):-
message("ASCII","ini tombol a",i).
win_ascii(key_down(68,_)):-
message("ASCII","ini tombol d",i).
win_ascii(key_down(83,_)):-
message("ASCII","ini tombol s",i).
win_ascii(key_down(87,_)):-
message("ASCII","ini tombol w",i).
win_ascii(key_down(13,_)):-
message("ASCII","ini tombol enter",i).
%kanan
win_ascii(key_down(39,_)):-
pen(16,rgb(255,255,255)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU),
(G_XU=420
-> G_XU :=G_XU
else
G_XU := G_XU+60),
pen(16,rgb(191,0,255)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU).
%kiri
win_ascii(key_down(37,_)):-
pen(16,rgb(255,255,255)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU),
(G_XU=0
-> G_XU :=G_XU
else
G_XU := G_XU-60),
pen(16,rgb(255,215,0)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU).
%atas
win_ascii(key_down(38,_)):-
pen(16,rgb(255,255,255)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU),
(G_YU=0
-> G_YU :=G_YU
else
G_YU := G_YU-60),
pen(16,rgb(255,0,127)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU).
%bawah
win_ascii(key_down(40,_)):-
pen(16,rgb(255,255,255)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU),
(G_YU=360
-> G_YU :=G_YU
else
G_YU := G_YU+60),
pen(16,rgb(0,255,0)),
rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU).
A.
?-
Perintah yang digunakan
untuk setiap awal dari program untuk menjadi intrepeteur untuk merespon bagian
koding selanjutnya. Tanpa symbol ini, PASTI program yang sobat buat akan error
ketika di RUN.
B. G_XU :=0, G_YU :=0,
Merupakan Variabel yang digunakan untuk menggerakan arah kanan,
kiri, atas, bawah dengan pemberian nilai awal = 0.
C. window(G_key,_,win_ascii(_),"karakter",100,50,500,500).
window disini digunakan
untuk pembuatan kotak tampilan dan ”karakter” adalah
untuk pembuatan nama pada
kotak tampilan dan 100,50,500,500 adalah untuk penentuan ukuran kotak tampilan.
D. win_ascii(key_down(32,_)):-
Deklarasi fungsi win_ascii untuk menerima inputan dari keyboard, dengan
kode ascii 32 yang berarti spasi.
Kode : 65
untuk huruf a
Kode : 68
untuk huruf d
Kode : 83
untuk huruf s
Kode : 87
untuk huruf w
Kode : 13
untuk huruf enter
E. message("ASCII","ini
tombol spasi",i).
Merupakan kotak dialog atau pesan, ketika menekan tombol spasi
maka akan keluar pesan dengan pesan “ ini tombol spasi” . (begitu juga kode
yang lainnya)
F. %kanan
win_ascii(key_down(39,_)):-
Memanggil fungsi win_ascii dengan kode 39 yaitu kode untuk arah
kanan
G. pen(16,rgb(255,255,255)),
Merupakan perintah untuk membuat bentuk warna putih dengan
ketebalan garis 16.
H. rect(40+G_XU,40+G_YU,70+G_XU,70+G_YU),
Potongan program di atas
berguna untuk mendeklarasikan variable G_XU sebagai sumbu X dan G_YU sebagai
sumbu Y. dengan letak windows yang akan tampil saat running program yang telah
ditentukan.
I. (G_YU
= 360 -> G_YU := G_YU
Berfungsi
sebagai percabangan. Pertama akan
ditanya jika G_YU = 360 yang
merupkan batas bawah akhir dari pergerakkan kotak.
J.
else
G_YU := G_YU+60),
Jika
kondisi tersebut salah, maka kotak
tersebut masih dapat di
pindahkan ke bawah sebesar 60.
K. (G_YU=0 -> G_YU :=G_YU
else G_YU := G_YU-60),
Sama
halnya dengan kode ke kanan, bedanya kode ASCII yang digunakan ialah 38 yang
bernilai masukan keyboard arah atas. Arah atas ini sama seperti logika araah bawah , bedanya hanya pada
batas sumbu Y. pada arah atas ini batas dari sumbu Y paling atas adalah 0. Jika
belom sampai 0 maka sumbu y akan bertambah sebesar 60.
OUTPUT