Tuesday, May 18, 2010

Bahasa pemrograman Pascal

Sejarah Pascal Bahasa Pascal adalah bahasa pemrograman tingkat tinggi yang berorientasi pada segala tujuan, dirancang oleh Professor Niklaus Wirth dari Technical University di Zurich, Switzerland. Nama pascal diambil sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan philosopi terkenal abad 17 dari Perancis.
Struktur Program Pascal Secara singkat struktur suatu program Pascal adalah sebagai berikut.
1. Judul Program
2. Blok Program
a. Bagian Deklarasi - Deklarasi label - Definisi konstanta - Definisi tipe - Deklarasi variabel - Deklarasi
prosedur - Deklarasi fungsi
b. Bagian pernyataan.
Judul program tidak mutlak harus ditulis karena judul program bersifat informatif belaka dan tidak mempengaruhi dalam program itu sendiri. Bagian deklarasi atau definisi adalah bagian yang digunakan untuk mendefinisikan/mendeklarasikan suatu label, konst anta, jenis data variabel, prosedur dan fungsi. Bagian pernyataan atau statement adalah bagian yang dipergunakan untuk menulis instruksi yang akan dikerjakan oleh komputer. Bagian ini diawali oleh kata begin dan diakhiri dengan kata end dan diikuti sebuah titik(.). Antara dua pernyataan dipisah oleh simbol semi - colon(;), dan sebuah pernyataan boleh ditulis satu baris atau lebih.
Bentuk umum :
Program …;
Uses …;
Label …;
Const …;
Type …;
Var …;
Procedure …;
Begin;
End;
Function
Begin
End;
Begin
Statement
. . .
End.

Tipe-Tipe Data Pascal
Turbo Pascal telah menyediakan banyak jenis data. Selain tipe bawaan, pemrogram dapat
membuat sendiri tipe data baru. Secara garis besar, tipe data dalam Pascal terdiri atas :
1. Tipe data Sederhana
a. Tipe data standar
- integer
- real
- char
- string
- boolean
b. Tipe data didefinisikan pemakai
- enumerated atau scalar type
- subrange type
2. Tipe data terstruktur, terdiri dari :
a. Array
b. Record
c. File
d. Set
3. Tipe data penunjuk (pointer)
Statemen Input/Output
Statemen input/output dalam Pascal menggunakan prosedur standar read/readln dan
write/writeln. Untuk pencetakan (output) data yang dicetak dapat berupa konstanta, variabel, atau
nilai yang dikembalikan fungsi. Sedangkan jenis yang da ta yang dapat dicetak adalah bilangan,
karakter (ASCII) dan Boolean, sintaknya :
Write(dat1,data2,dat3,…);
Writeln(dat1,data2,dat3,…);
Read/readln hanya dapat menerima data berupa satu atau lebih variabel. Jenis data yang
dapat diterima meliputi bilangan bulat, bilangan pecahan, karakter dan string.
Sintaknya :
Read(dat1,data2,dat3,…);
Readln(dat1,data2,dat3,…);
Perbedaan read dan redln adalah prosedur readln membaca data sampai ditekan tombol enter.
Demikian juga perbedaan write dengan writeln, pros edur writeln akan menempatkan qursor ke
baris baru kolom awal.
Percabangan
Ada 2 macam statemen yang digunakan yaitu: If dan case
1. Statemen If
Struktur dari statemen If dapat berupa If-then atau If-Then-Else sintak :
If ungkapan Then statemen
Ungkapan adalah kondisi yang akan diseleksi oleh statemen If. Bila kondisi yang
diseleksi terpenuhi, maka statemen yang mengikuti then akan diproses, jika kondisi tidak
terpenuhi maka yang akan diproses adalah statemen berikutnya.
If kondisi Then statemen1 else statemen2
Statemen1 atau dapat berupa blok statemen akan diproses bilamana kondisi yang
diseleksi benar (terpenuhi) sedang statemen2 atau dapat berupa blok statemen akan diproses
bilamana kondisi yang diseleksi tidak terpenuhi.
2. Statemen Case
Statemen Case dapat berbentuk struktur Case-of atau Case-of…Else.
Bentuk dari struktur case-of :
Case ungkapan Of
Daftar case-label1: statemen1;
Daftar case-label2: statemen2;
Daftar case-label3: statemen3;
. . .
Daftar case-labeln : statemenn;
Else
Daftar case-labelx : statemenx;
End;
Bila tidak ada kondisi yang terpenuhi maka statemen yang akan diproses di dalam
lingkungan Case-of adalah statemen yang ada di Else.
Perulangan
Bahasa Pascal memberikan 3 jenis struktur program untuk perulangan dan sebuah
statemen goto.
1. Statemen For … to /downto … do …
Pernyataan ini akan melakukan perulangan dari suatu nilai awal sampai nilai akhir yang
telah ditentukan. Statemen downto merupakan perulangan negatif dari nilai paling tinggi sampai
nilai paling rendah.
Sintak :
Perulangan positif :
For variabel-kontrol := nilai-awal To nilai-akhir Do statemen
Perulangan negatif :
For variabel-kontrol:=nilai-awal Down-to nilai-akhir Do statemen
Variabel-kontrol, nilai-awal, nilai-akhir mempunyai tipe yang sama yaitu bertipe integer.
2. Statemen While … do …
Pernyataan while akan melakukan pengujian kondisi bila kondisi tersebut terpenuhi,
maka proses dilakukan, bila tidak maka proses dilanjutkan ke pernyataan berikutnya.
Sintak :
While ungkapan-logika Do statemen
3. Statemen Repeat … Until …
Pernyataan repeat akan memproses pernyataannya dulu sampai klausa until tidak
terpenuhi. Proses dilakukan selama kondisi salah.
Sintak :
Repeat statemen Until ungkapan
 Rekursif
Prosedur atau fungsi dipanggil lewat namanya baik itu di luar sub program maupun di
dalam sub program. Pemanggilan prosedur atau fungsi di dalam prosedur atau fungsi itu sendiri
disebut dengan rekursif. Struktur rekursif baik dipakai untuk beberapa algorit ma yang sulit.
Perbandingan rekursif ini dengan perulangan (iterasi) adalah pada rekursif setiap pemanggilan
akan menggunakan memori.
Procedure dan fungsi
Dalam bahasa pemrograman yang terstruktur, program yang besar dapat dipecah menjadi
bagian-bagian yang lebih kecil yang dinamakan dengan subprogram. Biasanya subprogram berisi
suatu fungsi atau prosedur tugas tertentu.
1. Procedure
Suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program
bagian). Prosedur diawali dengan kata cadangan Procedure di dalam bagain deklarasi prosedur.
Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan
judul dan prosedurnya.
Sintak :
Program judul-program;
Procedure judul-prosedur;
Begin
. . .
End;
Begin
. . .
End.
2. Function
Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus dideklarasikan
dengan tipenya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Tipe tersebut ditulis pada
akhir deklarasi fungsi yang didahului dengan titik koma, sebagai berikut.
Function identifier(dafta-parameter) : type;
Contoh :
Function faktorial(var Fak, hasil : integer) : integer;
Turbo Pascal menyediakan beberapa tipe ters truktur seperti array, record, file dan set.
Dalam bab ini yang akan dibahas adalah array, set dan record.
Array
Array merupakan kumpulan data yang sejenis dan disimpan dalam memori komputer.
Setiap elemen array dibedakan atas indeksnya. Indeks adalah batas bawah dan batas atas indeks
yang menyatakan jumlah anggota dalam array. Beberapa indeks dapat dibuat sekaligus dengan
simbol pemisah adalah tanda koma (,), yang berarti dimensi array lebih dari satu. Elemen boleh
bertipe apa saja tetapi indek tipenya harus ordinal.
Set
Suatu set (himpunan) adalah suatu kumpulan dari obyek yang mempunyai urutan yang
dianggap sebagai suatu kesatuan. Tiap-tiap obyek di dalam set disebut dengan anggota (member)
atau elemen himpunan (elemen of the set). Anggota -anggota dari set harus mempunyai tipe yang
sama dan disebut dengan base type dan base type harus berbentuk tipe data sederhana yaitu
bertipe ordinal (integer,boolean,char,skalar kecuali real).
Sintak : Set of tipe ordinal
Contoh
Type
Jumlah = set of char
Pembentuk set (set constructor) ,menunjukkan elemen elemen yang digunakan di dalam
ungkapan set. Set construcot terdir i dari satu atau lebih elemen jangkauan dari elemen yang
dipisahkan dengan koma dan diletakkan diantara kurung bracket (‘[‘ dan ‘]’).
Contoh :
[2,3,5,7,11] : nilai integer 2,3,5,7, dan 11
Type
karakter = set of ‘a’..’z’
var
hurufku : karakter;
Record
Sebuah record berisi beberapa komponen atau fields yang dapat berbeda tipenya. Setiap
fields adalah list identifier dipisah koma, diikuti oleh simbol titik dua dan sebuah tipe. Deklarasi
tipe data record diawali dengan kata cadangan record dan diiku ti oleh suatu daftar field dan
diakhiri dengan kata cadangan End.
Sintak :
type
Record
Daftar field
End
Contoh :
Type
Mhs = Record
Npm : string[8];
Nama : string[30];
Nilai : byte
End;
Var
RecordMhs : Mhs;
Tiap komponen field dari record dapat dipergunakan dengan cara menuliskan:
Pengenal-record.pengenal-field[.pengenal-field]
RecordMhs.Npm:=’51295801’;
RecordMhs adalah pengenal -field dan Npm adalah pengenal -field.
Statemen With
Statemen with menyebutkan pengenal record, sehingga penggunaan field -field
selanjutnya tidak perlu menyebutkan pengenal record.
Contoh :
With recordMhs do
Begin
Npm :=’51295801’
Nama := ‘Ipunk’;
Nilai := ‘90’;
End;
Di dalam bahasa Pascal dikenal tiga macam tipe dari file, yaitu file teks, file bertipe dan
file tak bertipe.

No comments:

Post a Comment