Dasar teori
Predikat I/O adalah predikat standar untuk membaca (mengambil) data dan mengeluarkan (menuliskan) data. Predikat I/O disebut juga efek samping (side effect) karena akibat dari padanya tidak dapat dibatalkan dengan lacak balik.
- Predikat Output
Tiga predikat standar untuk menulis (output), yaitu :
- write, yaitu predikat yang bercirikan dengan tanda asterik (*) pada tanda jumlah argumen dalam penyebutannya. Predikat ini digunakan untuk menuliskan konstanta atau isi variabel ke piranti output yang dikenali pada saat itu.
- writef, yaitu predikat yang mempunyai fungsi hampir sama dengan predikat write, hanya hasilnya mempunyai format seperti yang diinginkan.
- writedevice, yaitu predikat yang digunakan untuk mengubah atau mendapatkan informasi tentang piranti output yang dikenali oleh program pada saat itu. Bila variabel piranti yang menyertai predikat writedevice adalah variabel bebas, itu berarti minta informasi, sedangkan bila variabel yang menyertai adalah variabel terikat, berarti mengubah piranti output.
- Predikat Input
Lima buah predikat input, yaitu :
- readln, yaitu predikat yang digunakan untuk membaca sederetan karakter dari piranti input sampai ditemukan tanda carriage return (ASCII 13). Karakter yang dibaca ditampilkan di layar monitor.
- readchar, yaitu predikat yang digunakan untuk membaca karakter tunggal dari piranti input (tanpa perlu enter). Karakter ytang dibaca tidak ditampilkan di layar monitor.
- readint, yaitu predikat yang digunakan untuk membaca bilangan bulat sampai tombol enter ditekan. Readint akan fail apabila bilangan bulat yang dibaca tidak sesuai
dengan yang sudah didefinisikan (-32,768 hingga 32,767).
- readreal, yaitu predikat yang digunakan untuk membaca bilangan real sampai tombol enter ditekan.
- readdevice, yaitu predikat yang digunakan untuk mengubah atau meminta informasi tentang piranti input yang saat ini dikenal.
- Jendela(Window)
Untuk membuat sebuah jendel, digunakan predikat jadi:
Makewindow(NoJdl, Atrscr, AtrBingkai, StrKepala, Baris, Kolom, Tinggi, Lebar)
Dimana:
NoJdl : nomor jendela yang dibuat.
Atrscr : warna tulisan dan latar belakang.
AtrBingkai : warna bingkai.
StrKepala : judul jendela anda (diletkkan diatas tengah).
Baris, Kolom : titik sudut kiri atas jendela.
Tinggi, Lebar : ukuran jendela (maksimum adalah sebesar layar).
Project Input dan Output
| PREDICATES tes_jendela GOAL tes_jendela. CLAUSES tes_jendela :- makewindow(1,1,5, "SATU",0,0,10,20), write("Jendela 1\n"), write("Nim"), write("Nama"), write("Bingkai magenta"), makewindow(2,62,129,"DUA",0,22,10,40), write("Jendela 2\n"), write("Tulisan kuning, latar belakang biru muda, "), write("Bingkai biru berkedip"), makewindow(3,10,116,"TIGA",8,0,10,30), write("Jendela 3\n"), write("Tulisan hijau terang, latar belakang gelap, "), write("Bingkai hijau reverse"), readchar( _ ), shiftwindow(1), write("\n pindah ke jendela 1"), readchar( _ ), shiftwindow(2), removewindow, shiftwindow(3), write("\n sekarang di jendela 3 lagi"), readchar( _ ), clearwindow, makewindow(4,9,13,"EMPAT",0,40,20,40), makewindow(5,13,14,"LIMA",10,45,9,30), write("jendela di dalam jendela"). |
Penjelasan project:
- makewindow, untuk membuat sebuah jendela.
- write, predikat ini di gunakan untuk menuliskan konstanta atau isi variabel ke piranti output yang di kenali pada sat itu.
- Readchar, di gunakan untuk bembaca karakter tunggal dari piranti input(tanpa perlu enter).bentuk umum : readchar (VarChar).
- Clearwindow, buat mengosongkan jendela atau bingkai.
- Kita langsung ke outputnya saja.
Output:
- ketika di RUN output yang akan keluar seperti di bawah ini.
- Dia menjalankan project ini.makewindow(1,1,5, "SATU",0,0,10,20),write("Jendela 1\n"),
write("Nim"),
write("Nama"),
write("Bingkai magenta"),
makewindow(2,62,129,"DUA",0,22,10,40),
write("Jendela 2\n"),
write("Tulisan kuning, latar belakang biru muda, "),
write("Bingkai biru berkedip"),
makewindow(3,10,116,"TIGA",8,0,10,30),
write("Jendela 3\n"),
write("Tulisan hijau terang, latar belakang gelap, "),
write("Bingkai hijau reverse"),
- Lalu ketika kita tekan sembarang,output yang akan keluar seperti di bawah ini.
- Dia menjalankan project ini.
-
- readchar( _ ),shiftwindow(1),
write("\n pindah ke jendela 1"),
readchar( _ ),
shiftwindow(2),
removewindow,
shiftwindow(3),
write("\n sekarang di jendela 3 lagi")
- Kemudian kita tekan sembarang tombol lagi
- maka outputnya akan jadi seperti ini
- dengan menjalankan project
- readchar( _ ),clearwindow,
makewindow(4,9,13,"EMPAT",0,40,20,40),
makewindow(5,13,14,"LIMA",10,45,9,30),
write("jendela di dalam jendela")
- Tekan sembarang lagi maka akan kembali ke jendela editor.



0 komentar:
Posting Komentar