PENGENALAN BAHASA PEMROGRAMAN PASCAL .

PENGENALAN BAHASA PEMROGRAMAN
PASCAL
SEJARAH SINGKAT
Pascal merupakan bahasa pemrograman yang umum digunakan sebagai pengantar dalam mempelajari algoritma
dan pemrograman. Pascal merupakan bahasa mesin tingkat tinggi yang relatif mudah dipelajari karena lebih dekat dengan
bahasa manusia, contoh begin, end, write dan read. Pascal diambil dari nama ahli matematika, Blaise Pascal , yang
dikembangkan oleh Niklaus Wirth pada tahun 1970. Pascal dirancang untuk keperluan akademik dan cukup populer
hingga tahun 1990an.
Salah satu aplikasi yang yang saat ini masih mendukung bahasa pascal adalah freepascal. Freepascal bersifat
gratis dan dapat diinstal pada komputer modern tanpa menggunakan emulator atau program tambahan. Pascal memang
tidak populer saat ini, akan tetapi masih banyak digunakan sebagai bahasa pengantar pada algoritma dan pemrograman.
PENGENALAN IDE FREE PASCAL
Setelah instalasi freepascal berhasil, umumnya freepascal terinstal pada folder ’ C:\FPC\2.6.4’ (silahkan buka
menggunakan file explorer). Berikut gambar IDE free pascal:

Buatlah folder baru (nama anda) dalam folder diatas. Folder ini akan dijadikan folder kerja freepascal anda. contoh
seperti gambar berikut:

PROGRAM PERTAMA
Untuk memberikan kesan pertama, mari kita buat sebuah program baru pada freepascal. Ikuti langkah berikut:
1. Buat file baru

Untuk membuat sebuah file, terdapat pada menu file -> new. contoh sebagai berikut:

Berikutnya, ketik-kan kode program sebagai berikut:

Perhatikan beberapa hal berikut:’
a. Sebuah program diawali dengan keyword ’program’.
b. Program diawali oleh Reserved Word/keyword begin dan end (perhatikan tanda ‘.’ setelah end).
c. Setiap statement/syntac diakhir dengan tanda ‘;’.

d. Kode bersifat case-insensitive (perhatikan Writeln dan writeln).
e. Dapat ditambahkan komentar menggunakan tanda ‘//’ (1 baris komentar), ’{ }’ dan (* *) lebih dari satu baris
komentar

2. Menyimpan file
Penyimpanan file dapat dilakukan pad menu file->simpan. Contoh tampilan sebagai berikut:

Perhatikan tempat penyimpanan file tersebut (pen merah). Untuk dapat berpindah folder keatas klik double tanda
’..\’ (warna hitam). sampai pada folder yang sudah anda buat sebelumnya (nama anda). Nama file isikan pada
bagian atas (warna biru). Klik OK untuk menyimpan. Anda dapat periksa hasil penyimpanan file tersebut pada
file explorer anda.

3. Men-compile
Meng-compile adalah sebuh proses pembuata program yang siap dieksekusi. Compile dapat dilakukan pada
menu Compile->Compile atau shortcut alt+F9. Jika compile berhasil , akan ada informasi seperti berikut yang
menyatakan program ada berhasil di-compile. Jika terjadi kesalahan mohon cek kembali syntac yang sudah ada
buat.

Setelah file berhasil di-compile, terdapat file2 baru pada folder kerja anda. Seperti gambar berikut:

Jika hello.exe (type application) dijalankan maka program dapat berjalan serpeti berikut:

untuk menutup aplikasi tersebut tekan ENTER .
4. Menjalan kode langsung dari IDE
Untuk menjalan kan program langsung dari IDE dapat menggunakan menu Run->Run atau CTRL+F9. Perintah
ini melakukan compile dan execute melalui IDE freepascal. Hasil perintah tersebut sebagai berikut :

Untuk menutup aplikasi, tekan ENTER.
CATATAN:
Ada dapat membuat program melalui text editor lainnya, seperti Notepad++. Untuk menguji dan mendapatkan hasil
program, tetap harus membuka terlebih dahulu pada IDE freepascal.
DISKUSIKAN

1. Apakah ekstensi File kode program untuk pascal ???
2. Apakah fungsi perintah write dan readln diatas???
3. Gantilah ’writeln’ dengan ’write’ dan ’readln’ dengan ’read’, apa temui pada hasil program???
4. Apakah keuntungan menggunakan komentar???

5. Umumnya terdapat banyak kesalahan2 baik secara syntax maupun logika dalam membuat sebuah program. Coba
hilangkan tanda ’;’ pada salah satu statement, atau hilangkan tanda petiknya, atau kata ’begin’ ganti ’mulai’, atau
kata ’end’ tanpa tanda ’.’ , apa yang ada temui pada hasil compile???
6. Pada langkah 5, dapatkah anda menemukan informasi kesalahan tersebut. Jelaskan???
7. Buatlah program tentang algoritma pada tugas anda sebelumnya???
STRUKTUR PROGRAM, TIPE DATA, KONSTANTA, VARIABEL DAN OPERATOR
STRUKTUR PROGRAM
Perhatikan contoh program di bawah ini:

(sumber : http://www.duniailkom.com)
PASCAL merupakan bahasa program yang deklaratif dan terstruktur. Deklaratif berarti
beberapa bagian harus dideklarasikan terlebih dahulu, seperti uses, type, var, const,
function dan procedure. Bagian deklarasi dimulai dari setelah statement program dan
sebelum statement begin. Main program terdapat pada bagian setelah statement begin dan
sebelum statement end. Terstruktur berarti harus mengikuti kaidah penulisan kode.

TIPE DATA
PASCAL merupakan bahasa pemrograman yang sangat strict terhadap pemakaian tipe data.
Apabila tipe data yang digunakan tidak sama, maka PASCAL akan komplain dengan tipe data
tersebut. Jenis tipe data yang digunakan akan berpengaruh pada jangkauan dan jumlah memory
yang akan digunakan pada komputer. Berikut berbagai macam tipe data yang digunakan pada
PASCAL.

(sumber tutorialspoint.com)
OPERATOR

Bagian ini menjelaskan pemakaian operator dalam sebuah ekspresi kode. Terdapat 2 kategori
yaitu : operand dan operator. Operand adalah nilai yang akan dioperasikan sedangkan
operator adalah operasi yang dilakukan pada operand. Berikut beberapa operator yang
terdapat pada PASCAL.

Operator Assignment
Operato Penjelasan
Contoh
r
:=

Pemberian nilai (Assignment)
a := “belajar PASCAL”

Operator Aritmatika
Operator Penjelasan
Contoh
+
Penambahan
2+3=5

Pengurangan
5–2=3
*
Perkalian
2*3=6
/
Pembagian (real/pecahan)
14 / 4 = 3.5
div
Pembagian (integer/angka bulat)

14 div 4 = 3
mod
Sisa hasil bagi
14 mod 4 = 2

Operator String
Operato Penjelasan
Contoh
r
+
Pengambungan (concatenate ) “belajar” + “PASCAL”











Operator Perbandingan / Relasional
Operator
Penjelasan
Contoh
=
Sama dengan
5 = 5 -> True

Tidak sama dengan
5 5 -> False
>
Lebih besar
5 > 6 -> False
<
Lebih kecil
5 < 6 -> True
>=
Lebih besar atau sama dengan
5 >= 3 -> True

> 1, hasilnya: 0010
Operator Set / Himpunan
Operator
Action
+
Union

Selisih (Difference)
*
Irisan (Intersection)
><
Selisih simetri (Symmetric difference)
/< 10

b. CASE dan CASE-ELSE
Dalam kondisi tertentu IF-THEN-ELSE tidak efisien untuk digunakan. Struktur program CASE
PASCAL sebagai berikut:

Penggunaan CASE-ELSE menggunakan expression sebagai bagian yang akan dievaluasi.
Expression merupakan variable dengan tipe data skalar. Pemakaian CASE-ELSE cukup

ramping, tetapi hanya untuk pemakaian sederhana. Expression dan kondisi yang digunakan
terbatas pada tipe data scalar saja. Pemakaian yang lebih kompleks, lebih baik menggunakan
struktur IF-THEN-ELSE
CONTOH KASUS: menentukan nama bulan

ALUR PERULANGAN
Alur perulangan adalah kode program yang mengharuskan kode dijalankan berulangulang sesuai kebutuhan maupun suatu kondisi. Dalam PASCAL, perulangan menggunakan FORTO-DO/FOR-DOWNTO-DO, WHILE-DO dan REPEAT-UNTIL. Diagram Flowchart pada alur program
seleksi seperti pada gambar berikut.

a. FOR-TO-DO / FOR-DOWNTO-DO
Alur perulangan menggunakan FOR-TO-DO / FOR-DOWNTO-DO digunakan apabila terdapat
kepastian tentang banyak perulangan yang harus dilakukan. FOR-TO-DO digunakan untuk
perulangan dengan nilai counter menaik (ascending), sedangkan FOR-DOWNTO-DO
digunakan untuk perulangan dengan nilai counter menurun (descending). Berikut syntax
pemakaian FOR-TO-DO / FOR-DOWNTO-DO.

CONTOH KASUS: menampilkan perkalian 1-10 pada sebuah bilangan

CONTOH KASUS: menyanyikan lagu anak ayam


b. WHILE-DO
Alur perulangan WHILE-DO menggunakan kondisi sebagai syarat untuk melakukan
perulangan. Kondisi/syarat yang akan dievaluasi harus menghasilkan sebuah tipe data
Boolean (true/false). Perulangan kode program akan dilakukan setiap kondisi WHILE dalam

keadaan benar/true. Didalam kode program perulangannya mengharuskan terdapat sebuah
kode program yang dapat memenuhi/merubah kondisi untuk menghentikan perulangan. Jika
hal ini tidak terdapat dalam bagian perulangan, maka komputer akan menjalan terusmenerus sampai komputer tidak dapat lagi bekerja (KOMPUTER HANG). Berikut struktur
program WHILE-DO.

CONTOH KASUS: membuat deret matematika kelipatan 3

c. REPEAT-UNTIL
Alur perulangan REPEAT-UNTIL mirip dengan WHILE-DO. Perbedaan keduanya terdapat pada
tempat evaluasi kondisi/syarat perulangan. REPEAT-UNTIL melakukan perulangan sampai
kondisi bernilai benar/true. Berikut struktur program REPEAT-UNTIL.

CONTOH KASUS: membuat sebuah deret matematika

BREAK/CONTINUE

Terkadang sebuah algoritma mengharuskan untuk berhenti seketika atau melanjutkan
kembali sebuah perulangan. Dalam PASCAL, algoritma seperti ini difasilitasi dengan perintah
BREAK/CONTINUE. BREAK untuk menghentikan perulangan, sedangkan CONTINUE untuk
melanjutkan kembali perulangan kode program. Umumnya, penggunaan BREAK/CONTINUE
dilakukan didalam alur program seleksi. Jika terdapat kondisi tertentu, kode program akan
lanjut/berhenti.

CONTOH KASUS: menghentikan sampai perkalian 7 pada perkalian bilangan 5.

CONTOH KASUS: melanjutkan/melompati perulangan ‘Hello Indonesia’ pada langkah ke-5

DISKUSI
1. Kapan penggunaan CASE yang baik?
2. Dapatkah CASE pada penyeleksian data bertipe string?
3. Apakah perbedaan WHILE-DO dan REPEAT-UNTIL??
4. Apakah WHILE-DO dan REPEAT-UNTIL dapat digantikan satu sama lainnya??

TUGAS
Buatlah laporan tentang penyelesaian permasalahan algoritma berikut:
1. Terdapat data saluran TV sebagai berikut: 1) TVRI, 2) RCTI 3)SCTV, 4)ANTV, 5) INDOSIAR,
dan 6) METROTV. Buat program yang memilih saluran dan menampilkan nama saluran TV.
2. Data lapisan udara berdasarkan ketinggiannya:


0 ≤ tinggi < 10 km : Troposfer



10 ≤ tinggi < 40 km : Stratosfer



40 ≤ tinggi < 70 km : Mesosfer



70 ≤ tinggi < 400 km : Termosfer



tinggi ≥ 400 km : Eksosfer

buat program masukkan ketinggian serta nama lapisan udaranya?
3. Keterangan macam segitiga berdasarkan panjang masing-masing sisi segitiga?
4. Menampilkan 20 buah bilangan genap pertama?
5. Menghitung deret berikut
-1 + 2 – 3 + 4 – 5 + … + -99 + 100
6. Membuat tabel berikut
1

0

2

3

3

8

4

15

5

24

6

35

24
25


575
624

PROSEDUR dan FUNCTION
PROSEDUR
Prosedur seperti sebuah program kecil dan sering disebut sebagai sub-program.
Keuntungan menggunakan prosedur adalah membantu programmer menghindari pengulangan
kode sebab prosedur dapat digunakan kembali. Sebuah prosedur dimulai dari begin dan diakhiri
end seperti layaknya sebuah program. Terlebih lagi sebuah prosedur dapat memiliki variable
sendiri; biasa disebut local variable. Variable yang dideklarasikan pada main program disebut
sebagai global variable serta dapat diakses langsung oleh sebuah prosedur. Perhatikan kedua
contoh program berikut:

Contoh 1.

a. tanpa prosedur

b. dengan prosedur

beberapa hal yang dapat dicatat dalam kedua contoh yaitu:
1. Ukuran program
2. Kerapian
3. Pengulangan kode
4. Efisiensi debug
Prosedur dapat pula menerima sebuah parameter. Jika dilihat pada contoh pertama bagian (b),
terdapat perulangan GotoXY(x,y). perulangan tersebut dapat dieliminasi menggunakan
parameter pada prosedur. Parameter dalam procedur dideklarasikan dalam tanda kurung dan
setiap parameter dipisahkan dengan tanda ‘;’. Variable parameter yang digunakan dalam
procedure hanya dapat diakses di dalam procedure itu sendiri. Perhatikan contoh berikut

Contoh 2. Prosedur menggunakan parameter

FUNCTION
Tipe sub-program berikutnya adalah function. Perbedaan utama dengan prosedur adalah bahwa
function selalu mengembalikan sebuah nilai. Sebuah function dideklarasikan mirip dengan
prosedur, serta pula dapat mempunyai parameter. Tipe data pengembalian sebuah function
berada diakhir deklarasi. Berikut contoh program menggunakan function.

Contoh 3. Penggunaan sebuah fungsi

DISKUSI
Silahkan menanyakan hal terkait pada materi ini ????
ARRAY , RECORD DAN POINTER
Tipe data sederhana, seperti : integer, float, char, string dan Boolean, sudah cukup dalam
menyelesaikan berbagai macam algoritma. Akan tetapi, banyaknya data yang akan terlibat
didalam penyelesaian algoritma, menjadikan tipe data sederhana tidak efektif. Hal ini dapat
diatasi dengan menggunakan tipe data bentukan.
ARRAY
Tipe data Array sering muncul pada berbagai macam algoritma. Array merupakan
sekumpulan data yang sejenis. Komponen Array dibedakan menjadi dua, yaitu element dan
index. Element merupakan isi data/anggota array, sedangkan index merupakan urutan dari
element. Berikut contoh struktur program array :

Pada program diatas, program membuat array dengan tipe integer sebanyak 10 element
dengan index dimulai dari 0 sampai 9. Index dalam array dimulai dari 0 bukan 1. Tidak harus
semua element dalam array terisi, serta tidak pula harus berurutan dalam pengisisian elemen.
Perhatikan index array yang digunakan. Apabila mengakses atau pun mengisi element pada
index yang tidak terdapat dalam array, maka terjadi error range check.
Contoh diatas merupakan penggunaan array 1 dimensi. Dalam beberapa penyelesaian
algoritma matematika, array 1 dimensi tidak mencukupi, seperti penyelesaian diagram kartesius
dan matrik. Berikut contoh penggunaan array lebih dari 1 dimensi

Untuk mengakses elemen dari array 2/3 dimensi, menggunakan index yang dipisahkan dengan
‘,’; contoh nilai[1,2,1].
Pada kedua contoh macam array yang digunakan adalah Fixed Array (tetap). Array dapat dibuat
dinamis dalam program. Berikut contoh array dinamis.

Dalam menentukan jumlah elemen array menggunakan setlength. Setelah variable array di-set
panjangnya, array kemudian dapat diakses seperti fixed array .
RECORD
Record merupakan sekumpulan data yang berlainan jenis. Record adalah sebuah varibel
yang mempaketkan variable-variable lainnya. Konsep record mirip dengan konsep objek
meskipun pemrograman objek tersendiri dalam pascal. Berikut contoh penggunaan record

untuk mengakses variable didalam variable record digunakan tanda ‘.’. Dalam contoh , variable
nama dalam variable siswa diakases menggunakan siswa.nama. lebih jauh, agar mempermudah
mengakses isi record dapat mengunakan keyword with, seperti contoh berikut

POINTER
Pointer merupakan tipe data alamat memory. Tipe data ini cukup rumit bagi kebanyakan
programmer pemula. Memory Komputer dapat dibayangkan sebagai lemari besar yang terdapat
banyak laci lemari yang diberi nomor laci. Nomor laci lemari ini yang disebut sebagai pointer.
Pada pendeklarasian sebuah variable, maka komputer akan membuatkan alamat memori untuk
ditempati oleh variable tersebut. Berikut contoh penggunaan Pointer

Pointer umumnya digunakan pada pemakaian struktur data yang komplek dan cukup rumit.
Akan tetapi, Penggunaan pointer akan mengefektifkan pemakaian memory serta lebih dinamis
pada komputer dibanding tipe data lainnya.
DISKUSI
1. Tipe data string sepertinya merupakan jenis array ?
2. Dimana letak kedinamisan array dinamis bila masih menggunakan setlength?
3. Bisakah menggunakan array dari sebuah record yang digunakan untuk mencatat datadata mahasiswa?

TUGAS
Buatlah algoritma dan program yang meminta data dua buah matrik berukuran n x n yang
dimasukkan melalui keyboard. Lalu proseslah agar matriks ketiga berisi penjumlahan kedua
matriks tersebut