Struktur Program Pascal
Struktur dari suatu program Pascal terdiri dari sebuah judul program (program heading) dan suatu blok program (program block) atau badan program (body program). Blok program dibagi menjadi dua bagian, yaitu bagian deklarasi (declaration part) dan bagian pernyataan (statement part). Bagian Deklarasi dapat terdiri dari deklarasi label (labels declaration), deklarasi konstanta (constants declaration), deklarasi tipe (type declaration), deklarasi variabel (variables declaration), deklarasi prosedur (procedures declaration) dan deklarasi fungsi (function declaration). Secara ringkas, struktur suatu program Pascal dapat terdiri dari:
1. Judul Program
2. Blok Program
a. Bagian Deklarasi
Struktur Program Pascal
Struktur dari suatu program Pascal terdiri dari sebuah judul program (program heading) dan suatu blok program (program block) atau badan program (body program). Blok program dibagi menjadi dua bagian, yaitu bagian deklarasi (declaration part) dan bagian pernyataan (statement part). Bagian Deklarasi dapat terdiri dari deklarasi label (labels declaration), deklarasi konstanta (constants declaration), deklarasi tipe (type declaration), deklarasi variabel (variables declaration), deklarasi prosedur (procedures declaration) dan deklarasi fungsi (function declaration). Secara ringkas, struktur suatu program Pascal dapat terdiri dari:
1. Judul Program
2. Blok Program
a. Bagian Deklarasi
Deklarasi label
Deklarasi konstanta
Deklarasi tipe
Deklarasi variabel
Deklarasi prosedur
Deklarasi fungsi
b. Bagian Pernyataan
Program Pascal Yang Paling Sederhana
Suatu program Pascal yang paling sederhana adalah program yang hanya terdiri dari sebuah bagian pernyataan saja. Bagian pernyataan (statement part) merupakan bagian yang terakhir dari suatu blok. Bagian ini diawali dengan reserved word Begin dan diakhiri dengan reserved word End. Jadi suatu program Pascal yang paling sederhana dapat berbentuk :
Begin
End.
Blok statement harus diawali oleh kata Begin dan diakhiri dengan kata End yang ada titik dibelakangnya (End.). Jangan lupa ya! Sedangkan format umum untuk suatu program biasanya adalah:
Program …
Uses …
Var
… …
Begin
…statement…
End.
Kata program boleh ada, boleh tidak (optional). Gunanya untuk memberi nama program saja. Lalu cobalah untuk mengetikkan statement berikut lalu jalankan (Ctrl+F9):
Begin
writeln('Halo Dunia!');
End.
Dalam kasus ini kita tidak menggunakan uses dan var. Seharusnya program di atas menghasilkan tulisan ‘Halo’ di layar. Jika terlalu cepat, tekan tombol alt+F5. Kemudian tekan sembarang tombol untuk kembali ke editor Pascal.
Uses
Untuk apakah uses itu? Uses adalah sejenis istilah yang berarti kita menggunakan suatu library (pustaka) tertentu. Lalu sekarang, apakah library itu? Untuk lebih mudah, anggap saja library itu sejenis kotak yang di dalamnya ada perintah-perintah yang kita butuhkan untuk program kita nantinya, seperti clrscr, readkey, keypressed, readln, dsb.
Pertanyaan lagi, mengapa program di atas tidak pakai uses? Karena statement writeln adalah memakai library standar milik TP (unit system), yang tidak perlu ditulis lagi.
Oh, ya. Bahasa Pascal bersifat incase-sensitive yang artinya tidak mempedulikan huruf besar atau kecil. Jadi terserah mau menulis kata Begin dengan begin atau BEGIN atau bahkan BeGiN. Tidak masalah koq. Dan jangan lupa, pada umumnya di akhir suatu perintah selalu diakhiri dengan tanda titik koma (;).
Penggunaan Write dan Writeln
Syntax write: write('');
Syntax writeln: writeln('');
Untuk lebih jelasnya, ketikkan perintah-perintah berikut ke editor Pascal anda lalu jalankan (Ctrl+F9).
Uses crt;
begin
clrscr;
writeln('ini baris pertama');
writeln('ini baris kedua');
write('ini baris ketiga');
write(' ini muncul disampingnya ');
writeln;
write('ini baris keempat');
end.
Sudah tahukah apa kegunaannya dan apa bedanya? Yang pasti, perintah write hanya menulis saja sedangkan perintah writeln menulis kemudian memindahkan kursor ke baris berikutnya.
Variabel
Variabel bisa diibaratkan sebagai sebuah kantong yang bisa menyimpan sesuatu. Dalam program yang meminta inputan ke user, maka inputannya harus ditampung ke dalam kantong yang bernama variabel ini. Dan kantong ini juga bisa diakses oleh statement program lainnya. Berikut ini adalah berbagai macam tipe variabel.
Nama Tipe Range Type
Shortint -128 s/d 127 Integer
Byte 0 s/d 255 Integer
Integer -32768 s/d 32767 Integer
Word 0 s/d 65535 Integer
Longint -2146473648 s/d 2146473647 Integer
Real 2.9 e-39 s/d 1.7 e37 Pecahan
String s/d 255 huruf Non numeric
Char 1 huruf saja Non numeric
Tipe variabel di atas adalah tipe variabel yang paling sering digunakan. Untuk tipe pecahan, masih ada tipe seperti single, double, extended, dsb. Silahkan pelajari sendiri di help yang tersedia (Ctrl+F1). Berikutnya adalah cara pendeklarasian variabel. Variabel di deklarasikan di blok var. Contoh:
Var
umur : byte;
nama : string;
Untuk memberikan suatu nilai pada variabel, pada statement masukan perintah:
:= ;
Contoh program:
Var
umur : byte;
sekolah : string;
begin
umur := 20;
sekolah := 'iSTTS';
writeln('Umurku ',umur,' tahun');
writeln('Aku bersekolah di ',sekolah);
end.
Jalankan dan lihat hasilnya! Lalu bagaimana jika kita ingin meminta inputan dari user. Gunakan perintah read atau readln. Contoh programnya:
Var
umur : byte;
sekolah : string;
begin
write('Umur saya berapa? '); readln(umur);
write('Sekolah saya di mana?'); readln(sekolah);
writeln('Umurku ',umur,' tahun');
writeln('Aku bersekolah di ',sekolah');
readln;
end.
Jalankan! Jika masukkan inputan lalu tekan enter. Lalu karena pada statement paling akhir program meminta readln. Itu artinya kita harus menekan tombol enter untuk kembali ke editor.
Uses Crt
Crt merupakan suatu unit yang mempunyai beberapa perintah yang dapat kita gunakan dalam hal pengolahan program berbasis teks. Beberapa perintah atau syntax yang memakai library ini adalah:
1. Clrscr : untuk membersihkan layar.
2. Textcolor : memberi warna pada tulisan.
3. TextBackground : memberi warna pada latar belakang tulisan tersebut.
4. GotoXY : memindahkan kursor ke posisi X,Y.
5. Sound, NoSound : membunyikan speaker dan menghentikannya.
6. Delay : menunda pemrosesan program beberapa waktu.
7. Textmode : mengubah besar karakter.
Contoh program :
Uses crt;
Begin
Clrscr;
Textcolor(14);
Textbackground(1);
Gotoxy(10,20);
Writeln('Tulisan kunig di atas biru!')
{penggunaan Sound dan NoSound}
Sound(440); delay(1000); nosound;
End.
Daftar warna:
1: hitam
2: biru
3: cyan
4: merah
5: magenta
6: coklat
7: abu-abu terang
8: abu-abu gelap
9: biru muda
10: hijau muda
11: cyan muda
12: merah muda
13: magenta muda
14: kuning
15: putih
Perhitungan matematika
Suatu statement pada blok program bisa digunakan untuk menghitung perhitungan matematika. Perhatikan program berikut:
…
Var
a,b,c : integer;
Begin
a:=1;
b:=5;
{penjumlahan}
c:=a+b;
writeln(c);
{pengurangan}
c:=b-a;
writeln(c);
{perkalian}
c:=a*b;
writeln(c);
{pembagian}
c:=b/a;
writeln(c);
End.
…
Div
Adalah pembagian yang selalu menghasilkan bilangan bulat (integer).
Contoh: c:=a div b;
Mod
adalah sisa dari pembagian modulo atau remainder yang selalu menghasilkan integer.
Contoh: c:=a mod b;
Trunc
Pembulatan angka ke bawah. Misalnya angka 5.7 dibulatkan menjadi 5.
Contoh: trunc(c);
Round
Pembulatan ke nilai integer terdekat, misal 5.6 dibulatkan ke enam. 7.1 dibulatkan menjadi tujuh.
Contoh: round(c);
Konstanta
Konstanta ini seperti variabel, hanya saja nilainya sudah didefinisikan sebelumnya dan selalu tetap dan tidak bisa diubah dalam program.
Contoh:
Const
Myconst = 1234;
Var
i:word;
Begin
i:=40;
writeln(i*myconst);
End.
Sudah jelas to maksud program di atas? Ingat! Nilai konstanta tidak dapat diubah. Jika dalam program dicoba untuk diubah, maka akan error.
Percabangan
Salah satu dari tiga konstruksi fundamental adalah percabangan/branching. Dalam pascal, percabagan menggunakan syntax if then else dan case of.
Syntax:
IF kondisi THEN
BEGIN
...
END;
Dengan ELSE:
IF kondisi [and] kondisi [or] kondisi THEN
BEGIN
...
END {memang tanpa titik koma di sini; sebelum ELSE tidak perlu titik koma!!!}
ELSE
BEGIN
...
END;
Apabila kondisi terpenuhi, maka program akan menjalankan b\perintah yang ada setelah THEN. Tapi jika kondisi tidaki terpenuhi, maka program akan menjalankan program setelah ELSE.
Contoh penggunaan:
Var i: integer;
Begin
Write('Masukkan bilangan antara 1-100: '); readln(i);
If i<=50 then
Write('bilangan kecil')
Else
Write('bilangan besar');
End.
Penggunaan CASE … OF:
Penggunaan Case OF ini lkebih berguna jika kondisi yang dibandingkan berupa range. Lihat contoh berikut:
CASE nilai OF
80..100 : grade:='A';
70..79 : grade:='B';
55..69 : grade:='C';
45-54 : grade:='D';
ELSE grade:='E';
END;
Looping
Selain percabangan, konstruksi fundamental pemrograman yang lainnya adalah looping atau perulangan. DI Pascal ada 3 macam looping. Kita akan pelajari satu per satu:
1. For … to … do
Syntax:
FOR variable := nilai_awal TO nilai_akhir DO
BEGIN
…apa_yang_diulang….
END;
Contoh penggunaan:
FOR i:=1 TO 5 DO
BEGIN
Writeln(i);
END;
Program di atas akan menuliskan angka 1 sampai 5 ke bawah di layar.
Jika ingin melakukan perhitungan mundur dari 5 ke 1, gunakan perintah DOWNTO sebagai pengganti TO (FOR i:=5 DOWNTO 1 DO).
BONUS!!! Untuk variabel yang bertipe char, bisa juga menggunakan FOR dengan cara berikut:
FOR c:='A' TO 'Z' DO write(c,' ');
Atau boleh juga menulisnya dengan
FOR c:='Z' DOWNTO 'a' DO write(c,' ');
Atau untuk tipe boolean, bisa juga seperti ini:
FOR b:=false TO true DO writeln(b);
Bagaimana? Keren kan?
2. While … do
Syntax:
WHILE kondisi DO
BEGIN
…apa_yang_dilakukan…
END;
Bedanya dengan FOR ... DO, adalah pada WHILE ... DO, sebelum memulai masuk ke blok begin end, ada kondisi yang harus dicek. Jika terpenuhi baru masuk ke blok BEGIN END dan terus-menerus diulang hingga kondisi tidak tercapai. Jadi bisa saja yang di dalam blok BEGIN END tidak dijalankan sama sekali.
Contoh penggunaan:
i:=1;
WHILE i<6 DO
BEGIN
Writeln(i);
i:=i+1;
END;
3. Repeat … until
Syntax:
REPEAT
…apa_yang_dilakukan…
UNTIL kondisi
Ini adalah kebalikan dari WHILE DO, jika pada WHILE DO, sebelum menjalankan statement, maka kondisi dicek terlebih dahulu. Maka sebaliknya, pada REPEAT UNTIL, program menjalankan statement dalam blok BEGIN END satu kali terlebih dahulu, baru di akhir dilakukan pengecekan kondisi. Jika kondisi terpenuhi, maka Blok statement akan diulang lagi, sampai kondisi sudah tidak terpenuhi. Jadi, minimal blok program dalam REPEAT UNTIL dijalankan satu kali.
Contoh penggunaan:
i:=1;
REPEAT
Writeln(i);
i:=i+5;
UNTIL i>5;
Nah, itu semua adalah dasar dari pemrograman Pascal. Untuk lebih lanjut akan dibahas pada waktu berikutnya (semoga saya sempat membuat tutorial berikutnya). Berikut ini saya berikan bonus program BINTANG BERGERAK MEMANTUL-MANTUL DI LAYAR.
PROGRAM BintangMantulMantulSampaiDitekanEscape;
USES crt;
CONST
lebar=80;
tinggi=25;
xawal=1;
yawal=1;
VAR
x,y : byte;
dx,dy : shortint;
c : char;
BEGIN
{inisialisasi awal}
x:=xawal;
y:=yawal;
dx:=1;
dy:=1;
c:=#0;
REPEAT
clrscr; {bersihkan layar}
gotoxy(x,y);
write('*'); {mencetak bintang pada posisi X,Y}
x:=x+dx; {ubah koordinat x}
y:=y+dy; {ubah koordinat y}
{cek, jika sudah sampai di batas layar,
maka ubah dx & dy untukk ganti arah}
IF (X>=lebar) OR (X<=1) THEN dx:=-dx;
IF (Y>=tinggi) OR (Y<=1) THEN dy:=-dy;
{jika ada penekanan tombol, maka tombol tersebut dideteksi}
IF keypressed THEN c:=readkey;
delay(100); {menunda selama 100ms}
UNTIL c=#27;
END.
Home
»
»Unlabelled
»
TUTORIAL TURBO PASCAL
Tuesday, 21 December 2010
Subscribe to:
Post Comments
(
Atom
)
Mau nanya kalau buat yg bintang mantul" itu,apa yg harus diubah dr program kalo saya mau tombol apapun dr key board yg ditekan akan keluar jd bukan cuma escape??
ReplyDeleteTrus bwt #0 sama #27 artinya apa?
terima kasih