KONSEP DASAR BAHASA PASCAL
Pengertian
Pemrograman / programming : adalah pekerjaan penulisan instruksi bagi
komputer untuk menyelesaikan suatu masalah.
Program : adalah himpunan instruksi yang
diperuntukkan bagi komputer, untuk menyelesaikan masalah yang diberikan.
Interpreter : menerjemahkan perintah baris demi baris dan
langsung melaksanakannya. contoh : BASIC.
Compiler :
menerjemahkan dulu seluruh perintah dalam bahasa mesin. Baru kemudian
terjemahan tersebut dijalankan oleh komputer. Contoh : FORTRAN, C, PASCAL.
2.1. Sejarah Singkat Bahasa PASCAL
Bahasa PASCAL pertama kali
dikembangkan pada awal tahun 70-an oleh NICLAUS WIRTH di Technical University
,
Zurich – Swiss.
Nama PASCAL diambil dari
nama seorang ahli matematika bangsa Perancis, yaitu BLEISE PASCAL yang telah
berjasa menemukan alat hitung mekanis pertama didunia pada abad ke-17.
Bahasa pemrograman ini
termasuk kategori “High Level Language”. Instruksi-instruksi yang digunakan
dalam bahasa pemrograman ini sangat sistematis dan terstruktur.
Pada Awalnya bahasa
pemrograman ini diperkenalkan dengan tujuan untuk menjelaskan masalah
pemrograman komputer bagi mahasiswa yang belajar pemrograman komputer.
Ternyata dalam waktu
singkat, nahasa pemrograman ini menjadi salah satu bahasa yang sangat populer
dikalangan universitas, sehingga menjadi julukan sebagai bahasa universitas.
Mulai dari awal
perkembangannya hingga saat ini banyak sekali jenis bahasa pemrograman ini,
masing-masing merupakan hasil pengembangannya, antara lain :
UCSD Pascal
Microsoft Pascal
Apple Pascal
Turbo Pascal
dsb
Diantara versi-versi yang
ada, Turbo Pascal merupakan versi yang sangat populer saat ini.
2.2. Struktur Dan Komponen Dasar Program Pascal.
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 (statement).
2.2.1. Struktur program :
Judul Program PROGRAM
nama-program;
Blok Program
Bagian deklarasi
- deklarasi label LABEL
nama-label;
- deklarasi konstanta CONST…………..;
- deklarasi tipe TYPE
…………….;
- deklarasi variabel VAR
……………...;
- deklarasi prosedur PROCEDURE
nama-prosedur;
……………………………….;
- deklarasi fungsi FUNCTION
nama-fungsi;
………………………….;
Bagian Pernyataan
Begin
(statement)
…………;
…………;
end.
Contoh : Menghitung luas bidang berbentuk empat
persegi panjang dengan panjang P
dan lebar L.
PROGRAM Luas; {Judul}
VAR P,L,Luas : real; {Deklarasi variabel}
BEGIN
Read (P,L); {Statemant}
Luas := P*L; {Statement}
Write (P,L,Luas); {Statement}
END.
Judul program
sifatnya adalah optional, dan bila ditulis, harus terletak pada awal dari
program dan diakhiri dengan titik koma.
Bagian deklarasi
digunakan bila di dalam program digunakan pengenal ( identifier). Identifier
dapat berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu
program menggunakan identifier, Pascal menuntut supaya identifier tersebut
diperkenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan terlebih
dahulu pada bagian ini.
Beberapa aturan dalam program Pascal :
·
Akhir sebuah program Pascal ditandai dengan tanda
baca titik (.) setelah END yang paling
akhir.
·
Tanda titik koma (;) merupakan pemisah antar
instruksi satu dengan lainnya.
·
Beberapa statement boleh ditulis menjadi satu baris
dipisahkan dengan tanda baca titk koma (;)
Contoh : simpan := akhir;
akhir := simpan + awal;
·
Baris komentar diletakkan diantara tanda (* dan *)
atau diantara tanda { dan }
Contoh : Var rerata : real; (*nilai
rata-rata*)
Nil1 : real; {nilai
ujian}
Statement
(pernyataan)
Adalah instruksi atau gabungan
instruksi, yang menyebabkan komputer melakukan aksi.
Type statement dalam Pascal terdiri atas :
1.
Sederhana :
- menandai sebuah
item data ke sebuah variabel (assigment statement)
contoh : X := Y * 4.135
-
pemanggilan procedure dan goto statement
2.
Terstruktur:
- Compound
Statement
contoh : Begin
read (x) ;
y := x + 5;
write (y)
End.
- Repetitive Statement
contoh : For
I := 1 to 100 do
write (count);
- Conditional Statement
contoh : If
x > 100 then write (s)
else write (p) ;
2.2.2. Komponen Dasar Program Pascal
Pola susun bahasa
Pascal dibentuk dengan menggunakan komponen bahasa pemrograman yang umum, yaitu
:
1.
Simbol Dasar
2.
Reserved Word (kata pasti)
3.
Identifier (penyebut)
1. Simbol Dasar.
Simbol dasar
terdiri atas :
1.
Simbol huruf, yaitu huruf A sampai dengan Z atau a
sampai dengan z.
(huruf besar dan
kecil).
2.
Simbol angka atau digit yaitu : 0,1,2,3,4,5,6,7,8,9.
3.
Simbol khusus, yaitu
+ -
* / ;
:= , ‘
= < >
<= >= <>
: { } ( ) [ ]
2. Reserved Word (kata pasti)
Reserved Word
adalah suatu kata yang secara mutlak tidak boleh diartikan lain dan harus
digunakan sebagaimana yang telah didefinisikan atau ditentukan kegunaanya oleh
bahasa Pascal. Reserved word ini tidak boleh didefinisikan ulang oleh pemakai,
sehingga tidak dapat dipergunakan sebagai pengenal (identifier)
Reserved Word ini
jumlahnya berbeda untuk masing-masing bahasa Pascal.
Contoh beberapa
reserved word yang telah didefinisikan oleh bahasa pascal antara lain
AND ELSE LABEL SET
ARRAY END OF TYPE
BEGIN FUNCTION OR UNTIL
CASE FOR PROCEDURE VAR
CONST GOTO PROGRAM WHILE
DO IF RECORD WITH
DOWNTO IN REPEAT dsb
3. Identifier (sebutan/pengenal)
Identifier
merupakan sebuah kata yang digunakan sebagai nama atau sebutan terhadap sesuatu
didalam program. Pemakai dapat mendefinisikan sendiri suatu nama sebagai
identifier.
Identifier ini
terdiri atas :
1.
Identifier Standar, yaitu identifier yang telah
didefinisikan oleh bahasa pascal.
Contoh dari
Identifier standar ini antara lain:
ABS LN
ARCTAN ODB
BOOLEAN PRED
CHAR ROUND
CHR READ
COS READLN
EOF SQR
EOLN SQRT
EXP SUCC
Dan masih banyak lagi.
2.
Identifier Non Standar; yaitu identifier yang
didefinisikan oleh pemakai bahasa pascal; misalnya;
- nama suatu program
- nama suatu konstanta
- nama suatu variabel
- nama suatu procedure
Identifier ini
bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
7.
terdiri dari gabungan huruf dan angka dengan
karakter pertama harus berupa huruf. Huruf besar dan huruf kecil dianggap sama.
8.
Tidak boleh mengandung blank.
9.
Tidak boleh mengandung simbol-simbol khusus, kecuali
garis bawah.
10. Panjangnya bebas,
tetapi hanya 63 karakter pertama yang dianggap signifikan.
Contoh :
Identifier
|
Keterangan
|
GajiKaryawan
|
Benar
|
No_Mhs
|
Benar
|
P3K
|
Benar
|
1X
|
Salah, karakter pertama
harus huruf
|
A&B
|
Salah, tidak boleh
mengandung simbol khusus
|
A B
|
Salah, tidak boleh
mengandung blank
|
2.3. Jenis – jenis data
Jenis – jenis
data yang dikenal dalam bahasa pascal antara lain yaitu:
1.
Jenis data sederhana
- Jenis data yang standar; yaitu :
·
Integer
·
Real
·
Karakter
·
Boolean
- Jenis data yang non standar (user defined), yaitu;
·
Enumerated
·
Sub-range
2.
Jenis data berstuktur, yaitu:
- Array
- Record
- Set
- File
3.
Jenis Data Pointer
INTEGER
Jenis data ini terdiri atas integer positif, integer
negatif dan nol. Merupakan nilai bilangan bulat.
Pada TURBO PASCAL jenis data
ini di bagi atas beberapa bagian, yaitu :
Tipe
|
Ukuran memori
(dalam byte)
|
Jangkauan nilai
|
BYTE
|
1
|
0..255
|
SHORTINT
|
1
|
-128..127
|
INTEGER
|
2
|
-32768..32767
|
WORD
|
2
|
0..65535
|
LONGINT
|
4
|
-2147483648..2147483647
|
Operator Integer terdiri
atas : + , - , * , / , DIV dan MOD
Contoh :
Var
Jumlah : byte;
Begin
Jumlah := 200;
WriteLn(‘Nilai JUMLAH = ‘,Jumlah);
End.
Hasilnya bila dijalankan :
Nilai JUMLAH = 200
REAL
Penulisan untuk jenis data
ini selalu menggunakan titik desimal. Nilai konstanta numerik real berkisar
dari 1E-38 sampai dengan 1E+38 dengan mantissa yang signifikan sampai dengan 11
digit. E menunjukkan nilai 10 pangkat. Nilai konstanta numerik real menempati
memori sebesar 6 byte.
Contoh :
123.45
12345. ® salah, titik
desimal tidak boleh dibelakang
12E5
12E+5
-12.34
.1234 ® salah, titik
desimal tidak boleh dimuka
Pada TURBO PASCAL, jenis
data ini dibedakan atas :
Tipe
|
Ukuran memori
(dalam byte)
|
Jangkauan nilai
|
Digit
signifikan
|
SINGLE
|
4
|
1.5x10E-45 ..
3.4x10E38
|
7-8
|
DOUBLE
|
8
|
5.0x10E-324 ..
1.7x10E308
|
15-16
|
EXTENDED
|
10
|
1.9x10E-4951 ..
1.1x10E4932
|
19-20
|
COMP
|
8
|
-2E+63+1 ..
2E+63-1
|
19-20
|
Operator untuk jenis data
ini terdiri atas : + , - , * dan /
KARAKTER
Yang dimaksud dengan jenis
data ini adalah karakter tunggal atau sebuah karakter yang ditulis diantara
tanda petik tunggal, seperti misalnya ‘A’,’a’,’!’,’5’ dsb.
Dasarnya adalah ASCII
CHARACTER SET.
Misalnya : 032 pada tabel
ASCII CHARACTER SET menunjukkan karakter.
Blank.
033 !
048 0
076 L
dst
STRING
Nilai data string merupakan
urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai
data string akan menenpati memori sebesar banyaknya karakter stringnya ditambah
dengan 1 byte. Bila panjang dari suatu string di dalam deklarasi variabel tidak
disebutkan, maka dianggap panjangnya adalah 255 karakter.
Contoh :
Var
Kampus : string[10];
Begin
Kampus := ‘Gunadarma’;
Write(Kampus);
End.
BOOLEAN
Jenis data ini mempunyai
nilai TRUE atau FALSE.
Operator untuk jenis data
ini adalah :
1.
Logical Operator, yaitu : NOT, AND dan OR
2.
Relational Operator, yaitu : >, <, >=,
<=, <> dan =
\
JENIS DATA NON-STANDARD (USER DEFINED)
1. ENUMERATED.
Jenis data ini
terdiri atas barisan identifier yang terurut dimana setiap identifier tersebut
dianggap sebagai suatu individual data item (elemen data yang berdiri sendiri).
Pada saat
mendeklarasikan jenis data ini kita harus menuliskan semua elemen-elemennya.
Bentuk umum
deklarasinya adalah :
TYPE nama = (data_item_1, data_item_2, …….,
data_item_n);
Contoh :
TYPE hari =
(sen,sel,rab,kam,jum,sab,ming);
TYPE warna =
(red,blue,green,yellow,black,white);
Setelah jenis
data ini dideklarasikan, maka selanjutnya kita dapat mendeklarasikan suatu
variabel yang berjenis data sama dengan jenis data ini.
Misalnya :
TYPE nama_hari =
(sen,sel,rab,kam,jum,sab,ming);
VAR libur : nama_hari;
Fungsi standar
yang dapat digunakan pada jenis data ini adalah :
PRED, SUCC dan
ORD
Misalnya :
PRED (sel) = sen
SUCC (sen) = sel
ORD (sen) = 0
ORD (sel) = 1
2. SUB-RANGE.
Jenis data ini
berupa range dari suatu kumpulan data yang mempunyai urutan..
Bentuk umum
deklarasinya adalah :
TYPE nama = data_item_pertama ..
data_item_terakhir;
Contoh :
1.
TYPE jam_kuliah
= 1 .. 10;
tanggal = 1 ..
31;
abjad = ‘A’ ..
‘Z’;
2.
TYPE bulan
= (jan,feb,mar,apr,mei,jun,jul,agt,sep,okt,nov,des);
hari =
(sen,sel,rab,kam,jum,sab,ming);
ata = agt .. jan;
pta = feb .. jun;
hari_kerja = sen
.. jum;
TANDA OPERASI
Tanda operasi (operator) di
dalam bahasa Pascal dikelompokkan ke dalam 9 kategori, yaitu
1.
Assignment operator.
2.
Binary operator.
3.
Unary operator.
4.
Bitwise operator.
5.
Relational operator.
6.
Logical operator.
7.
Address operator.
8.
Set operator.
9.
String operator.
Assignment operator
Assignment operator (operator pengerjaan) menggunakan
simbol titik dua diikuti oleh tanda sama dengan (:=).
Contoh :
A:=B;
Binary operator
Digunakan untuk mengoperasikan dua buah operand. Operand
dapat berbentuk konstanta ataupun variabel. Operator ini digunakan untuk
operasi aritmatika yang berhubungan dengan nilai tipe data integer dan real.
Operator |
Operasi
|
Tipe operand
|
Tipe hasil
|
*
|
Perkalian
|
real,real
integer,integer
real,integer
|
real
integer
real
|
DIV
|
Pembagian bulat
|
integer,integer
|
integer
|
/
|
Pembagian real
|
real,real
integer,integer
real,integer
|
real
real
real
|
MOD
|
Sisa pembagian
|
integer,integer
|
integer
|
+
|
Pertambahan
|
real,real
integer,integer
real,integer
|
real
integer
real
|
-
|
pengurangan
|
real,real
integer,integer
real,real
|
real
integer
real
|
Contoh :
15*5 hasilnya
75
20/3 hasilnya 6.6666666667E+00
20 div 3 hasilnya 6
20 mod 3 hasilnya 2
Unary operator
Operator ini hanya menggunakan sebuah operand saja. Dapat
berupa unary minus dan unary plus. Unary minus digunakan untuk menunjukkan
nilai negatif, baik pada operang numerik real maupun integer. Unaru plus adalah
operator untuk memberai tanda plus.
Contoh :
-5 +7
-2.5 +2.5
Bitwise operator
Digunakan untuk operasi bit per bit pada nilai integer.
Terdiri dari operator NOT, AND, OR, XOR, Shl, Shr.
Relational operator
Relational operator digunakan untuk membandingkan hubungan antara dua buah
operand dan akan didapatkan hasil tipe boolean, yaitu True atau False. Terdiri
dari operator : =, <, >, <=, >=, <>
Logical operator
Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan
XOR. Operator ini bekerja dengan nilai-nilai logika, yaitu True dan False.
Set operator
Digunakan untuk operasi himpunan.
String operator
Digunakan untuk operasi string. Hanya ada sebuah operator
string saja, yaitu operator + yang digunakan untuk menggabungkan dua buah nilai
string.
Contoh :
Nama1 := ‘Arief ‘;
Nama2 := ‘Kurniawan’;
Nama3 := Nama1 + Nama2;
2.4. Konstanta, Variabel dan Ekspresi.
Konstanta.
Konstanta adalah suatu
identifier non-standar yang nilainya telah ditetapkan dalam suatu program dan
dideklarasikan pada bagian deklarasi.
Bagian umum deklarasinya
adalah :
CONST identifier = nilai;
Contoh :
CONST phi
= 3.14;
x= 2;
y
= ‘S’;
Variabel.
Variabel adalah suatu
identifier non-standar yang nilainya tidak tetap atau nilainya merupakan hasil
dari suatu proses.
(variabel yang dimaksudkan disini
sama seperti halnya arti variabel pada aljabar).
Bentuk umum deklarasinya
adalah :
1.
Jika hanya 1 (satu) variabel yang dideklarasikan :
VAR identifier :
jenis data;
2.
Jika lebih dari 1 (satu) variabel dan masing-masing
memiliki jenis data yang sama :
VAR id-1, id-2,
…., id-3 : jenis data;
3.
Jika beberapa variabel yang berbeda jenis datanya :
VAR identifier-1 : jenis data;
identifier-2 : jenis data;
.
.
.
identifier-n : jenis data;
4.
Jika variabel yang dideklarasikan berjenis data
non-standar :
TYPE id =
(data_item_1,data_item_2,…,data_item_n);
VAR id-v : id;
SUB-RANGE :
TYPE id = data_item_pertama .. data_item_terakhir;
VAR id-v : id;
Contoh :
1.
VAR x : integer;
2.
VAR p,q,r : real;
3.
VAR a,b : char;
m,n : boolean;
4.
TYPE warna =
(merah,hitam,biru,putih,kuning);
VAR x1,x2 : warna;
5.
TYPE tahun =
1900 .. 1993;
VAR thn-1,thn-2,thn-3 : tahun;
Ekspresi.
Sebuah ekspresi merupakan
kumpulan dari operand-operand (seperti :
bilangan, konstanta, variabel dll) yang bersama-sama dengan operator membentuk
suatu bentuk aljabar dan menyatakan suatu nilai.
Ada 2 (dua) jenis ekspresi
dalam bahasa Pascal, yaitu :
1.
Ekspresi numerik / aritmatika, yaitu suatu ekspresi
yang menghasilkan nilai numerik / aritmatika.
2.
Ekspresi Boolean atau ekspresi logika, yaitu suatu
ekspresi yang menghasilkan nilai boolean / logika (true/false).
Contoh :
1.
(b * b – 4 * a * c) / (2*a) / (2 * a)
Þ ekspresi numerik, jika a,b dan c adalah
bilangan (variabel bernilai numerik).
2.
Upah < 1000.0
Þ ekspresi boolean (“upah” adalah suatu
variabel bernilai real).
2.5. Input dan output (Standar I/O).
Dalam bahasa
Pascal untuk keperluan input (membaca input) digunakan identifier standar READ
atau READLN.
Identifier standar ReadLn
sedikit berbeda dengan Read. ReadLn digunakan untuk memasukkan data perbaris,
artinya setelah tombol Enter ditekan, maka akan ganti baris, sedangkan Read
tidak ganti baris, masih dalam baris yang sama.
Sedangkan untuk
keperluan output (mencetak output) digunakan identifier standar WRITE atau WRITLN.
Perbedaan Write dengan
WriteLn adalah bahwa Write menampilkan hasil tanpa ganti baris dan tampilan
berikutnya akan disambung dalam baris yang sama. Sedang WriteLn digunakan untuk
menampilkan tampilan perbaris, akan ganti baris untuk tampilan berikutnya.
Bentuk umum penulisannya :
1.
READ (variabel input) ;
Atau
READLN (variabel output);
2.
WRITE (variabel output);
WRITELN
(variabel output);
Contoh :
Var nama : string{15};
Begin nama := ‘Dewi’;
write(‘nama : ‘);
write(nama);
End.
Hasilnya :
Nama : Dewi
Contoh :
Var nama : string{15};
Begin nama := ‘Dewi”;
WriteLn(‘Nama : ‘);
WriteLn(Nama);
End.
Hasilnya :
Nama :
Dewi
Tidak ada komentar:
Posting Komentar