Senin, 11 Oktober 2010

DEKLARASI DALAM PASCAL

STRUKTUR SUATU BAHASA PEMROGRAMAN
Struktur dari suatu program pascal terdiri dari sebuah judul program dan suatu blok program atau badan program. Blok program dibagi lagi menjadi dua bagian, yaitu : bagian deklarasi dan bagian pernyataan. Secara ringkas, struktur suatu program pascal dapat terdiri dari :
  1. Program heading/Judul Program
Biasanya diawali dengan kata tercadang program, yang diikuti judul program dan diakhiri dengan ‘tanda titik koma (;)’. Sebelum tanda ; boleh ada sejumlah parameter yang diawali dengan ‘ ( ‘ dan diakhiri dengan ‘ ) ’. Diantara satu parameter berikutnya (jika ada) harus dipisahkan dengan tanda ‘ , ‘ .
Contoh :
Program BacaData;
Program Mhs(Baca, Edit);
Program TampilData(cetak_ke_layar);


Biasanya judul program bersifat ‘Optional’ , hanya bersifat ‘menjelaskan’ dari program yang dibuat serta tidak ada pengaruhnya dalam program. Jika ditulis akan memberikan nama program dan suatu daftar parameter optional dimana program itu berkomunikasi. Daftar itu bisa terdiri dari sederetan indentifier yang diakhiri dengan tanda kurung dan dipisahkan dengan tanda koma.

Contoh :
Program Latihan(Input,Output);

Uses Clause

Bagian uses clause digunakan untuk menentukan library yang dibutuhkan saat proses program. LIBRARY merupakan file penyimpan subroutine yang secara berulang digunakan saat proses program. Library ini diistilahkan sebagai unit dalam Turbo PASCAL yang terdiri dari SYSTEM, OVERLAY, GRAPH, DOS, CRT, WINCRT yang ditempatkan dalam file TURBO.TPL.
Karena di perkuliahan kita menggunakan Turbo Pascal For Windows 1.5 maka hal ini tidak perlu dibahas secara mendalam, intinya kita hanya menerapkan Uses Clause pada unit WINCRT.
Sebagai catatan, Unit system merupakan unit yang secara otomatis akan disertakan dalam setiap program, unit inilah yang mengatur semua perintah dasar input dan output pada Pascal. Sedangkan unit-unit lain hanya akan disertakan bila kita pilih pada bagian uses.

Contoh penerapan :

Uses WinCrt; (menggunakan Unit WinCrt)

  1. Bagian Deklarasi
Bagian ini meliputi deklarasi untuk label, const, type, var, procedure dan function.
Syarat terpenting dalam pembentukan suatu program adalah, bahwa setiap variabel, type non-standard, label, procedure non-standard, serta function non-standard yang dipakai didalamnya harus di-“nyatakan” / di-“deklarasi”kan terlebih dahulu pada bagian deklarasi. Setiap deklarasi tersebut harus bersifat unik (tidak boleh serupa satu sama yang lain).
Penulisan nama dalam deklarasi tersebut harus memenuhi syarat-syarat sebagai berikut :
- panjang nama maximum 63 character, diawali dengan alphabet
- tidak ada special character kecuali tanda garis bawah / underscore (”_”)
- tidak boleh serupa dengan reserved word (kata tercadang)
- tidak boleh serupa dengan indentifier lainnya.

Ketentuan penulisan identifier :
a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A sampai Z atau karakter ‘_’ (underscore / garis bawah)
b. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik (huruf-numerik).
c. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63.
d. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ?

Contoh Penulisan yang benar : w_1ro Alpha Satu_Sisi luasPersegi

Contoh Penulisan yang salah : 3D satu-Sisi C#

Jenis identifier, yaitu:
a. Identifier umum
Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram mempunyai kebebasan untuk menentukan nama identifiernya, dengan syarat nama tersebut tidak sama dengan identifier standar dan reserved word yang akan dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul akibat tumpang tindih identifier dalam program.

b. Identifier Standar (Baku)
Merupakan identifier yang didefinisikan oleh pembuat kompiler Pascal. Biasanya pembuat kompiler menyediakan suatu library yang sudah ada didalam kompiler. Library berisi berbagai procedure, fungsi atau unit yang sudah siap pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh programmer di dalam menuliskan kode-kode programnya.

Dinamai Identifier Standar karena suatu kompiler tidak harus memilikinya, masing-masing kompiler dimungkinkan mempunyai identifier yang berbeda untuk suatu tugas yang hampir sama, misalnya Turbo Pascal versi DOS menggunakan crt untuk melakukan fungsi yang sama dengan wincrt (TPW 1.5).

Beberapa Identifier Standar yang dimiliki oleh kompiler-kompiler Pascal antara lain:
abs arctan boolean char cos dispose eof eoln exp false input integer ln maxint new odd ord output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunc write writeln

c. Identifier “reserved word”
yaitu yang sudah didefinisikan dan digunakan oleh bahasa PASCAL itu sendiri (Kita tidak bisa menamai identifier kita dengan ini).

Penjelasan tentang macam-macam deklarasi
    • Deklarasi label (LABEL)
Menyatakan lokasi tempat pernyataan yang dituju oleh pernyataan GOTO dalam program. Dalam Pascal semua label yang akan digunakan dalam program harus dideklarasikan dalam deklarasi label. Label digunakan bersamaan dengan keyword GOTO. GOTO sendiri jarang digunakan karena tidak efisien dan cenderung membingungkan penggunanya.

Bentuknya :
LABEL
Daftar_Label;

Contoh :
LABEL
100, selesai;
Menyatakan ada 2 buah Label dalam program yaitu 100 dan Selesai.
Program Contoh_Label;
Label
100, selesai;
Begin
writeln( ‘ Bahasa Pemrograman ‘ );
GOTO 100;
writeln( ‘ Visual Basic ‘ );
writeln( ‘ Visual Foxpro ‘ );
100 :
writeln( ‘ Turbo Pascal ‘ );
GOTO Selesai;
writeln ( ‘ Delphi ‘ );
Selesai :
readln;
end.

    • Deklarasi konstanta (CONST)
Digunakan untuk mendefinisikan ‘nama konstanta’ yang akan digunakan dalam program. Const digunakan untuk mendeklarasikan suatu konstan. Konstan merupakan suatu keyword yang memiliki nilai tertentu dan nilainya tidak berubah di dalam program. Misalnya bila anda mendeklrasikan PI sebagai 3.14, maka ketika anda menggunakan PI pada baris program, PI akan digantikan dengan 3.14.
Bentuk (konstanta tidak bertipe) :
CONST
Pengenal_1 = konstanta_1;
.
.
Pengenal_n = konstanta_n;
Contoh :
CONST
Diskon = 0.20;
Beli = 1000;
Toko = ‘PT. TEKNIK KOMPUTER’

Contoh diatas mendefinisikan : Diskon sebesar 20% dengan jumlah pembelian sebesar 1000 pada PT. TEKNIK KOMPUTER.
Selama didalam program nilai diatas tidak dapat diubah. Konstanta ini berguna jika memang mengharapkan suatu pengenal akan ‘bernilai tetap’ selama program berjalan.
Bentuk (konstanta bertipe) :
CONST
Pengenal_1 = tipe_1 = konstanta_1;
.
.
Pengenal_n = tipe _n = konstanta_n;
Contoh :
CONST
Diskon = 0.20;
Beli = 1000;
Toko = ‘PT. TEKNIK KOMPUTER’
Konstanta bertipe dianalogikan dengan ‘variabel’ yang diberi nilai awal dan nilainya juga dapat diubah dalam bagian ‘pernyataan’

Contoh :
CONST
Diskon = 0.20;
Beli = 1000;
Toko = ‘PT. TEKNIK KOMPUTER’;
begin
writeln( ‘ Diskon : ‘, Diskon );
writeln( ‘ Beli : ‘, Beli );
writeln( ‘ Toko : ‘, Toko );
end.
Hasil eksekusi :
Diskon : 0.20
Pembelian : 1000
Toko : PT. TEKNIK KOMPUTER

Artinya dalam program tadi terdapat 3 konstanta. Nilai konstanta tersebut ditampilkan dengan pernyataan ‘writeln’ .

    • Deklarasi tipe data (TYPE)
Digunakan untuk mendefinisikan nama tipe data baru, yang diawali dengan kata tercadang ‘TYPE’. Juga digunakan untuk mendeklarasikan suatu tipe data baru dari tipe data yang sudah ada sebelumnya. Berguna ketika harus menggunakan pointer.
Bentuk :
TYPE
Pengenal_1 = tipe_1;
.
.
Pengenal_n = tipe_n;
Contoh :
TYPE
Bil = Integer;
Kar = Char;
Mendefinisikan identifier Bil dengan tipe integer dan Kar dengan tipe Char.

Tipe Data pada Pascal :
1. Tipe data sederhana,
a. Tipe data standar, yakni :
- Integer - Char - String
- Real - Boolean
b. Tipe data didefinisikan pemakai,
- Enumerated
- Subrange
2. Tipe data terstruktur,
- Array - Record
- File - Set
3. Tipe data penunjuk,
Tipe data yang dipergunakan didalam program, dapat
dilakukan dengan mendeklarasikan pengenal variabelnya
pada bagian deklarasi variabel dan sesuai dengan tipe data
yang akan dipergunakan.

  • Deklarasi variable (VAR)
Dapat diartikan pemesan tempat dalam memory komputer dan penentuan jenis data disimpan didalamnya. Kata cadang ‘VAR’ digunakan sebagai judul didalam bagian deklarasi variabel dan diikuti oleh daftar variabel dapat berupa satu atau sejumlah variabel dan jika lebih dari satu variabel antara variabel satu dengan variabel lainnya dipisahkan dengan variabel lainnya dipisahkan dengan tanda koma, diikuti dengan titik dua dan tipe datanya diakhiri dengan tanda titik koma.
Bentuknya “Var” digunakan untuk mendeklarasikan suatu variabel. Variabel yang dideklarasikan harus memiliki tipe data tertentu.

Bentuknya:
VAR
Daftar_variabel_1 : tipe_1
.
.
Daftar_variabel_n : tipe_n
Contoh :
VAR
TotBayar, Beli, Diskon, Real;
Keterangan : String [25];
Begin
Beli := 100000;
Diskon := 0.20 * Beli;
TotBayar := Beli – Diskon;
Keterangan := ‘ Pelanggan ’;
writeln ( ‘ Pembelian : Rp ‘, Beli ‘);
writeln ( ‘ Diskon : Rp ‘, Diskon ‘);
writeln ( ‘ Total Bayar : Rp ‘, TotBayar ‘);
writeln ( ‘ Keterangan : Rp ‘, Keterangan ‘);
End.
Hasil :
Pembelian : 100000.00
Diskon : 20000.00
Total Bayar : 80000.00
Keterangan : Pelanggan

  • Deklarasi prosedur (PROCEDURE dan FUNCTION)
Prosedur merupakan bagian yang terpisah dari program dan bisa diaktifkan didalam program. Kata cadang ‘PROCEDURE’ digunakan sebagai bagian dari judul dari bagian deklarasi prosedur, diikuti oleh sekumpulan parameter yang diakhiri dengan ‘tanda titik koma’. Procedure dan function merupakan sub-program. Procedure tidak mengembalikan
nilai, sedangkan function mengembalikan nilai. Procedure dan function mengandung suatu penggalan program yang dapat dipanggil oleh program utama atau sub-program yang lainnya. Bila anda belum mengerti maksud dari “mengembalikan nilai” maka anda dapat membayangkan bahwa hasil dari function dapat dimasukkan ke dalam suatu variabel atau menghasilkan suatu nilai, sedangkan procedure hanya menjalankan suatu potongan program. Contoh procedure adalah writeln dan clrscr karena kedua procedure tersebut tidak mengembalikan nilai apapun. Sedangkan contoh function adalah “sqrt” yang akan mengembalikan nilai berupa akar kuadrat dari bilangan yang dimasukkan. Sebagai informasi: “procedure” adalah istilah yang digunakan pada Pascal. Pada bahasa pemrograman yang lainnya, biasa disebut “function yang tidak mengembalikan nilai” atau “void function”.


Contoh :
Prosedur jumlah (A,B : integer ; var Tambah : integer);
Begin
Tambah := A + B;
End;
Var
Jum := integer;
Begin
jumlah(5, 6, Jum);
writeln( ‘ 5 + 6 = ‘ , Jum);
End.

  • Deklarasi fungsi
Merupakan bagian program yang terpisah, hampir sama dengan Prosedur. Fungsi akan menghasilkan sebuah nilai jika dipanggil dan fungsi tidak dapat berdiri sendiri secadang FUNCTION bagai pernyataan, melainkan sebagai Operand. Kata mengawali bagian deklarasi fungsi, diikuti dengan nama fungsinya dan secara optional dapat diikuti oleh sekumpulan parameter, tipe dari fungsinya dan diakhiri dengan titik koma. “USES” merupakan deklarasi penggunaan unit dalam Turbo Pascal. Unit merupakan bagian dari program yang berisi kumpulan function dan procedure. Contoh fungsi yang banyak digunakan adalah CRT, dengan function yang terdapat di dalamnya yaitu clrscr dan readkey. Anda dapat menjalankan suatu program tanpa menggunakan USES, akan tetapi anda hanya dapat menggunakan function dan procedure yang sudah terkandung secara native dalam Turbo Pascal. Contohnya anda tidak dapat menggunakan clrscr atau readkey tanpa CRT, tetapi bisa menggunakan writeln dan readln tanpa CRT tersebut karena CRT merupakan unit untuk pengolahan output ke layar dan input dari keyboard. Unit ini juga digunakan untuk memanipulasi layar teks (windowing, peletakan cursor di layar, Color pada teks, kode extended keyboard dan lain sebagainya.

Contoh :
FUNCTION Jumlah(A, B : integer) : integer;
Begin
Jumlah := A + B;
End;
Begin
writeln( ‘ 5 + 6 ‘, Jumlah(5,6) );
End.
Lengkap tidaknya suatu deklarasi tergantung dari program itu sendiri, artinya dapat saja suatu program tidak mengandung deklarasi samasekali, bahkan tidak mengandung judul program.
Misal :
Begin
Writeln( ‘ PEMROGRAMAN TERSTRUKTUR ‘ );
end.
Dalam Pascal, deklarasi tidak harus ditulis terurut misalnya daklarasi variabel dapat disimpan setelah deklarasi fungsi atau prosedur, hanya jika ada variabel yang mempunyai tipe yang didefinisikan dalam deklarasi tipe, maka deklarasi tipe harus ditempatkan sebelum deklarasi variabel.

C. Bagian Pernyataan
Merupakan bagian program yang berisi perintah yang akan dijalankan. Pada Pascal, bagian Statement selalu diawali dengan reserved word begin dan end. Apabila blok statement adalah blok utama program, maka reserved word end harus diakhiri dengan tanda titik (.), sebaliknya jika blok statement bukan blok utama program, maka reserved word end diakhiri dengan tanda titik koma (;).
Program pascal yang paling sederhana adalah program yang hanya terdiri dari sebuah bagian pernyataan saja.

Begin
End.

Bentuk umum dari bagian pernyataan adalah :

Begin
Statement;
End .

Contoh :

Begin
Writeln ( ‘Saya pascal’ );
Writeln ( ‘————–‘ )
End .

Outputnya : Saya pascal
—————

Program pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh ditulis mulai kolom berapapun. Penulisan statement-statement pada contoh program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh diproses, hanya
dimaksudkan supaya mempermudah pembacaan program, sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi.
Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma.

Contoh :

Program contoh ;
Begin
Writeln ( ‘pascal’ );
Writeln( ‘—————‘ );
End .


4 komentar: