delphi adalah pascal tapi pascal bukan delphi

Upload: kring-kring-adaa-fery

Post on 06-Jul-2015

486 views

Category:

Documents


0 download

TRANSCRIPT

DELPHI ADALAH PASCAL TAPI PASCAL BUKAN DELPHI Delphi adalah sebuah bahasa pemrograman yang bersipat Objek (Object Oriented Programming) artinya adalah sebuah program yang mempunyai objek-objek tertentu dalam pemrograman nya. Selain itu Delphi adalah sebuah program yang bersifat visual artinya mempunyai tampilan grafik-grafik yang mudah dimengerti oleh pemula sekalipun (Graphical user Interface). Dengan Delphi Anda bisa membuat program-program dengan tampilan yang menawan, Delphi hanya bisa bekerja di bawah System Microsoft Windows sedangkan untuk system yang lain seperti Linux atau Unix Delphi mempunyai saudara kembarnya yang bisa bekerja pada system tersebut yaitu KYLIX. Syntax-syntax Delphi di adopsi dari bahasa Pascal, untuk itu di dalam tutorial Dasardasar Delphi ini saya akan mengajak Anda ke masa lalu dimana pemrograman komputer saat itu masih menggunakan system 16 BIT yaitu Bahasa PASCAL sebelum Anda dibawa untuk mempelajari Pemrograman Delphi. Bila Anda sudah bisa bahasa PASCAL Anda dapat melewati pengantar mengenai bahasa Pascal ini. Mengapa saya membawa Anda terlebih dahulu ke Bahasa Pascal tidak langsung ke Delphi ?, Dengan mengenal dasar-dasar bahasa pascal, Anda akan mudah untuk mempelajari pemrograman Delphi sebab semua syntax yang ada dalam pascal sama dengan syntax bahasa delphi, tetapi syntax dalam delphi tidak bisa diadopsi ke pascal karena itulah dalam pengantar ini saya beri judul Delphi adalah pascal tapi pascal bukan delphi. II. Pengantar Bahasa Pascal

Instalasi PASCAL Oke kita langsung saja pada materi pertama kita yaitu pengenalan bahasa pascal agar Anda mudah dalam mengikuti pemrograman bahasa Delphi berikutnya. Bila Anda kesulitan mencari program Bahasa Pascal versi 5, Anda dapat mendownloadnya disini. ( Download Pascal). Tapi saya memperingati kepada Anda bahwa program Pascal ini tidak boleh disebar-luaskan lagi kepada Umum sebab saya tidak punya lisensi untuk menyebarluaskan program ini. Dan juga Anda tidak boleh mengkomersialkan program ini, sebab program Pascal yang saya sediakan disini hanya untuk mempelajari program tersebut. Setelah Anda Download exstract file pascal.zip dengan menggunakan winrar (Program Winrar Dapat di Download dari pilar kanan situs ini) atau winzip. Setelah itu klik dua kali file turbo.exe pada folder tersebut, maka program turbo pascal 5.5 sudah bisa Anda jalankan, bila ingin program Turbo Pascal yang lebih lengkap ikuti langkah-langkah berikut : 1. Bila Komputer Anda belum terinstall winrar atau winzip installah program tersebut, program winrar dapat Anda download melalui link yang ada di pilar kanan situs ini.

2. Pindahkan file pascal.zip ke Drive C: jangan didalam folder lagi agar mudah untuk memanggilnya melalui Command Prompt. 3. Bila Winrar sudah terinstall, klik kanan file pascal.zip lalu pilih extract to pascal. 4. Jalankan Command Prompt dari windows Anda, klik start run lalu ketik command klik ok maka command Prompt akan ditampilkan. Setelah itu ketik CD\ dan ketik C: maka drive yang aktif saat ini di command prompt adalah drive C. 5. Setelah itu ketik CD PASCAL lalu tekan enter, maka sekarang Anda berada di drive C: pada folder pascal yang telah Anda extract tersebut. Kemudian Ketik Install lalu tekan enter. maka proses instalasi TURBO PASCAL 5.5 akan berlangsung. Ikuti saja petunjuk instalasi pascal yang ada di proses instalasi. Folder default instalasi pascal adalah TP. 6. setelah instalasi pascal selesai keluar lah dahulu dari program pascal, kembali ke command prompt. Pada command prompt ketik lagi CD\pascal maka Anda akan kembali lagi ke folder pascal, setelah berada di folder pascal extract beberapa file yang berekstensi ARC ke folder TP, Sebelumnya ketik perintah DIR *.ARC maka semua file yang berekstensi ARC akan ditampilkan, catat nama file-file tersebut. Ada beberapa file ARC yang ada di folder pascal ini yaitu : BGI.ARC, DEMOS.ARC, DOC.ARC, HELP.ARC, OOPDEMOS.ARC, TCALC.ARC, TOUR.ARC, TURBO3.ARC, dan UTILS.ARC. File tersebut hanya bisa di extract oleh file UNPACK.COM yang berada di folder pascal. cara mengekstract nya sebagai berikut : Buat folder pada direktori TP sesuai dengan nama-nama file arc yang akan diextract contoh : Anda akan mengekstract file DEMOS.ARC, maka buatlah direktori di folder TP dengan nama DEMOS. Masuk ke folder TP -- ketik CD\TP lalu ketik MD DEMOS maka folder dengan nama DEMOS akan terbentuk di folder TP. Setelah terbentuk folder DEMOS sekarang Anda beralih lagi ke folder PASCAL dengan mengetik CD\PASCAL, di folder PASCAL ketik perintah berikut UNPACK DEMOS C:\TP\DEMOS lalu tekan Enter. Maka file DEMOS.ARC akan di extract ke folder DEMOS yang berada di dalam folder TP. Lakukan hal yang sama pada file ARC yang lainnya.

Tampilan PASCAL versi 5.5 Memulai PASCAL

Pada bahasa pascal Anda akan bermain dengan KEYBOARD bukan MOUSE, jadi untuk sementara lupakan fasilitas GUI yang dimanjakan oleh WINDOWS. sebab kita kembali ke tahun 80-an dimana PASCAL menjadi suatu bahasa Pemrograman pavorite dikalangan SCIENTIEST saat itu. Tombol keyboard yang paling pokok untuk mengakses program PASCAL adalah tombol : alt, esc, ctrl, F1 -- F12, ENTER, serta tombol anak panah. jadi bila salah satu tombol tersebut ada yang tidak berfungsi sebaiknya lupakan saja belajar pascal ini sampai Anda mengganti keyboard Anda dengan yang baru. Untuk memulai pascal dari windows Anda dapat mengklik dua kali file TURBO.EXE, sedangkan bila melalui COMMAND PROMPT Anda dapat mengetikan perintah TURBO lalu tekan ENTER maka program PASCAL akan diload seperti gambar diatas. Tekan tombol ESC maka Program utama TURBO PASCAL akan di tampilkan, dari sini KEYBOARD menjadi senjata Anda untuk mengakses menu-menu yang ada di program utama PASCAL. Untuk lebih jelasnya mengenai penggunaan Keyboard pada pascal Anda dapat menekan tombol F1 yang akan memunculkan fasilitas HELP pada Pascal. Untuk mengakses menu dari program pascal Anda gunakan tombol ALT di ikuti dengan Huruf pertama yang berwarna merah, contoh Anda akan mengakses menu File maka Anda dapat mengaksesnya dengan menekan tombol ALT dan huruf F. sekarang tekanlah tombol ALT+E, maka Anda berada pada mode editor, dan PASCAL siap untuk menerima perintah-perintah Program Anda. Sebagai perkenalan coba Anda ketikan program dibawah ini di editor PASCAL.{ Program : Input dari keyboard dan Menghitung operasi matematika } { Create by : Komarudin_surya@suryatekno } uses Crt; var x,y,z : lagi : namak :

longint; char; string[20];

begin lagi := 'y'; while (lagi = 'y') or (lagi = 'Y') do begin clrscr; write('Siapa Nama Anda..?'); ReadLn(namak); writeLn; write('Hallo ',namak,', Coba kamu'); WriteLn(' masukan nilai x,y dan z '); writeLn('pada operasi matematika ini.'); writeLn; writeLn('Operasi matematika X^2 + y^2 + z =..... '); write('masukan nilai x..= '); ReadLn(x); write('masukan nilai y..= '); ReadLn(y); write('masukan nilai z..= '); ReadLn(z); writeLn; writeLn('nilai operasi x^2 + y^2 + z adalah : ',x*x+y*y+z); writeLn; write('Mau hitung lagi apa tidak (y/t), ',namak,' ? '); readLn(lagi);

end; end.

Menu Editor Pascal Setelah Anda ketik kode-kode program tersebut simpanlah file tersebut dengan nama testprog.pas, kemudian tekan tombol CTRL+F9 untuk melihat hasil program yang Anda ketik tersebut. Siapa Nama Anda...? _

Masukanlah Sembarang Nama, misalkan nama yang anda masukan adalah BEJO, maka selanjutnya akan ditampilkan kalimat seperti dibawah ini : Siapa Nama Anda...? BEJO Hallo BEJO, Coba kamu masukan nila x,y, dan z pada operasi matematika dibawah ini. Operasi matematika x^2 + y^2 + z adalah = ...... masukan nilai x..= _

Sekarang Program meminta anda untuk memasukan nilai operasi untuk x kemudian y dan z , setelah itu program akan menampilkan hasil operasi matematika itu dan menanyakan lagi pada anda, apakah akan menghitung lagi atau tidak, bila anda memasukan huruf t maka program akan dihentikan sedangkan bila anda memasukan huruf y program akan diulang lagi. Siapa Nama Anda...? BEJO Hallo BEJO, Coba kamu masukan nila x,y, dan z pada operasi matematika dibawah ini. Operasi matematika x^2 + y^2 + z adalah = ...... masukan nilai x..= 5 masukan nilai y..= 5 masukan nilai z..= 5 nilai operasi x^2 + y^2 + z adalah : 55 Mau hitung lagi apa tidak (y/t), BEJO ? _ Dari contoh program pengenalan diatas, Anda dapat melihat dalam program sederhana tersebut terdapat beberapa atribut, variabel, serta beberapa statemen. sekarang mari kita uraikan program sederhana tersebut berdasarkan kelompok-kelompok. { Program : Input dari keyboard dan Menghitung operasi matematika } { Create by : Komarudin_surya@suryatekno } Pada bagian ini merupakan suatu KOMENTAR yang tidak diproses oleh program, bagian komentar ini diperlukan untuk keperluan Dokumentasi agar program dapat diketahui maksud dan tujuannya serta bila kita suatu waktu akan menambahkan atau merubah program maka kita dapat dengan cepat mengetahui lokasi dari bagian program yang perlu kita tambahkan atau dirubah. Untuk memberikan komentar dalam pascal diberikan tanda { dan } atau (* dan *), jadi apapun yang dituliskan didalam kurung tersebut tidak akan diproses oleh program. uses Crt; perintah ini merupakan suatu UNIT, Unit mempunyai beberapa prosedur dan jenisnya. UNIT dalam Pascal harus disertakan untuk mengaktifkan prosedur-prosedur yang akan diprogram. Sedangkan Prosedur didalam Pascal dapat berbentuk prosedur yang didefinisikan atau dibuat sendiri oleh pemakai atau prosedur yang telah disediakan oleh Pascal. Prosedur yang didefinisikan sendiri oleh pemakai harus dideklarasikan terlebih dahulu.

Unit-unit dalam PASCAL 5.5 ada tujuh buah unit standar, ketujuh unit tersebut disimpan dalam file yang bernama TURBO.TPL. Unit-unit tersebut yaitu : 1. UNIT System -- Unit ini merupakan sebuah runtime Turbo Pascal yang mendukung semua proses yang dibutuhkan pada waktu runtime (eksekusi program). Anda akan menemui pesan error seperti ini "RUNTIME ERROR" bila Anda salah dalam memanipulasi system yang diprogramkan. Unit ini Otomatis ditambahkan oleh Pascal walau Anda tidak mencantumkan nya sewaktu mengCompile. 2. UNIT CRT -- Unit ini digunakan untuk keperluan program dalam memanipulasi layar, dalam hal ini bisa berupa manipulasi TEKS, KURSOR, KODE EXTENDED KEYBOARD dll. 3. UNIT Printer -- Sesuai dengan namanya maka unit ini tentu saja digunakan dalam program yang berhubungan dengan printer, misalkan kita akan mencetak suatu program ke printer maka unit ini harus digunakan untuk mengaktifkan printer. Printer yang bisa didukung hanya printer jenis LPT dan COM, sedangkan printer jenis USB tidak bisa diakses karena pada waktu itu belum ada printer yang berjenis USB, kecuali printer tersebut menyediakan DRIVER untuk DOS kemungkinan printer USB bisa digunakan oleh PASCAL 5.5 ini. Contoh program yang menggunakan unit printer : (* Program Pencetakan Printer, Catatan dlm Pascal 5.0 keatas harus ditambahkan kata Lst *) Uses Printer; Begin WriteLn(Lst,'Saya sedang mencoba Printer.'); WriteLn(Lst,'Create By : Suryatekno2008'); WriteLn(Lst,'============================'); End. 4. UNIT DOS -- Unit ini digunakan bila anda akan mengaktifkan prosedur-prosedur yang ada dalam DOS seperti DosVersion, GetTime, SetTime, DiskSize, DiskFree, Call, Dir, Path, Copy dan sebagainya. Contoh program yang menggunakan unit DOS : (* Program melihat versi DOS dan sisa Disk, Create By : Suryatekno *) Uses DOS,CRT; var ukuran : longint; Begin ukuran := DiskFree(0); ClrScr;

WriteLn('Versi DOS yang Anda gunakan adalah : MS-DOS ',DosVersion); WriteLn('Sisa Kapasitas Harddisk Anda : ',ukuran,' Bytes'); WriteLn; WriteLn('Tekan tombol apa saja untuk keluar'); ReadLn; End. 5. UNIT Graph -- Unit ini digunakan untuk menampilkan grafik seperti Tabel, Chart Statistik dan sebagainya. Biasanya Unit ini digunakan bila kita ingin menampilkan suatu grafik seperti pada MS-EXCEL. Bisa juga digunakan untuk membuat animasi, Game dan sebagainya. { Program menampilkan Grafik Bar, Create By : Suryatekno 2008 } Uses Graph; var Driver,Model : integer; I : integer; Begin Driver := VGA; Model := VGAHi; InitGraph(Driver, Model, ' '); Line(20,25,20,155); Line(20,155,200,155); Randomize; for I := 0 to 4 do Bar3D(30+I*35, 154-Random(100),55+I*35,154,15,TopOn); WriteLn; WriteLn('Tekan Sembarang Tombol untuk Keluar'); ReadLn; End. 6. UNIT Turbo3 -- Unit ini digunakan pada pascal 3.0 sedangkan untuk pascal versi 4.0 keatas unit ini sudah tidak digunakan lagi atau tidak difungsikan. Kegunaannya adalah sewaktu anda meng-upgrade dari pascal versi 3.0 ke 4.0 atau 5.0 , Untuk latihan kita sekarang unit ini tidak kita gunakan saja. 7. UNIT Graph3 -- Unit ini digunakan untuk meng-konversi grafik yang dibuat oleh pascal versi 3.0 agar dapat digunakan oleh pascal 4.0 keatas, sama seperti unit Pascal3 unit ini pun tidak kita gunakan pada latihan kita ini sebab kita menggunakan PASCAL versi 5.5 yang lebih canggih dan lengkap. Untuk Lebih jelasnya mengenai unit-unit ini silahkan anda buka Folder DOC yang ada pada Direktory TP. Atau bila Anda orang yang kreatif dan tidak cepat puas silahkan

Anda mencari referensi-referensi dari situs atau media yang lainnya, Ini sangat saya anjurkan dan saya acungkan jempol bila Anda melakukan hal ini. Sekarang kita lanjutkan mengenai pembahasan program perkenalan yang telah anda buat pertama kali. var x,y,z : longint; lagi : char; namak : string[20]; Pada bagian ini disebut VARIABLE , Semua bahasa pemrograman memerlukan variabel untuk mengetahui type atau jenis data yang digunakan oleh si programer. Pada contoh program pengenalan tersebut kita memberitahukan kepada PASCAL bahwa type atau jenis variabel yang kita gunakan untuk variable x,y, dan z bertype longint, variable lagi bertype char dan variable namak bertype String dengan panjang karakter sebanyak 20 string. 1. DEKLARASI VARIABEL (VARIABLE DECLARATION)

Deklarasi variabel adalah suatu deklarasi yang nilai nya sudah pasti, dengan kata lain Deklarasi jenis ini tidak dapat dirubah lagi atau konstan. Pada contoh program diatas, deklarasi variabel untuk x, y dan z berjenis longint ( bilangan bulat dari -2147483648 sampai 2147483648 ) maka dalam program tersebut, hanya bisa dimasukan tipe data yang berjenis tersebut. Pada contoh diatas bila anda memasukan nilai selain tipe tersebut, misalkan anda memasukan angka A pada pada pertanyaan masukan nilai x..= maka program akan error, Nah agar tidak terdapat pesan error pada program tersebut, maka program tersebut harus ditambahkan suatu baris perintah yang berjenis logika jadi bila user memasukan nilai-nilai x,y dan z selain dari jenis tersebut maka akan dikeluarkan suatu peringatan yang memberitahukan user agar memasukan nilai untuk x, y dan z hanya bisa dimasukan oleh type variabel tersebut. Silahkan Anda tambahkan baris perintah pada program testprog.pas diatas, agar user tidak salah dalam memasukan type data yang telah ditentukan !. 2. DEKLARASI KONSTANTA (CONSTANT DECLARATION)

Sama seperti deklarasi variabel, deklarasi konstanta juga bersifat tetap (konstan), bedanya adalah bila dalam deklarasi variabel kita hanya mendeklarasikan jenis dari data yang harus dikerjakan, sedangkan pada deklarasi konstanta kita langsung menyebutkan nilainya. Deklarasi konstanta tidak menggunakan tanda titik dua ( : ) seperti pada deklarasi variabel tetapi menggunakan tanda sama dengan ( = ). Contoh Program yang menggunakan deklarasi konstanta{ Progam : Penggunaan deklarasi konstanta

Design By : suryatekno2008 } uses crt; const nama = 'Amir'; nip = 'A3110'; gaji = 1000000; lembur = 50000; begin clrscr; writeLn('Nama Pegawai : ',nama); writeLn('N I P : ',nip); writeLn('Gaji Pokok : ',gaji); writeLn('Uang Lembur : ',lembur); writeLn('--------------------- +'); writeLn('Total Gaji : ',gaji+lembur); writeLn; writeLn('Tekan tombol ENTER untuk keluar'); readLn; end.

3.

DEKLARASI TIPE (TYPE DECLARATION)

Deklarasi tipe biasanya digunakan bila kita bekerja dengan ARRAY atau larik. Deklarasi Tipe mempunyai banyak sekali jenis dan type yang ditanganinya, saya tidak bisa menjelaskannya satu persatu kepada Anda dikarenakan terbatasnya space atau ruang yang disediakan pada situs ini, disamping itu pokok bahasan tutorial ini adalah PEMROGRAMAN DELPHI, saya kuatir nantinya pokok bahasan tersebut tidak bisa dimuat karena keterbatasan ini. Untuk itu saya sekali lagi menugaskan kepada Anda untuk mencari dari situs atau media lain mengenai DEKLARASI TYPE ini. Contoh Program yang menggunakan deklarasi tipe{ Program : Contoh penggunaan deklarasi tipe Design By : Suryatekno2008 } uses crt; type J = array[1..8] of string[20]; const Jadwal : J=('Mandi','Sarapan','Meeting', 'Menemui Pak Badrun','Pulang', 'Mandi','Makan Malam','Istirahat'); var I : word; begin clrscr; writeLn('Jadwal Hari ini'); writeLn('==============='); writeLn;

for I:=1 to 8 do writeLn(' ',I,'. ',Jadwal[I]); writeLn('Tekan enter untuk Keluar.....'); readLn; end.

4.

DEKLARASI LABEL (LABEL DECLARATION)

Deklarasi label adalah suatu deklarasi yang digunakan untuk memberi tanda (MARK) pada program agar program dapat berpindah atau meloncat pada tanda (MARK) yang ditentukan. Deklarasi ini mirip dengan bahasa PEMROGRAMAN BASIC yang menggunakan NOMOR BARIS untuk berpindah dari baris ke baris. Penulisan Deklarasi label ini harus menggunakan perintah LABEL yang dipisahkan dengan tanda koma ( , ). Contoh program yang menggunakan deklarasi Label.{ Program : Memilih dengan deklarasi Label Design By : Suryatekno2008 } uses crt; label 1,2,3,4,keluar; {Deklarasi label yang ditentukan} var ketik,ulang : char; begin 1: { label ke - 1 sebagai pokok program } clrscr; writeLn('Menu Masakan Hari ini'); writeLn('---------------------'); writeLn; writeLn('a. Nasi Putih + Rendang'); writeLn('b. Nasi Putih + Telur Dadar'); writeLn('c. Nasi Putih + Tempe Goreng'); writeLn; writeLn('Masukan Huruf a , b atau c untuk Pesanan Anda.'); write('Pilihan Anda..? ');readLn(ketik); { Jika user memilih pilihan tersebut, maka program akan meng-eksekusi program sesuai dengan LABEL yang dituju } if ketik='a' then begin goto 2; end; if ketik='b' then begin goto 3; end; if ketik='c' then begin

goto 4; end { User tidak memilih atau salah dalam memasukan pilihan selain yang ditentukan maka program akan meng-eksekusi program yang lainnya, dalam program ini akan ditampil kan kalimat "Anda tidak pesan apa-apa." lalu meng-eksekusi LABEL keluar yang mengakhiri program } else begin clrscr; writeLn('Anda tidak pesan apa-apa.'); writeLn('Mungkin Anda tidak Lapar..); writeLn; writeLn('Tekan Enter untuk keluar..'); readLn; goto keluar; end; 2: { label ke - 2 bila user memilih pilihan a } clrscr; writeLn('Pesanan Anda Nasi Putih + Rendang, Terima Kasih.'); writeLn; write('Pilih Lagi..(y/t) ? ');ReadLn(ulang); if (ulang='y') or (ulang='Y') then begin goto 1; end else begin goto keluar; end; 3: { label ke - 3 bila user memilih pilihan b } clrscr; writeLn('Pesanan Anda Nasi Putih + Telur Dadar,Terima Kasih.'); writeLn; write('Pilih Lagi..(y/t) ? ');ReadLn(ulang); if (ulang='y') or (ulang='Y') then begin goto 1; end else begin goto keluar; end; 4: { label ke - 4 bila user memilih pilihan c } clrscr; writeLn('Pesanan Anda Nasi Putih + Tempe Goreng,Terima Kasih.'); writeLn; write('Pilih Lagi..(y/t) ? ');ReadLn(ulang); if (ulang='y') or (ulang='Y') then begin goto 1; end

else begin goto keluar; end; keluar: { label keluar yang mengakhiri program } end.

Penulisan label bebas sesuai dengan keinginan anda, bisa sebuah kata atau karakter, yang penting nama label tidak boleh sama dengan nama variabel, type, atau konstanta yang anda tetapkan. Bila itu terjadi maka kemungkinan akan terjadi konflik variabel dalam pengeksekuasian program. Contoh diatas akan terus dilakukan selama anda memilih pilihan yang di tetapkan. Ada cara yang lebih praktis ketimbang menggunakan LABEL yaitu dengan printah CASE - OF yang akan dibahas nanti. 4. DEKLARASI PROSEDUR (PROCEDURE DECLARATION)

Deklarasi prosedur adalah sebuah deklarasi yang dibuat dalam program agar bisa digunakan lagi dalam program, jadi deklarasi prosedur merupakan sebuah SUB PROGRAM yang bisa dipanggil sewaktu-waktu dalam program bila dibutuhkan. Dalam sebuah program yang terstruktur, Deklarasi Prosedur ini sangat dibutuhkan agar program menjadi lebih simpel. Untuk mengerti arti dari PROSEDUR ini saya berikan contoh kasus sebagai berikut : misalkan ada sebuah proses yang yang harus dikerjakan berulang kali untuk menampilkan kata "SURYATEKNO" , maka dalam program yang terstruktur kata tersebut disimpan dalam sebuah prosedur yang dapat dipanggil lagi dimanapun kata tersebut diperlukan. Contoh program yang menggunakan Deklarasi Prosedur.uses crt; {ini adalah prosedur dgn nama s yang akan menampilkan kata suryatekno} Procedure s; begin write('Suryatekno'); end; {akhir prosedur} {program utama} begin clrscr; s; { prosedur yang dipanggil } WriteLn(' adalah suatu organisasi yang menghimpun'); writeLn('orang-orang yang mempunyai minat sama.'); writeLn;

s;

{ prosedur yang dipanggil }

writeLn(' juga merupakan sebuah kelompok belajar.'); writeLn; writeLn('Tekan Enter untuk keluar...'); readLn; end. {akhir program utama}

Prosedur mempunyai banyak jenisnya, disini saya hanya akan menjelaskan suatu prosedur yang mudah-mudah saja agar anda sebagai pemula mengerti dalam menggunakan prosedur ini. Prosedur yang paling terkenal adalah Prosedur REKURSI (RECURSION PROCEDURE) . Prosedur ini adalah sebuah prosedur yang menggunakan sendiri prosedurnya, jadi prosedur ini adalah prosedur yang memakan prosedur . Contoh kasus proses rekursi yang rumit adalah sebagai berikut : Anda diminta untuk memindahkan sebuah piringan yang berbeda satu dengan yang lainnya secara satu persatu dari sebuah tumpukan ke tumpukan yang lainnya, dengan syarat piringan yang lebih kecil tidak boleh berada dibawah piringan yang lebih besar, dan pemindahan nya harus satu persatu tidak boleh sekalian. Lihat gambar.

Rekursi yang rumit, disebut juga sebagai MENARA HANOI Anda harus memindahkan piringan yang berjumlah 20 buah piringan yang berbeda dari menara A ke menara C, untuk keperluan tersebut Anda diberikan sebuah menara lagi yaitu menara B. Yang menjadi pertanyaan adalah : Berapa kali Anda memindahkan sebuah piringan yang sama, dan berapa langkah yang Anda tempuh serta berapa lama Anda memindahkannya ?. Sebagai bantuan lagi Anda diberikan contoh untuk 2 buah piringan sebagai berikut : Pertama Anda pindahkan piringan yang ke 2 ke menara B lalu pindahkan piringan ke 1 ke menara C setelah itu pindahkan piringan ke 2 yang berada di menara B ke menara C selesai ( Ingat piringan yang lebih kecil tidak boleh berada dibawah piringan yang besar..! ). Sekarang cobalah untuk 20 piringan yang ditugaskan kepada anda !. Pusing menghitung nya yah..? , kalau pusing berapa langkah yang Anda tempuh untuk tugas itu, dibawah ini saya berikan contoh program yang memakai prinsip REKURSI untuk menghitung langkah yang diperlukan. serta akan diperlihatkan piringan mana saja yang akan dipindahkan terlebih dahulu, Anda bisa saja memasukan 1000 piringan

misalnya, tetapi Anda harus sabar menunggunya, sebab bila Anda memasukan waktu yang diinginkan sebesar 1 detik saja untuk setiap piringan, berarti Anda harus sabar menunggu program untuk menghitung dan memperagakan kepada Anda selama 3 Hari . Untuk contoh ini cobalah Anda masukan Tugas memindahkan piringan diatas dengan bantuan program ini..hehehe malas ni yeee .Uses crt; { Awal Prosedur Rekursi } procedure MenaraHanoi(Jumlah : Integer; Sumber,Tujuan,Bantuan : Char; var Langkah,Jumlah_A, Jumlah_B,Jumlah_C,Waktu : Integer); Var Baris_Sumber,Kolom_Sumber, Baris_Tujuan,Kolom_Tujuan : Integer; Begin if Jumlah > 0 Then Begin MenaraHanoi(Jumlah-1,Sumber,Bantuan,Tujuan, Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu); Langkah := Langkah+1; if Sumber = 'A' Then Begin Kolom_Sumber := 30; Baris_Sumber := 24-Jumlah_A; Jumlah_A := Jumlah_A-1; End Else if Sumber = 'B' Then Begin Kolom_Sumber := 40; Baris_Sumber := 24-Jumlah_B; Jumlah_B := Jumlah_B-1; End Else Begin Kolom_Sumber := 50; Baris_Sumber := 24-Jumlah_C; Jumlah_C := Jumlah_C-1; End; if Tujuan = 'A' Then Begin Kolom_Tujuan := 30; Jumlah_A := Jumlah_A+1; Baris_Tujuan := 24-Jumlah_A; End Else if Tujuan = 'B' Then Begin Kolom_Tujuan := 40; Jumlah_B := Jumlah_B+1; Baris_Tujuan := 24-Jumlah_B; End Else

Begin Kolom_Tujuan := 50; Jumlah_C := Jumlah_C+1; Baris_Tujuan := 24-Jumlah_C; End; Delay(Waktu*1000); GotoXY(Kolom_Sumber,Baris_Sumber); Write(' '); GotoXY(Kolom_Tujuan,Baris_Tujuan); Write(Jumlah); GotoXY(18,24); Write(Langkah); MenaraHanoi(Jumlah-1,Bantuan,Tujuan,Sumber, Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu); End; End; {Akhir Rekursi} {Program Utama} Var Jumlah, Langkah Sumber,Bantuan,Tujuan I,Baris Jumlah_A,Jumlah_B,Jumlah_C Waktu

: : : : :

Integer; Char; Integer; Integer; Integer;

Begin ClrScr; Write('Berapa Piringan Yang akan dipindah ? '); ReadLn(Jumlah); Write('Waktu yang Anda inginkan (0-32) detik ? '); ReadLn(waktu); ClrScr; GotoXY(25,24); WriteLn(' Sumber Bantuan Tujuan'); For I:=Jumlah DownTo 1 Do Begin Baris := 23-(Jumlah-I); GotoXY(30,Baris); WriteLn(I); End; Langkah Sumber Bantuan Tujuan Jumlah_A Jumlah_B Jumlah_C := 0; :='A'; :='B'; :='C'; := Jumlah; := 0; := 0;

GotoXY(1,24); Write('Jumlah Langkah = '); MenaraHanoi(Jumlah,Sumber,Tujuan,Bantuan, Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu); ReadLn; End. {Akhir Program Utama}

5.

DEKLARASI FUNGSI (FUNCTION DECLARATE)

Deklarasi fungsi adalah deklarasi gabungan antara deklarasi Prosedur, type dan variabel. Kumpulan deklarasi ini disediakan oleh pascal untuk mempermudah dalam penyusunan program sehingga berbentuk sebuah fungsi. Pada sebuah fungsi komponen-komponen dari ketiga deklarasi tersebut dijadikan satu kesatuan yang dapat digunakan pada program yang majemuk. Adapun tata cara penulisan deklarasi fungsi adalah sebagai berikut :

Tata Cara Penulisan Deklarasi Fungsi Dari gambar diatas terlihat bahwa ketiga deklarasi yang telah diuraikan sebelumnya dijadikan satu kesatuan yang lebih simple dan praktis. Untuk lebih jelasnya cobalah Anda ketik di editor Pascal program dibawah ini, setelah itu Anda jalankan program tersebut dengan perintah RUN.{ Program contoh Deklarasi fungsi create by : Suryatekno@2008 } Function Hasil(A,B,C : longint) : longint; Begin Hasil := A*A+B*B+C; end; Var X,Y,Z : longint; Begin WriteLn('Hasil dari X^2 + Y^2 + Z adalah..?'); Write('Jika Nilai X = ');ReadLn(X); Write('Dan Nilai Y = ');ReadLn(Y); Write('Serta Nilai Z = ');ReadLn(Z); Write('Maka Hasil dari X^2 + Y^2 + Z'); WriteLn(' adalah : ',Hasil(X,Y,Z); {Hasil - adalah nama fungsi yang dipanggil} WriteLn; WriteLn('Tekan Enter untuk Keluar..'); ReadLn; end.

Dari contoh program diatas, mungkin sebagian dari Anda ada yang bertanya mengapa fungsi yang dinyatakan dengan variabel-variabel A,B dan C bisa berhubungan dengan Variabel X,Y dan Z ?. Begini..,Fungsi yang dijabarkan dengan variabel A,B,C hanya merupakan operasi yang harus dikerjakan oleh fungsi Hasil := A*A+B*B+C; , jadi Variabel A,B dan C tidak bernilai atau kosong. Sedangkan Variabel X,Y dan Z adalah Variabel Identifier (Pengenal) yang Ada nilainya dan nilai ini harus dilaksanakan oleh fungsi seperti yang dikehendaki. Untuk lebih jelas lagi Sekarang cobalah Anda rubah baris program WriteLn(' adalah :,Hasil(X,Y,Z); dengan mengganti variabelnya dengan A,B dan C kemudian Anda RUN lagi, maka COMPILER PASCAL akan mengeluarkan peringatan bahwa variabel A,B,dan C tidak diketahui identitasnya (Unknow Identifier),

sebab A,B dan C tidak bernilai. Bagian inilah yang harus Anda Pahami dan Perhatikan dengan serius tentang Tata Cara membuat Deklarasi Fungsi. Kalau diterjemahkan dalam konteks bahasa manusia, perintah Hasil(X,Y,Z) adalah : Kerjakan Nilai yang ada dalam kurung, yang nilainya dimasukan melalui input keyboard dengan operasi Hasil , Dimana operasi tersebut adalah A*A+B*B+C dengan A sebesar X, B sebesar Y, dan C sebesar Z.. Paham..!!, Kalau belum paham juga saya menyerah.. , tidak bisa menerangkan lagi kepada Anda secara detail mengenai fungsi ini, dan dapat membuat Anda mengerti. Sejauh ini Anda sudah disuguhkan dengan contoh-contoh program, contoh-contoh tersebut saya rancang sedemikian rupa agar Anda yang pemula dalam mempelajari Bahasa Pemrograman dapat mengikuti tutorial ini. Cobalah Anda buat program-program sejenis tapi kali ini atas pemikiran dan cara-cara ANda sendiri dan tentu saja materi-mteri nya disesuaikan dengan contoh-contoh program yang telah Anda pelajari. Baiklah sekarang mari kita lanjutkan pembahasan kita mengenai uraian Program pengenalan (TESTPROG.PAS). Selanjutnya dalam program tersebut ada baris-baris program berikut : While (pilih='y') or (pilih='Y') Do Begin .......... .......... .......... end; end. Pada bagian ini dinamakan perulangan (LOOPING). Looping sangat sering digunakan dalam sebuah program yang majemuk, arti looping itu sendiri adalah memulai atau mengulang lagi suatu proses program yang sama jika kondisi dan syarat-syarat nya terpenuhi. Ada beberapa struktur perulangan yang perlu Anda ketahui yaitu : 1. Perulangan dengan perintah For - To - Do 2. Perulangan dengan perintah While - Do 3. Perulangan dengan perintah Repeat - Until. Sekarang marilah kita bahas mengenai struktur perulangan ini satu persatu. 1. Perulangan For - To - Do

Struktur perulangan For - To - Do ada dua jenis yaitu : a. Perulangan For Positif.

Bila variabel perulangan dilakukan dengan cara penghitungan dari nilai yang kecil ke nilai yang besar, maka struktur perulangan tersebut dinamakan perulangan for positif dengan struktur sebagai berikut :

Struktur FOR TO DO Positif. Contoh penggunaan perulangan For-To-Do positif ini adalah bila kita menampilkan sebuah list dari urutan yang terkecil sampai yang terbesar. Contoh program dibawah ini akan menampilkan angka 1 sampai 10 secara berurutan.{ program menghitung urutan 1-10, by : suryatekno } uses crt; Var X : Integer; {variabel X menjadi acuan dg type Integer} Begin clrscr; For X := 1 To 10 Do Begin WriteLn(X); End; writeLn('tekan Enter untuk keluar'); readln; End.

b. Perulangan For Negatif. Bila variabel perulangan dilakukan dengan cara perhitungan dari nilai yang besar ke nilai yang kecil, maka struktur perulangan tersebut dinamakan perulangan for negatif. Struktur perulangan for negatif adalah sebagai berikut.

Struktur FOR TO DO Negatif. Contoh perulangan For negatif ini adalah bila kita ingin menampilkan suatu hitungan mundur dari yang besar ke yang kecil. Contoh program dibawah ini adalah kebalikan dari contoh for positif diatas, yaitu menampilkan angka 10 sampai 1 secara berurutan.{ program menghitung mundur by : suryatekno } uses crt; Var Y : Integer; {variabel Y menjadi acuan dg type Integer} Begin clrscr; For Y := 10 DownTo 1 Do Begin WriteLn(Y); End; writeLn('tekan Enter untuk keluar'); readln; End.

2.

Perulangan While - Do

Perulangan While-Do adalah suatu perulangan atau looping yang akan terus menerus dilakukan selama kondisi yang disyaratkan terpenuhi, Jadi selama persyaratan yang dicantumkan adalah TRUE (BENAR) maka loop ini akan terus berjalan tak ada hentinya. Untuk itu berhati-hatilah dalam memberikan prasyarat sebuah perulangan while-do, bisabisa program itu tidak akan bisa di hentikan. Seperti pada contoh program TESTPROG.PAS yang pertama kali Anda buat, Disitu parameter while-do di berikan nilai TRUE untuk huruf Y, jadi selama Anda menekan huruf Y, maka program itu akan terus dilakukan sampai Anda menekan tombol yang lainnya. Mari Kita lihat lagi listing Program TESTPROG.PAS yang sudah Anda buat pertama kali.{ Program : Input dari keyboard dan Menghitung operasi matematika }

{ Create by : Komarudin_surya@suryatekno } uses Crt; var x,y,z : lagi : namak : begin lagi := 'y'; {awal perulangan dengan nama Lagi } while (lagi = 'y') or (lagi = 'Y') do begin { --> index awal perulangan} clrscr; write('Siapa Nama Anda..?'); ReadLn(namak); writeLn; writeLn('Hallo ',namak,', Coba kamu masukan nilai x,y dan z '); writeLn('pada operasi matematika ini.'); writeLn; writeLn('Operasi matematika X^2 + y^2 + z =..... '); write('masukan nilai x..= '); ReadLn(x); write('masukan nilai y..= '); ReadLn(y); write('masukan nilai z..= '); ReadLn(z); writeLn; writeLn('nilai operasi x^2 + y^2 + z adalah : ',x*x+y*y+z); writeLn; write('Mau hitung lagi apa tidak (y/t), ',namak,' ? '); readLn(lagi); end; { --> index akhir perulangan} {akhir perulangan dengan nama Lagi } end.

longint; char; string[20];

Pada listing TESTPROG.PAS diatas, saya beri tambahan keterangan. Nah selama Anda memasukan variabel Lagi dengan huruf Y maka loop while menjadi true sehingga program akan balik lagi ke index awal (Begin pertama sesudah perintah while). begitu saja terus menerus sampai Anda memasukan variabel Lagi dengan karakter selain Y. Berikut ini adalah salah satu program yang menggunakan Perulangan While-Do yang salah, sebab tidak ada ujungnya dan tidak bisa dihentikan. Cara menghentikan nya dengan menutup prompt command bila Anda menjalankan Pascal dari mode command window, atau reset komputer Anda bila menggunakan DOS Prompt.{ Ini adalah contoh program yang menggunakan perulangan While-Do yang salah } Var X : integer; Begin X := 1; While X=1 Do Begin write(X,' .');

WriteLn('Salah Euy.., Muir Wae Yeuh..!'); End; End.

Contoh Program diatas sebagai peringatan kepada Anda agar berhati-hati dalam memberikan parameter untuk while-do. pada program diatas X diberikan nilai awal 1 ( X := 1 ), selanjutnya perulangan while-do ( While X=1 Do ) juga diberikan nilai 1, jadi X selalu TRUE sehingga perulangan akan dilakukan terus tanpa henti sampai Anda menutup atau mereset komputer Anda. Perhatikan baik-baik dalam menggunakan perulangan ini jangan sampai kesalahan yang kecil akan berakibat fatal bila tidak teliti. Kesalahan yang legendaris dalam pemrograman pascal pernah terjadi pada sekitar tahun 1973 dimana saat itu seorang programer membuat suatu aplikasi, yang akhirnya menjadi sebuah VIRUS yang dibuat tanpa sengaja (Virus itu mendelete semua program yang berektensi COM) tanpa bisa dihentikan oleh programernya sendiri sehingga programer tersebut dituntut untuk membayar kerugian perusahaan sebesar US$ 1.750.000,- . . 3. Perulangan Repeat - Until

Perulangan Repeat-Until hampir mirip dengan perulangan while-do, bedanya adalah kalau while-do perulangan nya dilakukan dari tanda begin pertama sampai end yang pertama setelah perintah while do , sedangkan perulangan repeat-until perulangan nya diakhiri dengan perintah until. Lihat struktur repeat until dibawah ini.R E P E A T --- Perintah perulangan | | S T A T E M E N --- Expresi Perulangan | | U N T I L PARAMETER --- Akhir perulangan Yang di ikuti oleh Parameter yang diulang

Jadi pada perulangan repeat-until ini, pertama kita taruh perintah repeat diatas statemenstatemen yang akan diulang kemudian ditutup dengan perintah until yang diikuti oleh parameter untuk perulangan. Untuk lebih jelas lihat contoh program dibawah ini yang menggunakan perulangan repeat-until.{ Program : Tabel hasil perkalian Creat by : Suryatekno@2008 } uses crt; Var X,Y,Z : integer;

Begin WriteLn(' TABEL PERKALIAN '); WriteLn('=============================='); WriteLn('| X | Y | Hasil |');

WriteLn('=============================='); X := 10; Repeat {awal perulangan X} Y := 10; Repeat {awal perulangan Y} Z = X*Y; WriteLn(X:5, Y:9, Z:10); Y := Y+1; Until Y > 13; {akhir perulangan Y} X := X+1; Until X > 13; {akhir perulangan X} WriteLn('============================='); WriteLn; WriteLn('Tekan Enter untuk Keluar'); ReadLn; End.

Pada contoh program diatas, perulangan repeat-until digunakan untuk membuat sebuah tabel perkalian antara X dan Y, dimana nilai awal untuk X dan Y adalah 10, dan akan bertambah 1 setiap kali terjadi perulangan ( X := X+1 dan Y := Y+1 ) sampai nilai akhir yang ditentukan yaitu 13. Perulangan akan terjadi sebelum melebihi nilai akhir yang ditentukan ( 13 ). Jadi Perintah UNTIL bila kita terjemahkan adalah : Sebelum melebihi . Lihat hasil jalannya program seperti dibawah ini.

Hasil Jalannya Program perkalian. JIKA INI MAKA ITU, BILA INI MAKA BILA, MAKA BILA INI JIKA MAKA. Hmm..,sepertinya sub judul yang aneh..!. Anda tidak perlu terlalu pusing memikirkan sub judul yang saya sertakan. Mungkin bagi Anda sub judul diatas agak sedikit aneh, tapi bagi saya itu tidak aneh, biasa-biasa saja. Oke Friend, Anda sudah banyak melihat dan

menjalankan program-program contoh yang saya sertakan pada Tutorial ini, disitu banyak perintah-perintah BAHASA PASCAL yang belum saya terangkan kepada Anda, jadi bila Anda orang yang kritis tentunya akan bertanya maksud ini apa, maksud itu apa, jika begini bagaimana dan bagaimana bila begini maka jangan heran kalau saya memberikan judul seperti diatas. Langsung saja, dibawah ini akan saya jelaskan satu persatu perintah-perintah pokok yang perlu Anda ketahui dan dapat menjadi bekal Anda kelak bila ingin membuat aplikasi dari BAHASA PASCAL dan menjadi referensi Anda untuk belajar bahasa DELPHI. 1. Mengatur tampilan di Layar Monitor

Pada layar Monitor dengan sistem 16 BIT, layar monitor tidak diukur dengan PIXEL tetapi dengan BIT atau CHARACTER. Pascal merupakan salah satu program berbasis 16 bit, jadi tentu saja dalam menempatkan suatu karakter harus mengikuti aturan-aturan sistem 16 bit. Semua operasi yang memerlukan tampilan di layar CRT dalam pascal, harus menggunakan UNIT CRT dengan perintah USES CRT; . Layar CRT untuk menampilkan hasil dinyatakan dengan istilah Baris dan Kolom . Satu Layar penuh terdiri dari 24 Baris dan 80 Kolom, Baris ke 1 kolom ke 1 terletak dipojok kiri atas layar, sedangkan baris 24 kolom ke 80 terletak dipojok kanan bawah layar. lihat gambar dibawah ini. 1,1 1,2 80,1 80,2

1,24

80,24

Pembagian Baris dan Kolom pada layar 16 BIT Adapun Perintah-perintah untuk tampilan dilayar CRT sebagai berikut:

GotoXY(A,B); -- Perintah ini Digunakan untuk menempatkan suatu karakter di bagian layar yang dikehendaki, dengan A adalah Kolom dan B adalah Baris. Contoh Program yang menggunakan perintah GotoXY dapat Anda lihat pada Halaman 3 tentang pembahasan PROSEDUR REKURSI. WriteLN(' '); -- Perintah ini digunakan untuk menampilkan sesuatu pada layar monitor, baik itu berupa hasil operasi maupun karakter. Bila akan menampilkan karakter string, harus diapit tanda petik atau kutip ( ' ). Sedangkan untuk suatu operasi, fungsi maupun prosedur yang akan ditampilkan kebalikan nya yaitu tidak

boleh diberikan tanda kutip. Perintah WriteLn akan menuliskan sebuah kata atau variabel yang akan ditampilkan lalu berpindah baris, sedangkan perintah write saja akan menuliskan kata pada baris yang sama. TextColor(NW); -- Perintah ini untuk menampilkan warna huruf maupun latar belakang, Perintah ini digunakan untuk mengatur warna-warna huruf maupun latar belakang yang kita kehendaki. Keterangan NW berarti NAMA WARNA bisa kita masukan warna yang kita kehendaki dalam bahasa inggris misal Hijau adalah Green bisa juga dimasukan dengan kode-kode warna yang telah disediakan oleh Pascal, lihat tabel dibawah ini. KODE WARNA HURUF DAN FOREGROUND NAMA WARNA BLACK BLUE GREEN CYAN RED MAGENTA BROWN LIGHTGRAY DARKGREY LIGHTBLUE LIGHTGREEN LIGHTCYAN LIGHTRED LIGHTMAGENTA YELLOW WHITE BLINK

KODE WARNA 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 128

Nama serta Kode Warna Huruf dan Fore Ground Contoh Program yang menggunakan TextColor( ); :{Program melihat warna huruf By : Suryatekno@2008 } uses crt;

var biru,kuning,hijau,kedip : integer; begin biru kuning hijau kedip := := := := 1; 14; 2; 128;

clrscr; TextColor(biru);WriteLn('Huruf berwarna Biru'); TextColor(kuning);WriteLn('Huruf berwarna Kuning'); TextColor(hijau);WriteLn('Huruf berwarna Hijau'); TextColor(kuning+kedip); WriteLn('Huruf Berwarna Kuning kucap-kiceup'); TextColor(15); WriteLn; ReadLn; WriteLn('Tekan Enter untuk Keluar'); End.

Window(X1,Y1,X2,Y2); -- Perintah ini digunakan untuk membuat jendela baru di layar CRT dengan ukuran yang ditentukan oleh X1,Y1 dan X2,Y2. Dimana X1,Y1 adalah koordinat titik sudut sebelah kiri atas dan X2,Y2 adalah koordinat titik sudut sebelah kiri bawah. Jadi jendela yang aktif tidak lagi standar seperti diatas, tetapi diatur besarnya oleh keinginan si programer. Contoh Program yang menggunakan perintah window{ Program membuat window baru yang diisi oleh tulisan-tulisan didalamnya} uses crt; var x : integer; begin x := 1; clrscr; window(15,3,61,20); TextColor(15); Repeat for x:=1 to 100 do begin Write('suryatekno '); end; until KeyPressed; end.

Cobalah program diatas agar Anda lebih jelas melihat perintah WINDOW. Program diatas akan menulis kata suryatekno didalam jendela yang ditentukan dan terus bergerak gerak, sampai Anda menekan tombol apa saja untuk menghentikannya. Tampilannya seperti gambar dibawah ini.

Membuat Jendela Baru dengan Window

ClrScr; -- Perintah ini digunakan untuk membersihkan layar agar dapat digunakan lagi oleh variabel yang akan ditampilkan. Perintah ini sering digunakan agar teks terlihat rapih dari sisa-sisa teks yang telah ditampilkan sebelumnya dan menaruh kursor atau pointer pada posisi semula yaitu dipojok bagian atas. ClrEol; -- Perintah ini digunakan untuk membersihkan layar dalam satu baris setelah kursor, tetapi posisi kursor tetap berada pada posisi tersebut, perintah ini amat berguna untuk membuat sebuah aplikasi yang membutuhkan ruangan yang sama dalam menampilkan teks misalnya aplikasi untuk wartel, parkir dan sebagainya. Contoh pemakaian nya lihat program dibawah ini, kemudian Anda jalankan program tersebut :{ Program menghapus kata pada baris yang ditentukan Create by : Suryatekno@2008 } uses crt; var lagi : char; kata : string[50]; Begin lagi := 'y'; clrscr; writeLn('Kata dibaris ini akan diganti dgn kata baru'); while (lagi='y') or (lagi='Y') do Begin gotoXY(1,3); clrEol; write('Kata pengganti (maks 50 karakter) : '); ReadLn(kata); gotoXY(1,1); {pointer pada kolom 1 baris 1} clrEol; (Kata pada baris tersebut dihapus} writeLn(kata); {menuliskan kata baru} gotoXY(1,5);

clrEol; write('Mau diganti lagi (y/t) ? '); ReadLn(lagi); end; end.

Perhatikan jalannya program !. Pada program tersebut POINTER diatur sedemikian rupa agar tidak saling tindih dengan kata-kata baru yang telah dituliskan, kita mengatur posisi kursor atau pointer tersebut ketempat yang sesuai dengan keinginan kita dengan perintah gotoXY(x,y);. Ini perlu Anda perhatikan agar program atau aplikasi yang Anda buat terlihat cantik dan menawan.

insLine; -- Perintah ini berfungsi untuk menyisipkan sebuah baris kosong pada layar. Berbeda dengan clrEol, perintah insLine tidak menghapus kata atau tampilan yang berada pada sebuah baris tapi menyisipkan sebuah baris kosong, sedangkan kata-kata yang sudah ditampilkan akan tetap ada namum bergeser kebawah setelah baris kosong yang dibuat dengan perintah insLine. Contoh program yang menggunakan insLine seperti dibawah ini .( Program menyisipkan baris by : suryatekno@2008 } uses crt; var lagi : char; begin clrscr; writeLn('Ini baris ke 1'); writeLn('Ini baris ke 2'); writeLn('Ini baris ke 3'); writeLn('Ini baris ke 4'); writeLn; write('Mau sisipkan baris dimana ? (2-4) : '); ReadLn(lagi); if (lagi='2') then begin gotoXY(1,2);insLine; gotoXY(1,2);write('-- Ini sisipan barisnya --'); gotoXY(1,7);clrEol; writeLn('Baris ke ',lagi,' sudah di sisipkan.'); writeLn('tekan Enter untuk keluar'); readLn; exit; end; if (lagi='3') then begin gotoXY(1,3);insLine; gotoXY(1,3);write('-- Ini sisipan barisnya --'); gotoXY(1,7);clrEol; writeLn('Baris ke ',lagi,' sudah di sisipkan.');

writeLn('Tekan Enter untuk keluar'); readLn; exit; end; if (lagi='4') then begin gotoXY(1,4);insLine; gotoXY(1,4);write('-- Ini sisipan barisnya --'); gotoXY(1,7);clrEol; writeLn('Baris ke ',lagi,' sudah di sisipkan.'); writeLn('Tekan Enter untuk keluar'); readLn; exit; end else begin gotoXY(1,7);clrEol; writeLn('Pilihan salah !, baris tidak disisipkan.'); writeLn('Tekan Enter untuk keluar'); ReadLn; end end.

2.

OPERATOR DALAM PASCAL

Dalam bahasa Pascal, ada 9 operator yang harus dipahami. Kesembilan operator tersebut yaitu : 1. 2. 3. 4. 5. 6. 7. 8. 9. Assigment Operator - Operator Tanda Binary Operator - Operator Biner Unary Operator - Operator Unari Bitwise Operator - Operator Pilihan Relational Operator - Operator Relasi Logical Operator - Operator Logika Address Operator - Operator Alamat Set Operator - Operator Himpunan String Operator - Operator string atau karakter

A. Operator Tanda (Assigment Operator) - Adalah operator yang menyatakan sama dengan atau serupa. Pemakaian Operator ini secara umum biasanya digunakan setelah menyatakan sebuah variabel tertentu dengan nilai yang ditentukan oleh jenis operator ini. Operator ini menggunakan tanda titik dua dan sama dengan ( := ). Cara penggunaan nya telah banyak diperlihatkan pada contoh-contoh program dihalaman sebelumnya, silahkan dilihat lagi. B. Operator Biner (Binary Operator) - Adalah operator yang digunakan dalam operasi perhitungan MATEMATIKA. Operator ini banyak digunakan dalam program pascal

untuk menyatakan sebuah ekspresi hasil operasi matematika. Ada beberapa tanda operator biner dalam pascal, yaitu : TANDA * + / DIV MOD SQRT COS SIN ArcTan SQR LN PI INT ABS EXP TIPE Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer Real / Integer KETERANGAN Untuk menyatakan Perkalian Untuk menyatakan Penjumlahan Untuk menyatakan Pengurangan Untuk menyatakan Pembagian bilangan bulat Untuk menyatakan Pembagian bilangan real Untuk menyatakan Modulus atau sisa suatu pembagian Untuk menyatakan Akar Pangkat Dua Untuk menyatakan Operasi Cosinus Untuk menyatakan Operasi Sinus Untuk menyatakan Operasi Tangen Untuk menyatakan Pangkat Dua atau Kuadrat Untuk menyatakan Nilai Logaritma Menghasilkan nilai Pi yaitu 3,141593 Untuk menyatakan Akar Pangkat Dua Untuk menyatakan Nilai Mutlak Untuk menyatakan Nilai Exponen

Tanda Operasi Biner Contoh Program gabungan tanda diatas.

uses crt; var x : longint; begin clrscr; x := 30; writeLn(' Tabel Operasi Metematika Terpadu'); writeLn(' nilai a = 30'); writeLn; write('======================================='); writeLn('==============================='); write(' aXa a:a a-a a+a sin a cos a tg a '); writeLn(' akar a log a'); write('======================================='); writeLn('==============================='); write(x*x:4,x/x:5:0,x-x:5,x+x:6,round(sin(x)):5); write(round(cos(x)):7,round(Arctan(x)):7); write(round(sqrt(x)):7,round(ln(x)):11); writeLn; write('====================================='); writeLn('================================='); write('Nilai absolute (mutlak) dari sin a : '); writeLn(abs(round(sin(x)))); write('Nilai pi adalah : '); writeLn(pi); write('Pembagian Real antara pi dgn tg a : '); writeLn(pi / arctan(x)); writeLn; write('====================================='); writeLn('================================='); writeLn('Tekan enter untuk keluar...'); readln end.

C. Operator Unari (Unary Operator) -- Adalah operator yang menyatakan perbedaan antara bilangan positip dan negatif. ( - 1 ) , ( + 1 ) D. Operator Pilihan (Bitwise Operator) -- Adalah operator yang digunakan untuk membandingkan suatu variabel atau expresi. Operator ini banyak digunakan dalam operasi logika. Ada beberapa tanda operator yang digunakan pada operator ini yaitu. 1. NOT -- Tanda operator bitwise ini digunakan untuk menyatakan kebalikan dari suatu ekspresi atau variabel, contoh : NOT 1 -- berarti 0 , NOT 0 -- berarti 1 , NOT TRUE -- berarti FALSE , NOT FALSE -- berarti TRUE. A 1 0 TRUE FALSE NOT A 0 1 FALSE TRUE

2. Tabel NOT 3. AND -- Tanda operator bitwise ini digunakan untuk membandingkan dua buah komponen, yang menghasilkan nilai TRUE (benar) bila kedua komponen itu benar, dan menghasilkan nilai FALSE (salah) bila salah satu atau kedua komponen itu salah. 1 AND 1 -- TRUE , 0 AND 0 -- FALSE , 1 AND 0 -FALSE , 0 AND 1 -- FALSE. A B 1 1 0 0 1 0 1 0 A AND B TRUE FALSE FALSE FALSE

4. Tabel AND 5. OR -- Tanda operator bitwise ini digunakan untuk membandingkan dua buah komponen, yang menghasilkan nilai TRUE bila salah satu dari kedua komponen tersebut TRUE. 1 OR 1 -- TRUE , 1 OR 0 -- TRUE , 0 OR 1 -- TRUE , 0 OR 0 -- FALSE. A 1 1 0 0 B 1 0 1 0 A OR B TRUE TRUE TRUE FALSE

6. Tabel OR 7. XOR -- Tanda operator bitwise ini digunakan untuk membandingkan dua buah komponen, yang menghasilkan nilai TRUE bila hanya salah satu dari dua komponen tersebut yang benar. 1 XOR 1 -- FALSE , 1 XOR 0 -- TRUE , 0 XOR 1 -- TRUE , 0 XOR 0 -- FALSE. A B 1 1 0 0 1 0 1 0 A XOR B FALSE TRUE TRUE FALSE 8. Tabel XOR

9. NAND -- Tanda operator bitwise ini merupakan kebalikan dari tanda AND ( Not AND ) bila AND TRUE maka NAND FALSE. Menghasilkan nilai FALSE bila kedua komponen yang dibandingkan TRUE. A B 1 1 0 0 1 0 1 0 A NAND B FALSE TRUE TRUE TRUE

10. Tabel NAND 11. NOR -- Tanda operator bitwise ini merupakan kebalikan dari tanda OR ( Not OR ) bila OR TRUE maka NOR FALSE. Menghasilkan nilai TRUE bila kedua komponen yang dibandingkan FALSE. A B 1 1 0 0 1 0 1 0 A NOR B FALSE FALSE FALSE TRUE 12. Tabel NOR E. Operator Relasi (Relational Operator) - Operator ini digunakan untuk membandingkan dua buah variabel atau ekspresi yang berbeda antara satu dengan yang lainnya atau sama antara satu dengan yang lainnya. Operator ini mempunyai beberapa Tanda yaitu : Tanda Operator = > < = Keterangan Sama dengan >>> Jeruk = Buah Lebih besar dari >>> 5 > 3 Lebih kecil dari >>> 3 < 5 Tidak sama dengan >>> Jeruk < > Komputer Lebih kecil atau sama dengan >>> x = 15 , x < = 20 Lebih besar atau Sama dengan >>> x = 15 , x > = 10

F. Operator Logika (Logical Operator) - Operator ini digunakan dalam operasi logika yang hanya menghasilkan nilai TRUE atau FALSE. Berbeda dengan Operator Bitwise, operator ini justru membandingkan nilai dari operator Bitwise tersebut. Penggunaan nya sama dengan Operator Bitwise. G. Operator Alamat (Address Operator) - Adalah operator yang mengakses alamat suatu variabel di memory. Operator ini banyak digunakan bila program yang kita buat berhubungan dengan sistem operasi. Hanya ada dua buah tanda operator yang disediakan oleh pascal untuk mengakses alamat di memory yaitu tanda ( ^ ) dan ( @ ). Untuk Operator ini saya tugaskan kepada Anda untuk mencari dari media atau situs yang lain, sebab operator yang berhubungan dengan sistem terlalu panjang untuk di uraikan pada tutorial ini. Saya khawatir kapasitas hosting yang disediakan di Web Server yang gratisan ini habis untuk menjelaskan operator ini. H. Operator Himpunan (Set Operator) - Operator ini digunakan untuk program yang bekerja dengan suatu himpunan yang berbentuk array atau larik. Himpunan yang diperbolehkan oleh pascal untuk dijadikan suatu array adalah 256 dengan range antara 0 sampai 255. Contoh penggunaan Set Operator seperti dibawah ini :{ Program menghitung Huruf by : Suryatekno@2008 } uses crt; type karakter = set of char; var huruf : karakter; teks : string[255]; jumlah, I : word; begin clrscr; writeLn('Ketiklah kata Apa saja dibawah ini :'); writeLn; readLn(teks); huruf := ['a'..'z','A'..'Z']; jumlah := 0; for I := 1 to ord(teks[0]) do if teks[I] in huruf then jumlah := jumlah+1; writeLn; writeLn('Jumlah huruf yang anda masukan = ',jumlah,' huruf'); writeLn('Kalau tidak percaya hitung saja sendiri !'); writeLn;writeLn; writeLn('Tekan Enter untuk keluar'); readLn; end.

I. Operator String (String Operator) - Operator string adalah suatu operator yang digunakan untuk memanipulasi suatu string atau karakter yang akan ditampilkan pada layar. Operator ini boleh dikatakan wajib untuk Anda kuasai. sebab semua program

pascal yang membutuhkan tampilan dilayar menggunakan operator string. Karena wajib, jadi walaupun pembahasan nya agak panjang saya berusaha akan menjelaskannya seminimal dan sejelas mungkin, agar Anda paham mengenai operator string ini. (sungguh menyakitkan, karena keterbatasan hiik ). Kita lanjutkan, elemen-elemen Operator string ini antara lain : 1. Str - Elemen str digunakan untuk merubah nilai numerik menjadi string. Struktur penulisan STR sebagai berikut : Str( X : Y : Z , V ) >>> X = nilai numerik , Y = banyaknya angka , Z = banyaknya angka dibelakang koma , dan V = nama variabel string perubahnya.2. uses crt; 3. var 4. x : integer; 5. z1,z2 : string[8]; 6. begin 7. clrscr; 8. x := 123; 9. Str(x:3,z1); 10. Str(x:3,z2); 11. writeLn('Nilai x = ',x); 12. writeLn('Operasi numerik x + x = ',x+x); 13. write('Operasi string x + x = '); 14. writeLn(z1+z2); 15. readLn; 16. end.

17. Val - Elemen Val digunakan untuk merubah nilai string menjadi Numerik. Struktur penulisan Val sebagai berikut : Val( X , Y , Z ) >>> X = nilai string , Y = variabel perubahnya , Z = tanda error. Tanda Error diberikan bila kita ingin mengetahui dimana letak error atau kesalahan operasi Val dari suatu string. Bila terjadi error maka nilai numerik dianggap kosong atau nol, sekarang cobalah jalankan program dibawah ini kemudian lihat hasilnya, lalu Anda rubah nilai x := '123'; menjadi x := '123C' , maka operasi numerik akan menghasilkan angka 0 dan error ditunjukan dengan angka 4, berarti ada kesalahan pada karakter ke 4 yaitu karakter C.18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. uses crt; var x : string[8]; z1,z2 : integer; begin clrscr; x := '123'; Val(x,z1,z2); writeLn('nilai x = ',x); writeLn('Operasi numerik x + x = ',z1+z1); write('Operasi string x + x = '); writeLn(x+x); writeLn('Error berada pada angka ke : ',z2); readLn; end.

33. DELETE - Elemen delete digunakan untuk membuang karakter-karakter yang di inginkan. Struktur penulisan DELETE sebagai berikut : DELETE(X,Y,Z) >>> X = String , Y = Urutan string yang akan dibuang , Z =

Banyaknya string yang dibuang. Pada contoh program ini kata SURYATEKNO menjadi SURYANO, dengan membuang 3 karakter yang dimulai dari karakter ke 634. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. uses crt; var nama : string[10]; buang : integer; begin clrscr; nama := 'SURYATEKNO'; buang := 6; delete(nama,buang,3); writeln(nama); readln; end.

47. COPY - Elemen COPY digunakan untuk mengcopy sejumlah karakter string yang diinginkan. Struktur penulisan COPY sebagai berikut : COPY(X , Y , Z ) >>> X = String , Y = Urutan string , Z = Banyaknya string yang di Copy.48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. uses crt; var kata : string[10]; begin clrscr; kata := 'SURYATEKNO'; writeLn('Kata yang akan di copy : ',kata); writeLn; write('Copy 5 karakter pertama : '); writeLn(copy(kata,1,5)); writeLn; write('Copy 5 karakter terakhir : '); writeLn(copy(kata,6,5)); writeLn;writeLn; writeLn('Tekan Enter untuk keluar'); readLn; end.

66. ConCat - Elemen ConCat digunakan untuk menambahkan suatu string pada string lainnya yang sudah ada. Struktur penulisan ConCat sebagai berikut : ConCat(X1,X2,X3,..,Xn) >>> X1 sampai Xn = String yang akan ditambahkan.67. uses crt; 68. const 69. x1 = 'Saya'; 70. X2 = 'belajar'; 71. x3 = 'Pascal'; 72. x4 = 'dari'; 73. x5 = 'http://www.suryascience.co.nr'; 74. xn = ' '; 75. begin 76. clrscr; 77. writeLn(concat(x1,xn,x2,xn,x3,xn,x4,xn,x5)); 78. writeLn; 79. writeLn('Enter untuk keluar..!');

80. readLn; 81. end.

82. Pos - Elemen Pos digunakan untuk mencari posisi substring yang ada pada string yang lainnya. Elemen Pos ini menghasilkan nilai Integer dari suatu barisan string. Struktur penulisan elemen Pos sebagai berikut : Pos( X , Y ) >>> X = Substring yang dicari , Y = String yang mengandung Substring.83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. uses crt; Var ketik : string[255]; huruf : char; begin huruf := 'a'; clrscr; write('Ketik kata apa saja yang mengandung '); writeLn('huruf a kecil dibawah ini :'); readLn(ketik); writeLn; writeLn('Kata yang Anda Ketik : ',ketik); writeLn;writeLn; writeLn('Huruf a pertama yang Anda ketik'); write('berada pada urutan ke - ',Pos(huruf,ketik)); writeLn(' dari kata yang Anda ketik'); writeLn; readLn; end.

102. Length - Elemen Length digunakan untuk menghitung jumlah substring dari string yang dikehendaki. Elemen Length ini menghasilkan nilai Integer dari suatu barisan string. Struktur penulisan elemen Length sebagai berikut : Length( X ) >>> X = Substring yang dihitung dari sebuah string. Contoh dibawah ini modifikasi dari elemen Pos diatas yang diganti dengan elemen Length.103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. uses crt; Var ketik : string[255]; begin clrscr; writeLn('Ketik kata apa saja dibawah ini :'); readLn(ketik); writeLn; writeLn('Kata yang Anda Ketik : ',ketik); writeLn;writeLn; write('Jumlah Huruf yang Anda ketik ada '); writeLn(Length(ketik),' huruf termasuk spasi.'); writeLn; readLn; end.

118. CHR - Elemen CHR digunakan untuk merubah nilai bytes menjadi karakter ASCII. Struktur penulisan elemen CHR sebagai berikut : CHR( X ) >>> X = angka dari 0 sampai 255.119. 120. 121. 122. 123. uses crt; var x : byte; lagi : char; begin

124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136.

lagi := 'Y'; while (upcase(lagi)='Y') do begin clrscr; write('Kode ASCII yang ingin '); write('Anda Lihat ! (0-255) : ');readLn(x); writeLn; writeLn('Kode ASCII nya adalah : ',CHR(x)); writeLn; write('Mau lihat lagi ? (y/t) : '); readLn(lagi); end; end.

137. ORD - Elemen ORD kebalikan dari CHR yaitu memasukan nilai ASCII untuk dirubah menjadi bentuk Integer. Struktur penulisan elemen ORD sebagai berikut : ORD( X ) >>> X = Karakter ASCII. Contoh kode ASCII untuk huruf kapital S adalah 83138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. uses crt; var x : char; lagi : char; begin lagi := 'Y'; while (upcase(lagi)='Y') do begin clrscr; writeLn('Ketik huruf atau karakter yang ingin '); write('Anda lihat nilai kode ASCII nya ! : ');readLn(x); writeLn; writeLn('Nilai Kode ASCII ',x,' adalah : ',ORD(x)); writeLn; write('Mau lihat lagi ? (y/t) : '); readLn(lagi); end; end.

156. UpCase - Elemen Upcase digunakan untuk merubah huruf kecil menjadi huruf besar. Struktur penulisan elemen UpCase sebagai berikut : UpCase( X ) >>> X = huruf yang akan dirubah.157. 158. 159. 160. 161. 162. 163. 164. uses crt; var x : char; begin clrscr; write('Ketik satu Huruf kecil : ');readLn(x); writeLn('Huruf yang diketik jadi : ',UpCase(x)); readLn; end.

165. Insert - Elemen Insert digunakan untuk menyisipkan sebuah karakter pada karakter yang sudah ada. Struktur penulisan elemen Insert sebagai berikut : Insert( X , Y , Z ) >>> X = String yang akan di sisipkan , Y = String yang disisipkan , Z = Urutan string tempat penyisipan string. Maksimum panjang string yang disisipkan dengan yang akan disisipkan berjumlah 255 karakter.166. uses crt; 167. var str_asli : string[25];

168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180.

begin str_asli := 'Surya Putra Tenokindo'; clrscr; write('String Asli sebelum disipkan : '); writeLn(str_asli); writeLn; writeLn('Menyisipkan huruf k pada kata Tenokindo.'); writeLn; Insert('k', str_asli , 15); write('String yang sudah disisipkan jadi : '); writeLn(str_asli); readLn; end.

I. Berakit-rakit kehulu berenang ketepian setelah Anda bersusah-payah dalam mempelajari Dasar Bahasa Pascal, sekarang tibalah waktunya saya membawa Anda ke Program yang Pokok yaitu mempelajari PEMROGRAMAN BAHASA DELPHI. Saya berharap bekal yang telah diberikan pada halaman 1 sampai 7 dapat memudahkan Anda dalam mempelajari PEMROGRAMAN BAHASA DELPHI ini. Pada Tutorial Dasar-dasar BAHASA DELPHI ini saya menggunakan DELPHI versi 6. Jadi bagi Anda yang mempunyai versi yang lebih tinggi itu lebih baik, sedangkan bagi Anda yang mempunyai versi yang lebih rendah masih bisa digunakan hanya saja mungkin ada beberapa fasilitas yang belum tersedia pada versi-versi sebelumnya. Bagi yang belum punya diharapkan secepatnya membeli Delphi versi 6. ( Download Delphi ). Mari kita mulai membuka program DELPHI. Ketika pertama kali Anda buka, Anda akan disuguhkan oleh sebuah form kosong tempat kita meletakan unit-unit yang disediakan secara GUI, berbeda dengan PASCAL yang mengandalkan Keyboard, sebaliknya delphi mengandalkan mouse untuk meletakkan unit-unit yang ada. Apa itu unit ?, masih ingatkan yang namanya unit di PASCAL?. Apa sudah lupa.?, uhhh percuma saya kasih keterangan di pengantar PASCAL, buka lagi lah !. .

Tampilan Delphi 6

Command Unit Delphi 6 Dibalik Form kosong yang disediakan oleh Delphi, ada sebuah unit tempat mengetikan event-event program. Coba Anda perhatikan perintah-perintah atau tag yang ada pada unit command delphi tersebut. Hmmm... saya rasa Anda sudah familiar dengan tag-tag tersebut. Ada tag dengan perintah unit standar USES dan ada procedure TYPE. Wow mirip sekali yah dengan PASCAL !. Pada Delphi Anda tidak perlu pusing-pusing menuliskan unit yang akan dipakai, dia akan secara otomatis dituliskan, tapi ingat jangan sok tahu merubah tag-tag yang otomatis dituliskan oleh Delphi, bisa-bisa program yang Anda buat tidak akan berfungsi. Saya perlihatkan itu agar Anda tahu kenapa saya mengenalkan Bahasa Pascal terlebih dahulu kepada Anda dalam mempelajari Delphi ini. . Kembali ke Form kosong. Sebagai perkenalan Anda dengan delphi sekarang coba letakkan unit apa saja terserah Anda. Ada ratusan unit yang disediakan oleh Delphi, sebagai latihan meletakkan unit, pakai saja UNIT STANDARD, disitu ada unit Frames , Main Menu , Pop Up Menu , Button , Edit , Label dan seterusnya. Klik dua kali unit yang akan diletakkan, misal Anda akan meletakkan Button , klik dua kali icon button, maka otomatis akan ditaruh pada form kosong. Rapihkan letak dari unit yang Anda taruh di form dengan DRAG AND DROP kemana saja terserah Anda, asal jangan diluar Form, sebab saya jamin Anda tidak akan bisa meletakkan unit diluar form, coba saja sendiri . Setelah Anda letakkan unit-unit yang ada secara sembarangan, cobalah Anda klik RUN atau tekan tombol F9. Tidak akan terjadi apa-apa sekalipun Anda tekan tombol button yang Anda letakkan di form kosong dalam mode RUN berkali-kali, sebelum Anda memberikan event pada unit tersebut....! , Apa itu EVENT ?.

Event adalah suatu kejadian atau peristiwa yang memakai hukum sebab akibat, sebagai contoh misalkan saya menjitak kepala Anda.. , misalkan..!. Tentunya Anda akan bereaksi dengan menendang saya misalnya atau mungkin Anda akan membalasnya dengan menjitak kepala saya lagi, atau setidaknya Anda akan marah kepada saya. Begitu juga Event dalam Delphi, unit-unit yang Anda letakkan pada form kosong tersebut tidak akan bereaksi sebelum Anda memberikan suatu kejadian yang membuat tombol tersebut bereaksi terhadap unit yang lainnya. Bagaimana caranya membuat EVENT ?, mudah saja sebab Anda sudah mempelajari Bahasa Pascal, hanya sedikit penyesuaian yang perlu Anda lakukan. OK sekarang kita mulai mencoba bagaimana caranya membuat event dalam Delphi, sebelumnya tutup form yang sudah diletakkan unit-unit sampah yang mungkin saja Anda mengikuti saya untuk meletakkan unit-unit tersebut secara tidak karuan. Caranya : Klik File -- Close All kemudian Delphi akan menanyakan kepada Anda Apakah proyek akan disimpan ?, jawab saja tidak. Kemudian klik lagi File -- New -- Pilih Aplication , maka form baru akan dibuatkan lagi oleh Delphi. Setelah form baru dibuatkan oleh Delphi, sekarang Anda lihat window disebelah kiri. Disitu ada yang namanya OBJECT INSPECTOR. Kalau tidak ada klik View - klik object inspector atau tekan tombol F11. Pada OI Properties ( Selanjutnya saya akan menyebut Object Inspector ini dengan istilah OI, ingat baik-baik sebab cape ketiknya.) cari bacaan ClientHeight dan ClientWidth, rubah nilainya menjadi ClientHeight 200 dan ClientWidth 300 , maka ukuran form kosong yang dibuatkan oleh delphi akan berubah ukurannya menjadi 200 X 300 Pixel. Setelah itu cari di OI kata Caption rubah nama nya menjadi Latihan 1. Setelah selesai dengan pengaturan ukuran form, sekarang letakkan Unit Label pada form tersebut, Atur posisinya agar berada diatas tapi jangan terlalu atas. Klik sekali unit label1, pada OI rubah Caption nya dengan : Hallo Delphi Saya datang..! , kemudian rubah ukuran font nya dengan cara mengklik FONT pada OI, setelah itu klik tanda ANCHOR yang berbentuk titik 3 ( ... ) disampingnya, maka akan dikeluarkan window untuk merubah ukuran font. Pilih jenis font nya Arial dengan ukuran 16. Masih di OI untuk label1, sekarang cari di OI kata Name, rubah namanya menjadi Teks1. Kemudian cari lagi di OI kata Visible , rubah menjadi False. Setelah selesai dengan pengaturan Label, sekarang letakkan dua buah Unit Button pada form, atur letaknya secantik mungkin ganti caption untuk button1 menjadi Tampil dan button2 menjadi Sembunyi , setelah itu kita berikan event pada kedua tombol tersebut. Klik dua kali tombol Tampil, maka command event akan dikeluarkan, lalu ketik perintah berikut ini teks1.visible := True; , Kemudian klik tombol Shift+F12 pilih form1, untuk menampilkan form lagi bila terhalangi oleh command event. Setelah form ditampilkan lagi sekarang klik dua kali tombol Sembunyi , pada command event ketik perintah berikut : teks1.visible := False; . Setelah itu tekan tombol Shift+F12 lagi untuk menampilkan form. Perlu diingat, Anda hanya menambahkan perintah diatas saja, sedangkan perintah yang otomatis diberikan oleh delphi tidak perlu dirubah. Lihat cara penulisan event dibawah ini.

procedure Tform1.Button1Click(sender : TObject); >> dibuat oleh delphi. begin >> dibuat oleh delphi. Ketik disini perintah diatas end; >> dibuat oleh delphi. Setelah semuanya diberi event, sekarang tekan tombol F9 untuk melihat hasil kerja Anda. Kalau Anda benar, maka tampilannya akan seperti gambar dibawah ini. Jika tombol tampil Anda klik maka teks Hallo Delphi saya datang akan ditampilkan, sebaliknya bila tombol sembunyi Anda klik maka teks tersebut akan hilang lagi.

Latihan 1, membuat Event Nah.. itulah pelajaran membuat event pertama untuk Anda, bagaimana mudah bukan..?, sekarang tombol tersebut berfungsi, karena telah diberikan event untuk tombol tersebut. Simpanlah pekerjaan Anda dengan nama unit Latihan1.pas dan nama proyeknya adalah Latpro1.dpr , Ingat nama file Unit dan nama file proyek tidak boleh sama.. Terlalu mudah...!, Apa..! . OK setelah Anda simpan pekerjaan Anda, Klik file -- Close All. Setelah di close sekarang buka file project yang telah Anda buat, klik file -- open project -- pilih latpro1.dpr -- klik ok. Tambahkan unit-unit baru pada latpro1.dpr yang telah Anda buat dengan dua buah button dan satu buah memo, atur letaknya sehingga seperti gambar dibawah ini :

Modifikasi latihan 1 Rubah caption untuk button3 jadi Rubah Teks dan button4 dengan Selesai , berikan event pada button Rubah Teks dengan teks1.Caption := memo1.Text; dan button Selesai dengan form1.close; Jalankan lagi latpro1.dpr lihat hasilnya. Sekarang teks yang ada di atas yaitu Hallo Delphi saya datang , bisa Anda rubah dengan memasukan teks pada memo dan mengklik tombol Rubah Teks, sedangkan tombol selesai bila di klik maka program akan keluar. Latihlah kemampuan membuat event yang telah Anda pelajari disini dengan merubah-rubah value yang ada pada OI. Berhubung jari jemari saya sudah pada pegal, selain itu saya juga harus mengatur sisa space yang disediakan oleh Web Hosting ( sisa 1 Mega Bytes ) , maka sampai disini dulu tutorial ini, Insya Allah disambung lagi minggu depan setelah saya membersihkan space di Web Hosting yang sudah tidak terpakai. Kami juga memohon bantuan dari Anda untuk berpartisipasi menjalankan program Suryatekno, agar bisa memiliki Domain dan Web Hosting sendiri sehingga tidak terbatas lagi seperti saat ini. Untuk lebih jelasnya silahkan Anda menuju Halaman Donasi klik link ini.( Masuk Halaman Donasi ). Atas partisipasi Anda sebelum dan sesudahnya kami ucapkan banyak terima kasih.