BAHASA PASCAL
1. Sejarah PASCAL
merupakan pengembangan dari bahasa ALGOL 60, bahasa pemrograman
untuk sains komputasi. Tahun 1960, beberapa ahli komputer bekerja untuk
mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari
Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan
anggota grup yang membuat ALGOL. Tahun 1971, dia menerbitkan suatu
spesifikasi untuk highly-structured language (bahasa tinggi yang
terstruktur) yang menyerupai ALGOL. Dia menamainya dengan PASCAL
(seorang filsuf dan ahli matematika dari Perancis) Pascal bersifat data
oriented, yaitu programmer diberi keleluasaan untuk mendefinisikan data
sendiri. Pascal juga merupakan teaching language (banyak dipakai untuk
pengajaran tentang konsep pemrograman). Kelebihan yang lain adalah
penulisan kode Pascal yang luwes, tidak seperti misalnya FORTRAN, yang
memerlukan programmer untuk menulis kode dengan format tertentu. Bentuk
dasar program Pascal adalah seperti berikut:
program TITLE ;
begin pernyataan;
pernyataan
end.
2. PASCAL sebagai bahasa terstruktur
Sebagai bahasa
terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut:
1. Berurutan
Susunan dari kode-kode dalam teks Pascal harus ditulis secara urut dari
atas, pernyataan-pernyataan yang ditulis lebih awal akan dieksekusi
lebih dahulu. Oleh karena itu, suatu pernyataan yang menyangkut suatu
variabel di dalam program, maka variable itu harus terdefinisi dahulu
sebelumnya. Hal ini terutama menyangkut pada pemanggilan sub-program
oleh sub-program yang lain. Bisa dibaca lebih lanjut pada bagian
sub-program.
2. Blok dengan batas-batas yang jelas.
Pascal memberikan
pembatas yang jelas pada tiap-tiap blok, seperti pada blok program
utama, sub-program, struktur kontrol (pengulangan/ pemilihan), dll.
Pemakaian kata kunci begin untuk mengawali operasi pada blok dan end
untuk menutupnya memudahkan programmer menyusun programnya dengan mudah.
Seperti contoh: If X>0 then
begin Write ( ‘ bilangan positif’);
Writeln
( ‘ program selesai’);
end;
3. Satu pintu masuk dan satu pintu keluar pada blok pemilihan dan
pengulangan. Contoh di atas juga mengilustrasikan pintu masuk tunggal
pada suatu blok pemilihan yaitu suatu test logika X>0, dengan pintu
keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah
output tapi suatu paket perintah yang dirangkai dengan begin .. end.
3. Bakuan PASCAL
Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa
versi, diantaranya: USCD PASCAL, MS PASCAL, TURBO PASCAL dll. Dengan
semakin berkembangnya teknologi dalam komputasi, Pascal dimanfaatkan
untuk pengembangan DELPHI (berasal dari nama suatu kota di masa Yunani
kuno), suatu bahasa pemrograman visual yang menonjolkan pada efek grafis
dan orientasi pada objek-objek yang siap dipakai, karena memiliki Visual
Component Library (VCL).
4. Struktur Bahasa PASCAL secara umum
Pascal mempunyai struktur sebagai berikut:
1. Bagian Judul Program
2. Bagian Deklarasi
a. Deklarasi tipe data (TYPE)
b. Deklarasi variabel (VAR)
c. Deklarasi konstanta (CONST)
d. Deklarasi label (LABEL)
e. Deklarasi sub-program (PROCEDURE dan FUNCTION)
3. Bagian Program Utama Perintah-perintah.
Teks Pascal setidaknya memiliki bagian Judul Program, bagian
Deklarasi, dan Bagian Program Utama yang berupa perintah-perintah.
Sedangkan untuk bagian deklarasi menyesuaikan dengan isi dari program
itu sendiri. Contoh program PASCAL:
program TAMBAH_00; { Menjumlahkan dua bilangan yang nilainya diberikan
dalam perintah}
var X, Y, Z: integer; { Deklarasi variabel X,Y dan Z sebagai bilangan
bulat }
BEGIN { Program Utama Mulai }
X := 50; { Perintah memberikan nilai 50 pada var. X }
Y := 25; { Perintah memberikan nilai 25 pada var. Y }
Z := X + Y; { Perintah menjumlahkan X dan Y serta menyimpan hasilnya ke
Z}
END. { Akhir Program Utama }
Pada contoh ini nilai X dan Y tidak bisa sembarang, karena didefiniskan
tertentu. Agar nilai X dan Y bisa bebas ditentukan, nilai X dan Y dibaca
dari default input.
program TAMBAH_01; { Menjumlahlan dua buah bilangan yang
dibaca dari default input }
var X, Y, Z: integer; { Deklarasi variabel X,Y dan Z sebagai bilangan
bulat }
BEGIN { Program Utama Mulai }
read(X); { Membaca nilai X lewat key-board }
read(Y); { Membaca nilai Y lewat key-board }
Z := X + Y; { Menjumlahkan X dan Y serta menyimpan hasilnya ke Z }
write(Z); { Menyajikan Z ke layar monitor }
END. { Akhir Program Utama }
Dasar Bahasa PASCAL
Unsur-unsur Pemrograman
a. Mendapatkan data dengan membaca data dari default input (key board,
file atau sumber data lainnya).
b. Menyimpan data ke dalam memori dengan struktur data yang sesuai,
c. Memproses data dengan instruksi yang tepat.
d. Menyajikan atau mengirimkan hasil olahan data ke default output
(monitor, file atau tujuan lainnya).
Dalam mengolah data diperlukan pengelolaan instruksi terstruktur:
a. Beberapa instruksi dikelompokkan dalam satu blok atau model yang
mengerjakan tugas tertentu.
b. Beberapa perintah dilaksanakan dengan persyaratan tertentu.
c. Beberapa perintah dilaksanakan berulang dengan jumlah pengulangan
tertentu. Identifier Digunakan untuk nama: Program, Sub-program
(procedure dan function),
nama: Variable, Constant, Type, Label.
Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program.
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:
Penulisan yang benar: X _PQR Beta Sudut_Alpha luasLingkaran
Penulisan yang salah: 3D sisi-Kanan B#
Jenis identifier
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 sendiri (Kita tidak bisa menamai identifier kita dengan
ini).
and array begin case const div do downto else end file for forward
function goto if in label mod nil not of or packed procedure program
record repeat set then to type until var while with Deklarasi Variable:
Mendeklarasikan varibel adalah:
a. Memberikan nama variabel sebagai
identitas pengenal
b. Menentukan tipe data variabel
Contoh deklarasi
variabel:
var K : integer;
R : real;
C : char;
T : boolean;
Beberapa
identifier yang sejenis bisa dideklarasikan bersamaan.
var i, j, k :
integer;{Variabel i, j dan k sebagai integer}
namaMHS, alamatMHS : char;
{Nama dan alamat mahasiswa }
Deklarasi Konstanta:
Mendeklarasikan
konstanta adalah:
a. Memberikan nama konstanta sebagai identitas
pengenal
b. Menentukan nilai konstanta
Contoh deklarasi konstanta:
const
MaximumSize = 100; {integer }
ExitCommand = 'Q'; {char }
Tipe Data
Tipe data yang disediakan oleh PASCAL meliputi:
1. Tipe Data Sederhana
merupakan tipe data dasar yang sering dipakai oleh program, meliputi:
integer (bilangan bulat), real (bilangan pecahan), char (alphanumerik
dan tanda baca), dan boolean (logika). Untuk data integer dan real
masing-masing terbagi menjadi beberapa kategori
a. Bilangan Integer
merupakan tipe data berupa bilangan bulat, terbagi
atas beberapa kategori seperti terlihat dalam tabel 1. tabel 1
menunjukkan jenis data, ukuran dalam memori dan rentang nilainya.
tabel 1. Tipe Data Bilangan Integer
| Tipe Data |
Ukuran Tempat |
Rentang Nilai |
| Byte |
1 byte |
0 s/d +255 |
| Shortint |
1 byte |
-28 s/d +127 |
| integer |
2 bytes |
-32768 s/d 32767 |
| Word |
2 bytes |
0 s/d 65535 |
| Longint |
4 bytes |
2147483648 s/d 2147483647 |
Contoh bilangan integer
adalah: 34 6458 -90 0 1112 Penggolongan tipe data integer tersebut
dimaksudkan untuk membatasi alokasi memori yang dibutuhkan misalkan
untuk suatu perhitungan dari suatu variabel bilangan diperkirakan nilai
maksimumnya 32767 kita cukup mendeklarasikan variabel bilangan sebagai
integer (2 byte), daripada sebagai longint(4 byte). Di dalam
kompilernya, Pascal menyediakan konstanta untuk bilangan Integer yaitu:
MaxInt and MaxLongInt, pemrogram bisa menggunakannya di dalam programnya
tanpa harus terlebih dahulu mendefinisikannya.
-MaxInt bernilai 32.767
-MaxLongint bernilai 2.147.483.647.
contoh:
Program display_maxint;
uses
wincrt;
begin writeln (maxint)
end.
Hasilnya: 32.767
b. Bilangan
Real
Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat
dituliskan secara biasa atau model scientific . Contoh bilangan real:
34.265 -3.55 0.0 35.997E+11, dimana E merupakan simbol perpangkatan 10.
Jadi 452.13 mempunyai nilai sama dengan 4.5213e2. Penggolongan tipe data
bilangan real dapat dilihat pada tabel 2.
tabel 2. Bilangan Real
| Tipe Data |
Ukuran Tempat |
Rentang Nilai |
| real |
6 bytes |
2.9 x 10-39 s/d 1.7 x1038 |
| single |
4 bytes |
1.5 x 1045 s/d 3.4 x 1038 |
| double |
8 bytes |
5.0 x 10-324 s/d 1.7 x 10308 |
| extended |
10 bytes |
3.4 x 10-4932 s/d 1.1 x 104932 |
| comp |
8 bytes |
-9.2x 1018 s/d 9.2x 1018 |
c. Char
tipe data ini menyimpan
karakter yang diketikkan dari keyboard, memiliki 266 macam yang terdapat
dalam tabel ASCII (American Standard Code for Information Interchange).
Contoh: 'a' 'B' '+', dsb. Yang perlu diingat bahwa dalam menuliskannya
harus dengan memakai tanda kutip tunggal. Jenis data ini memerlukan
alokasi memori sebesar 1(satu) byte untuk masing-masing data.
d.
Tipe Data Boolean
merupakan tipe data logika, yang berisi dua
kemungkinan nilai: TRUE (benar) atau FALSE (salah). Turbo Pascal for
Windows memiliki tiga macam jenis ini yaitu: Boolean, WordBool, dan
LongBool. Tipe boolean memakai memori paling kecil, sedangkan WordBool
dan LongBool dipakai untuk menulis program yang sesuai dengan lingkungan
Windows.
Tabel 2. Tipe Data Boolean
| Tipe Data |
Ukuran Tempat |
| Boolean |
1 byte |
| WordBool |
2 byte |
| Longbool |
3 byte |
Sebagai bilangan ordinal boolean true
mempunyai nilai 1(satu), sedangkan false nilainya adalah 0(nol).
Contoh:
Program display_bool;
uses wincrt;
begin writeln(ord(true));
writeln(ord(false));
end.
Hasilnya: 1 0 3.2.
|