materi pascal

63
©Copyright by HANAFI, SMANSA Dasar Pemograman dengan Turbo Pascal BAB 1 PENGENALAN PASCAL 1.1. PENDAHULUAN Bahasa Pascal dikembangkan pada awal tahun 1970-an oleh ilmuwan komputer Eropa, bernama Niklaus Wirth. Nama Pascal diambil dari nama ahli matematika Blaise Pascal yang menemukan mesin hitung mekanik pertama. Sekarang Pascal digunakan baik untuk keperluan ilmiah maupun aplikasi bisnis. Sampai saat ini, bahasa Pascal juga digunakan pada sekolah dan universitas di Indoensia untuk belajar pemrograman dasar. Pascal sebagai salah satu bahasa tingkat tinggi (high-level language) untuk dapat dapat dikenali oleh computer harus diterjemahkan menjadi bahasa mesin. Untuk itu dikembangkan sebuah program penerjemah yang disebut dengan kompilator (compiler). Kompilator Pascal adalah sebuah software, bukan perangkat keras (hardware). Kompilator adalah progam yang disimpan pada file dalam disk. Pascal yang akan kita gunakan disini adalah Turbo Pascal versi 7, dimana Pascal ini masih berbasis DOS. Jadi tidak perlu diinstal pada sistim operasi Windows. Untuk menjalankan Pascal ini cukup dengan meng-eksekusi atau meng-klik file utamanya. Yaitu file TP.exe. Tampilan utama (Editor) Turbo Pascal versi 7 adalah seperti berikut ini : Gambar 1.1. Editor Turbo Pascal versi 7 Dari gambar 1.1. diatas kita bisa lihat di Turbo Pascal versi 7 ini memiliki 10 buah menu utama yang terdiri dari : File, Edit, Search, Run, Compile, Debug, Tools, Options, Window dan Help. Untuk memilih salah satu dari menu itu kita bisa meng-klik dengan mouse atau bisa juga dengan menekan tombol Alt + huruf pertama dari menu. Misalnya 8

Upload: ahmad-andika-himawan

Post on 13-Aug-2015

339 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

BAB 1PENGENALAN PASCAL

1.1. PENDAHULUAN

Bahasa Pascal dikembangkan pada awal tahun 1970-an oleh ilmuwan komputer Eropa, bernama Niklaus Wirth. Nama Pascal diambil dari nama ahli matematika Blaise Pascal yang menemukan mesin hitung mekanik pertama. Sekarang Pascal digunakan baik untuk keperluan ilmiah maupun aplikasi bisnis. Sampai saat ini, bahasa Pascal juga digunakan pada sekolah dan universitas di Indoensia untuk belajar pemrograman dasar.

Pascal sebagai salah satu bahasa tingkat tinggi (high-level language) untuk dapat dapat dikenali oleh computer harus diterjemahkan menjadi bahasa mesin. Untuk itu dikembangkan sebuah program penerjemah yang disebut dengan kompilator (compiler). Kompilator Pascal adalah sebuah software, bukan perangkat keras (hardware). Kompilator adalah progam yang disimpan pada file dalam disk.

Pascal yang akan kita gunakan disini adalah Turbo Pascal versi 7, dimana Pascal ini masih berbasis DOS. Jadi tidak perlu diinstal pada sistim operasi Windows. Untuk menjalankan Pascal ini cukup dengan meng-eksekusi atau meng-klik file utamanya. Yaitu file TP.exe.

Tampilan utama (Editor) Turbo Pascal versi 7 adalah seperti berikut ini :

Gambar 1.1. Editor Turbo Pascal versi 7

Dari gambar 1.1. diatas kita bisa lihat di Turbo Pascal versi 7 ini memiliki 10 buah menu utama yang terdiri dari : File, Edit, Search, Run, Compile, Debug, Tools, Options, Window dan Help. Untuk memilih salah satu dari menu itu kita bisa meng-klik dengan mouse atau bisa juga dengan menekan tombol Alt + huruf pertama dari menu. Misalnya untuk menu File, bias dengan menekan tombol Alt + F.

1.2. HOTKEY

Hotkey merupakan tombol-tombol pada keyboard yang bisa digunakan untuk mempersingkat jalan dalam menggunakan fasilitas, baik menu, kursor dan blok pada Turbo Pascal.

A. Hotkey MenuHotkey menu adalah tombol-tombol keyboard yang dapat digunakan untuk mempersingkat jalan dalam memilih menu pada Turbo Pascal.

8

Page 2: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Tabel berikut ini merupakan daftar hotkey yang dapat digunakan pada Turbo Pascal, selain dari penggunaan menu yang sudah disebutkan di atas, (bagian 1.1.) yaitu dengan menggunakan tombol Alt + huruf awal menu.

HOTKEY FUNGSI EKIVALEN MENU

F1 Mengaktifkan jendela help HelpF2 Menyimpan file (program) yang sedang aktif pada

editorFile - Save

F3 Memanggil atau membuka file (program) File - OpenF4 Mengeksekusi program sampai posisi kursor Run – Go to cursorF5 Zoom Window – ZoomF6 Berpindah ke jendela berikutnya (next window) Window – NextF7 Melacak kedalam sub rutin Run – Trace intoF8 Melompati pemanggil sub rutin Run – Step overF9 Make Run - MakeF10 Berpindah ke baris menu pada jendela yang

sedang aktifAlt + F1 Memanggil jendela pertolongan yang terakhir

dibaca (dibaca sebelumnya)Help – Previous topic

Alt + F3 Menutup file yang sedang aktif Window - CloseAlt + F5 Memperlihatkan hasil running (jalannya) program Debug – User screenAlt + F7 Go to previous Tools – Go to previousAlt + F8 Go to next Tools – Go to nextAlt + F9 Mengkompilasi program Compile - CompileAlt + 0 Menampilkan daftar file / window yang sudah

dibukaWindow - List

Alt + Backspace Membatalkan perintah pengetikan terakhir (undo) Edit - UndoAlt + X Keluar dari pascal File - ExitCtrl + F1 Mencari topic pertolongan (help) Help – Topic SearchCtrl + F2 Menghentikan pembetulan Run – Program resetCtrl + F3 Menampilkan isi tumpukan (stack) Debug – Call stackCtrl + F4 Melakukan penghitungan atau mengubah nilai

peubahDebug - Evaluate

Ctrl + F5 Merubah ukuran jendela file yang sedang aktif, atau memindah jendela yang sedang aktif

Window – Size/Move

Ctrl + F7 Menambahkan ungkapan pada jendela watch Debug – Add watchCtrl + F9 Menjalankan (running) program Run - RunCtrl + Insert Menduplikasi (copy) Edit - CopyCtrl + Delete Menghapus blok Edit - ClearShift + F1 Indeks pertolongan (help) Help - IndexShift + F2 Grep Tools - GrepShift + F6 Berpindah ke jendela sebelumnya (previous

window)Window - Previous

Shift + Insert Paste Edit - PasteShift + Delete Cut Edit - Cut

B. Hotkey Pergerakan KursorKursor adalah penunjuk posisi pada editor Turbo Pascal yang berbentuk seperti underscore yang berkedip-kedip ( _ ).Berikut ini merupakan hotkey untuk pergerakan kursor :

HOTKEY FUNGSI

Ctrl + S atau panah kiri Bergerak ke kiri satu karakterCtrl + D atau panah kanan Bergerak ke kanan satu karakterCtrl + A atau Ctrl + Panah kiri Bergerak ke kiri satu kataCtrl + F atau Ctrl + Panah kanan Bergerak ke kanan satu kataCtrl + E atau panah naik Bergerak ke atas satu baris

8

Page 3: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

HOTKEY FUNGSI

Ctrl + X atau panah turun Bergerak ke bawah satu barisCtrl + W Memutar layar ke atasCtrl + Z Memutar layar ke bawahCtrl + R atau page up Ke halaman sebelumnyaCtrl + C atau page down Ke halaman berikutnya

C. Hotkey Kendali Operasi BlokBlok merupakan satu range yang sudah dipilih untuk dilakukan sesuatu operasi pada range tersebut.Berikut ini merupakan hotkey untuk kendali operasi blok :

HOTKEY FUNGSI

Ctrl + K + Y Menghapus blokCtrl + K + V Memindahkan blok ke tempat lainCtrl + K + C Membuat duplikat blok (copy)Ctrl + K + W Menyimpan blokCtrl + K + H Menyembunyikan atau menampilkan blokCtrl + K + R Memanggil atau membuka blok

1.3. IDENTIFIER

Identifier adalah nama yang diberikan oleh programmer. Identifier tidak hanya untuk menamai program (judul program), tetapi juga untuk objek-objek Pascal yang lain, seperti variable, konstanta dan lainnya.

Aturan penamaan identifier:1. Karakter pertama identifier harus berupa huruf2. Karakter selanjutnya dapat gabungan antara huruf dan angka3. Tidak berupa reserved word atau kata kunci dalam Pascal4. Tidak boleh dipisahkan dengan spasi, tidak boleh mengandung tanda ‘-‘ atau ‘&’

Contoh identifier yang tidak diperbolehkan:6jumlah, 7alamat dimulai dengan angkai/6, j%, k$ mengandung selain huruf dan angka tulis jumlah menggunakan spasibegin, do, while reserved word

Identifier dalam Pascal tidak case sensitive, artinya huruf besar dan kecil tidak dibedakan. Identifier ‘jumlah’, ‘JUMLAH’ dan ‘Jumlah’ dianggap sama.

1.4. RESERVED WORD

Reserved Word adalah kata-kata baku yang digunakan dalam program dan sudah terintergrated dalam pascal dan juga mempunyai bentuk serta kegunaan tertentu yang telah didefinisikan oleh Pascal.

Reserved Word tidak boleh didefinisikan kembali oleh pemakai, sehingga tidak dapat digunakan sebagai pengenal (Identifier). Dalam bahasa pemrograman Pascal, beberapa Reserved Word dalam Pascal anatra lain :

8

Page 4: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

AND DOWNTO IN OF STRINGASM ELSE INHERITED OR THENARRAY END INLINE PACKED TOBEGIN EXPORTS INTERFACE PROCEDURE TYPECASE FILE LABEL PROGRAM UNITCONST FOR LIBRARY RECORD UNTILCONSTRUCTOR FUNCTION MOD REPEAT USESDESTRUCTOR GOTO NIL SET VARDIV IF NOT SHL WHILEDO IMPLEMENTATION OBJECT SHR WITH

Selain dari Reserved Word di atas, Turbo Pascal masih memiliki tambahan Reserved Word berikut:

ABSOLUTE ASSEMBLER () FAR FORWARD INDEX

1.5. KESALAHAN PADA PROGRAM

Ada dua jenis kesalahan yang mungkin terjadi pada program, yaitu:1. Kesalahan sintaks/tatabahasa (syntax error)2. Kesalahan logika (logical error)

Kesalahan sintaks menyebabkan program tidak dapat dikompilasi, sedangkan apabila terdapat kesalahan logika dalam program, program dapat dikompilasi, tetapi jika dijalankan akan menghasilkan keluaran yang salah.

1.6. KOMENTAR

Komentar atau ketarangan atau remaks adalah bagian program yang tidak akan diproses oleh program. Ini biasanya hanya digunakan untuk memberi keterangan atau penjelasan tentang suatu perintah program atau lainnya. Jadi isi dari komentar ini akan diabaikan oleh program.

Untuk membuat komentar pada pascal, ada dua cara, yaitu sebagai berikut :1. Dengan menggunakan tanda kurung kurawa.

contoh : { komentar }

2. Dengan menggunakan tanda kurung biasa diikuti tanda bintang.contoh :

(* komentar *)

8

Page 5: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

1.7. TIPE DATA DAN OPERATOR

Tipe data dalam Pascal

Sederhana Ordinal Integer Boolean Char Enumerasi Subjangkauan

Tipe Real

Terstruktur Array Record Set File

Pointer

1. INTEGER Tipe integer terdiri dari bilangan bulat dalam rentang tertentu, sebagai berikut :

TIPE JANGKAUAN NILAI

byte 0 s/d 255

shortint -128 s/d 127

integer -32.768 s/d 32.767

word 0 s/d 65535

longint -2.147.483.648 s/d 2.147.483.647

Operator Integer :

Operator Arti

+ Penjumlahan

- Pengurangan

* Perkalian

DIV Division, hasil pembagian bulat

MOD Modulo, sisa pembagian

2. BOOLEAN Tipe Boolean hanya terdiri dari dua harga yaitu TRUE dan FALSE. Ekspresi TRUE atau FALSE disebut ekspresi Boolean. Terdapat dua jenis operator yang dapat digunakan dalam ekspresi Boolean, yaitu operator Boolean dan operator relasional.

Operator Boolean :Operator Boolean terdiri dari AND, OR dan NOT.

8

Page 6: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Tabel Kebenaran Operator Boolean

P q p AND q p OR q NOT pTRUE TRUE TRUE TRUE FALSETRUE FALSE FALSE TRUE FALSEFALSE TRUE FALSE TRUE TRUEFALSE FALSE FALSE FALSE TRUE

3. CHARTipe data char hanya berisikan sebuah karakter, baik huruf, angka, tanda baca dan lainnya. 4. STRINGTipe data string berisikan sekumpulan karakter, baik huruf, angka dan tanda baca lainnya, dengan panjang maksimal adalah 255 karakter.

5. REAL Tipe real terdiri dari bilangan pecahan dalam rentang tertentu, yaitu dari 1E-38 sampai dengan 1E+38. E menunjukakn nilai 10 pangkat.

Operator Real :

Operator Arti+ Penjumlahan

- Pengurangan * Perkalian / Pembagian

6. Tingkatan Operator dalam PascalTingkat Operator

1 * dan /

2 - dan +

Tingkatan operator ini maksudnya adalah, jika kita menggunakan rumus matematika di dalam program pascal, dan penggunaan rumus tersebut tidak dibatasi dengan tanda kurung, maka program akan memproses operator dengan tingkat yang lebih tinggi terlebih dahulu.

Contoh :

A = B + C * D

Pada contoh ini, program akan memproses C*D terlebih dahulu, baru hasil C*D akan ditambah dengan B.Namun, jika yang kita maksud sebenarnya adalah B+C, baru setelah itu dikali D, maka kita harus batasi dengan kurung seperti berikut ini :

A = (B+C)*D

8

Page 7: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

1.8. STRUKTUR PROGRAM PASCAL

Bagian-bagian utama dari program Pascal terdiri dari tiga bagian yaitu:1. Bagian Judul Program / Kepala Program2. Bagian Deklarasi3. Bagian Deskripsi / Badan Program

1. Judul Program / Kepala Program

Judul program pada Turbo Pascal sifatnya adalah opsional dan tidak signifikan di dalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi dengan lingkungan yang sifatnya sebagai dokumentasi saja.

Judul program, bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma.

Contoh :

Program Contoh;Uses Crt;Begin Writeln(‘Hai, Saya Pascal’);

Writeln(‘----------------‘);End.

Pada contoh di atas, yang menjadi judul program adalah Program Contoh. Jadi, judul program sifatnya hanya sebagai dokumentasi saja, tidak signifikan terhadap proses program.

2. Bagian Deklarasi

Bagian dekalarasi digunakan bila di dalam program menggunakan pengenal (Identifier). Identifier, selain digunakan untuk judul program, juga dapat berupa label, konstanta, tipe, variabel, prosedur dan fungsi. Kalau suatu program menggunakan identifier, maka pascal menuntut dikenalkan terlebih dahulu sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada bagian deklarasi ini.

a. Deklarasi Konstanta

Defenisi konstanta diawali dengan kata cadangan (Reserved Word) Const dan diikuti oleh kumpulan identifier yang diberi suatu nilai konstanta.

Contoh :Program Contoh_Konstanta;Uses Crt;

ConstPotongan = 0.2;Gaji = 250000;NamaPerusahaan = ‘ PT. Giat Belajar’;

8

Page 8: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Dari contoh di atas, Potongan, Gaji dan NamaPerusahaan merupakan nama konstanta. Sedang 0.2 merupakan isi atau nilai untuk konstanta Potongan, 250000 merupakan isi atau nilai untuk konstanta Gaji dan PT. Giat Belajar merupakan isi atau nilai untuk konstanta NamaPerusahaan.

Jadi, cara mendeklarasikan konstanta adalah, setelah kita gunakan kata cadangan const, lalu diikuti dengan nama konstanta, disambung dengan tanda “=” (sama dengan), dan selanjutnya isi atau nilai dari konstanta dan diakhiri dengan tanda “;” (titik koma).

Untuk nama konstanta, harus mengikuti aturan seperti yang telah diuraikan pada bagian Identifier.

Sedangkan untuk isi atau nilai konstanta mempunyai aturan sebagai berikut :1. Untuk isi atau nilai konstanta berupa huruf diisi dengan menulis diantara dua

tanda kutip satu, seperti contoh di atas.

2. Untuk isi atau nilai konstanta berupa angka yang bisa dilakukan proses matematika berupa kali, bagi, kurang, tambah dan sebagainya, kita tulis angka itu langsung, seperti contoh di atas.Sedangkan untuk isi atau nilai konstanta berupa angka yang tidak akan dilakukan proses matematika, sebaiknya kita tulis diantara tanda kutip satu. Misalnya untuk nomor HP, sebaiknya kita tulis seperti berikut : ‘08127000284’. Isi atau nilai konstanta seperti ini, jika kita tulis bukan diantara tanda kutip satu, maka yang nantinya tersimpan di memory komputer adalah 8127000284. Jadi angka 0 (nol) didepan dihilangkan.

b. Deklarasi Variabel

Variabel adalah identifier yang berisi data yang dapat berubah-ubah nilainya didalam program. Pada konstanta, nilainya tidak bisa kita rubah-rubah di dalam program, tetapi dengan menggunakan variabel, nilainya dapat diubah-ubah di dalam program.

Hampir setiap program pascal yang panjang pasti menggunakan variabel. Setiap variabel di dalam program pascal harus dideklarasikan sebelum digunakan.

Kata cadangan Var digunakan sebagai judul didalam bagian deklarasi variabel dan diikuti oleh satu atau lebih identifier yang dipisahkan koma, dan diikuti dengan “:” (titik dua) lalu tipe datanya, serta diakhiri dengan “;” (titik koma).

Contoh :

Program Contoh_Variabel;Uses Crt;

VarGaji_Pokok : LongInt;Tunjangan, Total_Gaji : Real;NamaKaryawan : String;

Untuk nama variabel juga mengikuti aturan seperti pada Identifier. Sedangkan untuk tipe datanya seperti yang sudah dijelaskan pada bagian Tipe Data dan Operator.

3. Bagian Deskripsi / Badan Program

8

Page 9: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Bagian deklarasi atau badan program atau program utama adalah bagian program yang dimulai dengan Begin dan di akhiri dengan End. (End titik).

8

Page 10: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

1.9. PENULISAN PROGRAM PASCAL

Program Pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh ditulis mulai kolom ke berapapun.

Penulisan statemen-statemen pada program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh saat proses program, hanya dimaksudkan supaya mempermudah pembacaan program (oleh programmer), sehingga akan lebih terlihat bagian-bagiannya, serta tampak lebih rapi.

Contoh (1) :

Begin Writeln(‘Hai, Saya Pascal’);

Writeln(‘----------------‘);End.

Dan juga penulisan program dalam Pascal bukan line-oriented, yaitu setiap perintah yang berbeda harus ganti baris penulisan. Jadi, dalam Pascal perintah-perintah yang berbeda boleh ditulis pada satu baris yang sama. Dengan catatan, satu perintah di dalam Pascal diakhiri dengan tanda “;” (titik koma).

Contoh (2) :

Dari contoh (1) di atas, juga dapat ditulis seperti berikut ini :

Begin Writeln(‘Hai, Saya Pascal’); Writeln(‘----------------‘); End.

Akan tetapi penulisan seperti ini tidaklah dianjurkan dan sebisa mungkin dihindari, karena tidak baik untuk dokumentasi program dan sulit untuk membacanya. Apalagi jikalau terjadi kesalahan program (baik kesalahan sintaks, maupun kesalahan logika) akan sulit ditentukan apa kesalahan tersebut.

Dan dapat dilihat, bahwasannya contoh(1) tentu akan lebih rapi dan lebih mudah dibaca dibanding dengan contoh(2).

8

Page 11: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

BAB 2MENGGUNAKAN PASCAL

2.1. MEMULAI MENGGUNAKAN PASCAL

Untuk memulai menggunakan Turbo Pascal versi 7 yang masih berbasis DOS, cukup dengan membuka atau meng-eksekusi file utamanya, yaitu file TP.EXE. Maka akan langsung terbuka editor Turbo Pascal versi 7 seperti gambar 1.1. pada Bab 1.

Selanjutnya kita sudah bisa menuliskan perintah-perintah program yang kita inginkan pada editor tersebut.

2.2. KOMPILASI PROGRAM

Meng-kompilasi atau meng-compile adalah melakukan pengecekan kebenaran penulisan program-program (syntax) yang telah kita buat pada editor pascal.

Proses ini bisa dilakukan melalui menu yang ada pada editor pascal, yaitu menu Compile, dilanjutkan dengan pilihan Compile, seperti tampak berikut ini :

Gambar 2.1. Menu Kompilasi

Atau bisa juga dengan menggunakan Hotkey seperti yang telah dijelaskan pada Bab 1, yaitu dengan menggunakan tombol Alt + F9.

Jika semua penulisan program (syntax) yang telah kita buat benar, maka akan muncul pesan seperti berikut ini :

Gambar 2.2. Kompilasi Sukses

8

Page 12: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Untuk menghilangkan tampilan gambar 2.2. ini dapat menggunakan tombol Enter atau tombol Escape.

Akan tetapi jika terdapat kesalahan penulisan program, maka akan dimunculkan pesan kesalahan (biasanya dengan tulisan kuning latar belakang merah) pada bagian atas sebelah kiri layar editor pascal dan kursor akan langsung berada dekat posisi kesalah yang terjadi, seperti berikut ini :

Gambar 2.3. Pesan Kesalahan

2.3. MENJALANKAN (RUNNING) PROGRAM

Setelah perintah-perintah program kita ketik (buat) pada editor pascal, dan setelah dilakukan proses kompilasi tidak ada kesalahan, maka selanjutnya program sudah bisa dijalankan (di-Run).

Untuk menjalankan (run) program dari menu editor pascal dapat dilakukan dengan memilih menu Run, dilanjutkan pilihan Run, seperti berikut ini :

Gambar 2.4. Run Program

Atau bisa juga dengan menggunakan Hotkey seperti yang telah dijelaskan pada Bab 1, yaitu dengan menggunakan tombol Ctrl + F9.

2.4. PERINTAH WRITE DAN WRITELN

Perintah Write dan Writeln digunakan untuk menampilkan ke layar semua yang ada diantara dua tanda kutip satu dalam kurung biasa. Dan juga untuk menampilkan ke layar isi atau nilai dari suatu konstanta ataupun variable.

8

Page 13: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

8

Page 14: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Perbedaannya :write : kursor akan berada setelah karakter terakhir.writeln : kursor akan berada pada kolom pertama baris berikutnya.

Contoh :1. WRITE('HALO');

Setelah program dijalankan, maka hasilnya seperti berikut ini :

HALO_

2. WRITELN('HALO');

Setelah program dijalankan, maka hasilnya seperti berikut ini :

HALO_

Jika di dalam program terdapat perintah writeln langsung tanda “;”, tanpa diikuti tanda kurung (writeln;), maka ini hanya akan mengakibatkan kursor akan turun kebawah dari posisi perintah terakhir. Sehingga perintah seperti ini bisa digunakan untuk membuat baris kosong.

Contoh Program :

1. Menggunakan perintah Write

Program Contoh_penggunaan_write;Uses Crt;Begin Clrscr; Write(‘Halo, Selamat Datang’); Write(‘Selamat Belajar Pascal’); Write(‘Semoga Sukses’); Readkey;End.

Hasil program di atas setelah dijalankan adalah :

Halo, Selamat DatangSelamat Belajar PascalSemoga Sukses_

2. Menggunakan perintah Writeln

Program Contoh_penggunaan_writeln;Uses Crt;Begin Clrscr; Writeln(‘Halo, Selamat Datang’); Writeln(‘Selamat Belajar Pascal’); Writeln(‘Semoga Sukses’); Readkey;End.

8

kursor

kursor

kursor

Page 15: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Hasil program di atas setelah dijalankan adalah :

Halo, Selamat DatangSelamat Belajar PascalSemoga Sukses_

Contoh Soal ( 2.1. ) :

Dengan menggunakan perintah write atau writeln, buatlah program untuk menampilkan hasil seperti berikut ini :

DATA SISWA SMA N 1 BATAM------------------------

Nomor Induk Siswa : 3204

Nama Siswa : Budi Saja

Jenis Kelamin : Laki – Laki

Tempat Lahir : Batam

Tgl. Lahir : 17 Juli 2005

Kelas : X

2.5. MENGGUNAKAN KONSTANTA

Seperti yang sudah dijelaskan pada Bab 1, bahwa untuk mendefenisikan konstanta pada bagian deklarasi adalah dengan menggunakan kata cadangan Const, diikuti nama konstanta, tanda sama dengan, isi atau nilai konstanta dan diakhiri tanda “;” (titik koma).

Untuk menampilkan isi atau nilai konstanta dapat digunakan perintah write atau writeln.

Bentuk umumnya adalah sebagai berikut :

Write(namakostanta); atau Writeln(namakonstanta);

Contoh :

Write(Bilangan); atau Writeln(Bilangan);

Contoh Program :

Uses Crt;Const Bilangan = 2; NamaSiswa = ‘Budi Saja’;Begin Clrscr; Writeln(Bilangan); Writeln(NamaSiswa);

8

kursor

Page 16: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

End.

Hasil program di atas setelah dijalankan adalah :

2Budi Saja

Pada contoh program di atas, untuk memberi tampilan sebelum menampilkan isi konstanta kita bisa menggunakan perintah write, seperti berikut ini :

Uses Crt;Const Bilangan = 2; NamaSiswa = ‘Budi Saja’;Begin Clrscr; Write(‘Bilangan anda : ‘);Writeln(Bilangan); Write(‘Nama Siswa : ‘);Writeln(NamaSiswa);End.

Hasil program di atas setelah dijalankan adalah :

Bilangan anda : 2Nama Siswa : Budi Saja

Atau bisa dipersingkat sebagai berikut :

Uses Crt;Const Bilangan = 2; NamaSiswa = ‘Budi Saja’;Begin Clrscr; Write(‘Bilangan anda : ‘,Bilangan); Write(‘Nama Siswa : ‘,NamaSiswa);End.

Hasil program di atas setelah dijalankan adalah :

Bilangan anda : 2Nama Siswa : Budi Saja

Dari Contoh Soal (2.1.) sub bab 2.4., menggunakan perintah write/writeln di atas, sekarang kita gunakan konstanta untuk menyimpan nilai atau isi dari setiap baris data. Yaitu nilai atau isi “3204” untuk Nomor Induk Siswa, nilai atau isi “Budi Saja” untuk Nama Siswa dan seterusnya.

Maka disini, kita butuh enam konstanta, yaitu :1. Untuk Nomor Induk Siswa, misal NIS2. Untuk Nama Siswa, misal Nama_Siswa3. Untuk Jenis Kelamin, misal Jenis_Kelamin4. Untuk Tempat Lahir, misal T_Lahir5. Untuk Tgl. Lahir, misal Tgl_Lahir6. Untuk Kelas, misal Kelas

8

Page 17: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Programnya adalah seperti berikut ini :

Program Contoh_Konstanta;Uses Crt;Const NIS = ‘3204’; Nama_Siswa = ‘Budi Saja’; Jenis_Kelamin = ‘Laki – Laki’; T_Lahir = ‘Batam’; Tgl_Lahir = ’17 Juli 2005’; Kelas = ‘X’;Begin Clrscr; Writeln(‘DATA SISWA SMA N 1 BATAM’); Writeln(‘------------------------‘); Writeln; { Membuat baris kosong } Writeln(‘Nomor Induk Siswa : ‘,NIS); Writeln; Writeln(‘Nama Siswa : ‘,Nama_Siswa); Writeln; Writeln(‘Jenis Kelamin : ‘,Jenis_Kelamin); Writeln; Writeln(‘Tempat Lahir : ‘,T_Lahir); Writeln; Writeln(‘Tgl. Lahir : ‘,Tgl_Lahir); Writeln; Writeln(‘Kelas : ‘,Kelas); Readkey;End.

Contoh Soal ( 2.2. ) :

Dengan menggunakan konstanta, buatlah program untuk menampilkan hasil seperti berikut ini :

DATA NILAI SISWA SMA N 1 BATAM------------------------------

Nomor Induk Siswa : 3204

Nama Siswa : Budi Saja

Mata Pelajaran : Muatan Lokal

Nilai Kognitif : 80.50

Nilai Afektif : 75.00

Nilai Psikomotor : B

8

Page 18: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

2.6. PERINTAH READ DAN READLN

Perintah Read dan Readln adalah perintah yang digunakan untuk meng-inputkan atau memasukkan nilai atau isi kedalam variable.

Perbedaan perintah read dan readln sama halnya dengan perbedaan Write dan Writeln.

Bentuk umum perintah read dan readln ini adalah :

Read(var); atau Readln(var);

dimana var adalah variable.

Contoh :

1. Read(a); atau Readln(a);2. Read(NIS); atau Readln(NIS);3. Read(Nama_Siswa); atau Readln(Nama_Siswa);

Jika di dalam program kita menggunakan perintah read atau readln tanpa variabel, maka berarti running atau jalannya program akan berhenti sementara sampai kita tekan tombol enter.

Contoh Program :

Uses Crt;Var Bilangan : Integer;Begin Clrscr; Readln(Bilangan);End.

Hasil program di atas setelah dijalankan adalah :

_

Jadi, hanya tampak kursor berkedip-kedip pada bagian kiri atas layar.

Hal ini tentunya bisa membingungkan bagi pengguna (operator) program, karena tidak ada penjelasan apa-apa sebelum tanda krusor tersebut. Padahal kita tahu program itu meminta operator atau pengguna program untuk memasukkan sebuah angka yang akan disimpan pada variable bilangan.

Agar ada petunjuk bagi pengguna atau operator program, kita bisa memberi tampilan sebelumnya dengan menggunakan perintah write.

Contoh Program :

Uses Crt;Var Bilangan : Integer;Begin Clrscr; Write(‘Input Sebuah Bilangan : ‘);Readln(Bilangan); Readkey;

8

Page 19: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

End.

Hasil program di atas setelah dijalankan adalah :

Input Sebuah Bilangan : _

2.7. MENGGUNAKAN VARIABEL

Pada sub bab 2.6. di atas sudah dijelaskan bagaimana cara meng-inputkan atau memasukkan nilai ke dalam variabel.

Untuk menampilkan nilai atau isi dari variabel sama caranya dengan menampilkan isi atau nilai dari konstanta, seperti yang sudah dijelaskan pada sub bab 2.5. di atas.

Contoh Program :

Uses Crt;Var Bilangan : Integer;Begin Clrscr; Write(‘Input Sebuah Bilangan : ‘);Readln(Bilangan); Writeln; Writeln(‘Bilangan anda adalah : ‘,Bilangan); Readkey;End.

Hasil program di atas setelah dijalankan, misalkan diinput angka 5, adalah :

Input Sebuah Bilangan : 5

Bilangan anda adalah : 5

Cara lain untuk meng-inputkan atau memasukkan nilai ke dalam variabel adalah dengan cara men-set-nya atau member nilai secara langsung variabel tersebut pada bagian badan program.

Bentuk umumnya adalah seperti berikut ini :

NamaVariabel := IsiVariabel;

Contoh :

Bilangan := 5;

Atau, untuk men-set variabel yang merupakan rumus matematika, contoh rumus luas segitiga, juga bisa kita lakukan pada bagian badan program, seperti berikut ini :

Luas := (Alas*Tinggi)/2;

8

Page 20: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Contoh Soal ( 2.3. ) : Buat program untuk mencari hasil rumus : A = (B+C)*(D-E);

Jawaban :

Program rumus_ABCDE;Uses Crt;Var A,B,C,D,E : Integer;Begin Clrscr; A := 0; Writeln(‘Program Rumus A = (B+C)*(D-E)’); Writeln(‘-----------------------------‘); Writeln; Write(‘Input Nilai B : ‘);Readln(B); Write(‘Input Nilai C : ‘);Readln(C); Write(‘Input Nilai D : ‘);Readln(D); Write(‘Input Nilai E : ‘);Readln(E); A:=(B+C)*(D-E); Writeln(‘Nilai A adalah : ‘,A); Readkey;End;

Contoh Soal ( 2.4. ) :Buatlan program untuk mencari luas segitiga.

Jawaban :

Program luas_segitiga;Uses Crt;Var Alas, Tinggi : Integer; Luas : Real;Begin Clrscr; Luas := 0; Writeln(‘Program Mencari Luas Segitiga’); Writeln(‘-----------------------------‘);

Writeln;{ Input Alas dan Tinggi }

Write(‘Input nilai alas : ‘);Readln(Alas); Write(‘Input nilai tinggi : ‘);Readln(Tinggi); Writeln; { Cari Luas } Luas := (Alas*Tinggi)/2;

{ Tampilkan Luas } Writeln(‘Luas segitiga adalah : ‘,Luas); Readkey;End.

8

Page 21: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

2.8. Catatan Tambahan

Beberapa perintah tambahan yang sudah digunakan pada contoh-contoh program bab 2 :

1. Clrscr : berfungsi untuk menghilangkan atau membersihkan tampilan layar sebelumnya.

2. Readkey : berfungsi untuk meminta input berupa tekan tombol enter.

Soal – Soal Bab 2.

1. Buat program untuk mencari luas persegi panjang.2. Buat program untuk mencari luas bujur sangkar.3. Buat program untuk mencari dalil phytagoras.

8

Page 22: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

BAB 3PERULANGAN (LOOPING)

Tujuan :

1. Memberikan penjelasan mengenai struktur perulangan dengan statement For - Do,

termasuk didalamnya :a. Pengertian dan contoh perulangan statement For Positif.b. Pengertian dan contoh perulangan statement For Negatif.c. Pengertian dan contoh perulangan tersarang (Nested Loop).

2. Memberikan Penjelasan dan contoh mengenai struktur perulangan dengan statement

While – Do termasuk didalamnya penjelasan mengenai While-Do tersarang (nested

While - Do).

3. Memberikan penjelasan dan contoh mengenai perulangan dengan Statement Repeat-

Until termasuk di dalamnya penjelasan mengenai Repeat – Until tersarang.

Materi :

3.1. Defenisi Looping (Perulangan)

Looping atau perulangan adalah :Mengulang perintah (statement/syntax) atau blok perintah berulang kali sesuai dengan yang ditentukan dalam program atau yang ditentukan sendiri oleh pemakai (operator program).

Bentuk perulangan ada tiga macam, yaitu :1. Perulangan FOR - DO2. Perulangan WHILE - DO3. Perulangan REPEAT - UNTIL

3.2. Perulangan FOR - DO Perulangan dengan perintah FOR-DO atau biasa disebut FOR saja digunakan untuk mengulang perintah (statement/syntax) atau blok perintah berulang kali, sesuai dengan nilai awal dan nilai akhir pada perintah FOR tersebut.

Perulangan dengan perintah For dapat berupa :A. Perulangan For PositifB. Perulangan For NegatifC. Perulangan For Tersarang

8

Page 23: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

A. Perulangan For Positif.

Perulangan For positif adalah perulangan FOR dengan nilai awal lebih kecil dari nilai akhir. Variabel yang digunakan pada perulangan FOR positif nilainya akan otomatis bertambah satu demi satu sampai dengan nilai akhir.

Bentuk umum :

FOR VAR := nilai awal TO nilai akhir DO PERINTAH

Contoh :

For A := 1 To 10 Do Writeln('Halo');

Hasil penggalan program ini jika dijalankan (di-run) adalah menampilkan ke layar kata Halo sebanyak 10 baris, yaitu :

Halo Halo Halo dst

Contoh dalam program :

Program FOR_Positif;Uses Crt;var

A : Integer;Begin

Clrscr; For A:= 1 To 10 Do Writeln('Halo'); Readkey;

End.

Contoh Soal (3.1.)Dengan menggunakan perulangan For, buatlah program untuk menampilkan angka dari 1 sampai dengan 100 ke layar berurutan kesamping.

Jawaban :

Program FOR_Positif;Uses Crt;var

A : Integer;Begin

Clrscr; For A:= 1 To 100 Do Write(A:4); Readkey;

End.

8

Page 24: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

8

Page 25: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Contoh Soal (3.2.)Dengan menggunakan perulangan For, buatlah program untuk menghasilkan tampilan ke layar seperti berikut ini :

Jumlah angka dari 1 s/d 100 adalah : 5050

Jawaban :

Program FOR_Positif;Uses Crt;var

A, Jml : Integer;Begin

Clrscr; Jml := 0;

For A:= 1 To 100 Do Jml := Jml + A; Writeln(‘Jumlah angka dari 1 s/d 100 adalah : ‘,Jml); Readkey;

End.

Sesuai dengan defenisi perulangan yang telah dijelaskan di atas, bahwa nilai dari looping dapat juga ditentukan oleh pemakai (operator program). Ini artinya nilai perulangan akan terlebih dahulu diminta untuk diinputkan saat program dijalankan (di-run), sebelum perulangan itu dilaksanakan.

Misalnya untuk contoh soal (3.2) di atas, operator diminta untuk memasukkan nilai akhir looping saat program dijalankan, seperti tampak berikut ini :

Inputkan batas akhir looping : 100

Setelan operator memasukkan angka 100 dan menekan tombol enter, akan muncul hasil seperti berikut :

Jumlah angka dari 1 s/d 100 adalah : 5050

Jika misalnya operator memasukkan nilai akhir looping 500 dan menekan tombol enter, akan muncul hasil seperti berikut :

Jumlah angka dari 1 s/d 500 adalah : 125250

Maka programnya adalah sebagai berikut :

Program FOR_Positif;Uses Crt;var A, B_Akhir, Jml : Integer;Begin Clrscr; Jml := 0; Writeln(‘Input batas akhir looping : ‘);Readln(B_Akhir); Writeln; For A:= 1 To B_Akhir Do Jml := Jml + A; Writeln(‘Jumlah angka dari 1 s/d ‘,B_Akhir,’ adalah : ‘,Jml);

8

Page 26: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Readkey;End.B. Perulangan For Negatif.

Perulangan For negatif adalah perulangan FOR dengan nilai awal lebih besar dari nilai akhir. Variabel yang digunakan pada perulangan FOR negatif nilainya akan otomatis berkurang satu demi satu sampai dengan nilai akhir.

Bentuk umum :

FOR VAR := nilai awal DOWNTO nilai akhir DO PERINTAH

Contoh :

For A := 10 DownTo 1 Do Writeln(A);

Hasil penggalan program ini jika dijalankan adalah menampilkan ke layar angka 10 sampai dengan angka 1 perbaris, yaitu : 10 9 8 dst

Contoh dalam program :

Program FOR_Negatif;Uses Crt;var

A : Integer;Begin

Clrscr; For A:= 10 DownTo 1 Do Writeln(A); Readkey;

End.

C. Perulangan For Tersarang

Perulangan For tersarang adalah perulangan For yang berada dalam perulangan For lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.

Bentuk umum :

FOR VAR := nilai awal TO nilai akhir DO FOR VAR := nilai awal TO nilai akhir DO

PERINTAH

8

Page 27: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Contoh :

for baris:=1 to 3 do begin for kolom:=1 to 5 do write('*'); writeln; end;

Hasil dari contoh penggalan program di atas jika dijalankan adalah :

***************

Contoh dalam program :

Program bintang_dg_looping_for;uses crt;var baris,kolom : integer;Begin clrscr; Writeln('Program Menampilkan Bintang'); Writeln('--------------------------'); Writeln; for baris:=1 to 3 do begin for kolom:=1 to 5 do write('*'); writeln; end; readky;End.

CATATAN : Perintah FOR hanya akan mengulang satu perintah berikutnya. Jadi jika kita ingin

mengulang lebih dari satu perintah, maka kita gunakan BLOK PERINTAH.

Blok Perintah adalah dimulai dengan BEGIN dan diakhiri dengan END;Dimana diantara Begin dengan End; tersebut bisa ada satu perintah atau lebih.

Contoh :

Kita ingin menampilkan ke layar kata-kata : Halo Selamat Datang

sebanyak lima kali.

Maka solusinya adalah : For A := 1 to 5 Do Begin Writeln('Halo');

8

Page 28: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Writeln('Selamat Datang'); End;

Contoh dalam program :

Program FOR_Positif;Uses Crt;var A : Integer;Begin Clrscr; For A:= 1 To 5 Do Begin Writeln('Halo'); Writeln(‘Selamat Datang’); End; Readkey;End.

3.3. Perulangan WHILE - DO Perulangan While-Do digunakan untuk melakukan proses perulangan suatu statemen atau blok stetemen terus menerus selama kondisi pada While masih bernilai logika benar (kondisi terpenuhi).

Bentuk umum :

WHILE kondisi DO PERINTAH

Contoh :

A := 1; While A<=5 Do Begin Write(A); A:=A+1; End;

Hasil penggalan program ini jika dijalankan (di-run) adalah menampilkan ke layar :12345

Contoh dalam program :

Program While_Do;Uses Crt;var A : Integer;Begin Clrscr; A:=1; While A<=5 Do Begin Write(A); A:=A+1; End;

8

Page 29: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Readkey;End.Perbedaan Looping FOR – DO dengan Looping WHILE – DO :

1. Pada looping FOR nilai awal variabel yang kita gunakan untuk looping ditetapkan pada perintah FOR tersebut. Sementara pada looping while, nilai awal variabel looping ditetapkan sebelum While.

2. Pada looping FOR nilai variabel yang digunakan untuk looping akan bertambah 1 (satu) secara otomatis, sedangkan pada While nilai variabel yang kita gunakan untuk looping harus kita tambahkan secara manual.

3. Pada looping FOR kita tidak perlu menggunakan blok (Begin...End;) jika kita hanya mengulang (melooping) satu perintah saja. Sementara pada looping While hampir dipastikan kita harus menggunakan blok karena yang akan kita ulang pasti lebih dari satu perintah.

Perulangan WHILE – DO Tersarang

Perulangan While-Do tersarang adalah perulangan While-Do di dalam perulangan While-Do lainnya.

Contoh dalam program :

Program While_Do;Uses Crt;var A,B : Integer;Begin Clrscr; A:=1; While A<=5 Do Begin B:=1; While B<=5 Do Begin Write(B); B:=B+1; End; Writeln; A:=A+1; End; Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah menampilkan ke layar :

1234512345123451234512345

8

Page 30: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Pada looping While-Do, kita juga bisa menentukan nilai kondisi looping dari input yang dilakukan oleh operator program. Program akan terus melakukan looping selama input yang diberikan oleh operator program memenuhi kondisi pada While-Do.

Contoh :Kita akan membuat program Pascal menggunakan looping While-Do dengan tampilan seperti berikut ini :

Program Menampilkan Angka-------------------------

1 2 3 4 5 6 7 8 9 10

Ulangi Lagi (Y/T) : Y (Y diinputkan oleh operator)

Pada contoh di atas, program akan terus mengulang menampilkan angka sampai dengan input yang diberikan oleh operator pada Ulagi Lagi (Y/T) :, diinputkan huruf “Y”. Artinya, selama input yang diberikan adalah huruf “Y” maka program akan terus mengulang. Jika input yang diberikan bukan huruf “Y”, maka program akan berhenti.

Programnya sebagai berikut :

Program While_Do;Uses Crt;var A : Integer; Lagi : Char;Begin Lagi := ‘Y’; While Lagi=’Y’ Do Begin Clrscr; A:=1; While A<=10 Do Begin Write(A:3); A:=A+1; End; Writeln; Write(‘Ulangi Lagi (Y/T) : ‘);Readln(Lagi); End;End.

Soal – Soal While – Do

Dengan menggunakan looping While – Do, buatlah program Pascal untuk menghasilkan tampilan seperti berikut ini :

1. HaloHaloHaloHaloHaloApa Kabar

8

Page 31: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

2. Jumlah angka dari 1 – 100 adalah : 5050

3. Input batas looping : 50Jumlah angka dari 1 – 50 adalah : 1275

4. Input batas looping : 5

***************

5. 123456789

6. Input batas looping : 100Jumlah angka dari 1 – 100 adalah : 5050

Ulangi Lagi (Y/T) :

3.4. Perulangan REPEAT - UNTIL Perulangan Repeat-Until digunakan untuk melakukan proses perulangan satu statemen atau blok stetemen terus menerus selama kondisi pada Until bernilai logika benar (kondisi terpenuhi).

Bentuk umum :

REPEAT PERINTAH UNTIL kondisi

Contoh :

A := 1; Repeat Write(A); A:=A+1; Until A>5;

Hasil penggalan program ini jika dijalankan (di-run) adalah menampilkan ke layar :

12345

8

Page 32: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Contoh dalam program :

Program Repeat_Until;Uses Crt;var A : Integer;Begin Clrscr; A:=1; Repeat Write(A); A:=A+1; Until A>5; Readkey;End.

Perulangan REPEAT - UNTIL Tersarang

Perulangan Repeat-Until tersarang adalah perulangan Repeat-Until di dalam perulangan Repeat-Until lainnya.

Contoh dalam program :

Program Repeat_Until;Uses Crt;var A,B : Integer;Begin Clrscr; A:=1; Repeat B:=1; Repeat Write(B); B:=B+1; Until B>5; Writeln; A:=A+1; Until A>5; Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah menampilkan ke layar :

1234512345123451234512345

8

Page 33: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Sama halnya dengan looping While-Do, pda looping Repeat-Until kita juga bisa menentukan nilai kondisi looping dari input yang dilakukan oleh operator program. Program akan terus melakukan looping selama input yang diberikan oleh operator program memenuhi kondisi pada Until.

Contoh :Sama dengn contoh pada looping While-Do, kita akan membuat program Pascal menggunakan looping Repeat-Until dengan tampilan seperti berikut ini :

Program Menampilkan Angka-------------------------

1 2 3 4 5 6 7 8 9 10

Ulangi Lagi (Y/T) : Y (Y diinputkan oleh operator)

Pada contoh di atas, program akan terus mengulang menampilkan angka sampai dengan input yang diberikan oleh operator pada Ulagi Lagi (Y/T) :, diinputkan selain dari huruf “Y”. Artinya, selama input yang diberikan adalah huruf “Y” maka program akan terus mengulang. Jika input yang diberikan bukan huruf “Y”, maka program akan berhenti.

Programnya sebagai berikut :

Program Repeat_Until;Uses Crt;var A : Integer; Lagi : Char;Begin Repeat Clrscr; A:=1; Repeat Write(A:3); A:=A+1; Until A>10; Writeln; Write(‘Ulangi Lagi (Y/T) : ‘);Readln(Lagi); Until Lagi IN[‘T’,’t’];End.

Soal – Soal Repeat - Until

Dengan menggunakan looping Repeat-Until, buatlah program Pascal untuk menghasilkan tampilan seperti pada Soal-Soal While-Do di atas.

8

Page 34: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

BAB 4PENSELEKSIAN KONDISI

( PEMILIHAN )

Hampir tiap program yang komplek mengandung suatu penseleksian kondisi atau pemilihan. Dengan penseleksian kondisi, program dapat menentukan tindakan yang harus dikerjakan, tergantung dari hasil kondisi yang diseleksi tersebut. Untuk menseleksi suatu kondisi, didalam Pascal dapat dipergunanakan statamen IF dan statemen CASE.

4.1. STATEMEN IF

Statemen IF digunakan untuk memecahkan masalah dengan terlebih dahulu mengevaluasi sebuah kondisi. Jika kondisi terpenuhi, maka sebuah perintah atau serangkaian perintah (statemen/aksi) akan dilakukan. Jika kondisi tidak terpenuhi maka program akan melakukan perintah berikutnya, setelah statemen IF tersebut.

Bentuk umum :

IF kondisi THEN Aksi1 ELSE Aksi2;

Bentuk umum di atas, bagian ELSE dapat dihilangkan, jika hanya terdapat satu kondisi yang memerlukan perlakuan atau penanganan khusus, sehingga bentuk umum di atas tersebut menjadi :

IF kondisi THEN Aksi;

Contoh :

IF nilai>=68 THEN Writeln(‘Tuntas’) ELSE Writeln(‘Tidak Tuntas’);

atau : IF nilai>=68 THEN Writeln(‘Tuntas’);

Contoh dalam program :

Program Pemilihan_IF;Uses Crt;Var MatPel : String[50]; Nilai : Integer;Begin Clrscr; Write(‘Mata Pelajaran : ‘);Readln(MatPel); Write(‘Nilai Kognitif : ‘);Readln(Nilai);

8

Page 35: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

(* --- Seleksi Nilai dg Menggunakan IF --- *) If Nilai >= 68 Then Write(‘Keterangan : Tuntas’) Else Write(‘Keterangan : Tidak Tuntas’);

Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah :

Mata Pelajaran : Mulok (diinputkan)Nilai Kognitif : 70 (diinputkan)Keterangan : Tuntas (hasil seleksi IF)

Dari contoh di atas, untuk nilai atau isi dari Keterangan, yaitu Tuntas atau Tidak Tuntas dapat juga kita jadikan sebuah variabel, yaitu menjadi seperti berikut ini :

Program Pemilihan_IF;Uses Crt;Var MatPel : String[50]; Nilai : Integer; Ket : String[25];Begin Clrscr; Write(‘Mata Pelajaran : ‘);Readln(MatPel); Write(‘Nilai Kognitif : ‘);Readln(Nilai); (* --- Seleksi Nilai dg Menggunakan IF --- *) If Nilai >= 68 Then Ket := 'Tuntas' Else Ket := 'Tidak Tuntas';

(* --- Tampilkan Hasil Seleksi/Pemilihan --- *) Writeln('Keterangan : ',Ket);

Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah sama dengan hasil running contoh di atas.

Pada penseleksian IF, jika pada satu kondisi terdapat lebih dari satu aksi yang harus dilakukan, maka untuk itu kita gunakan blok (Begin...End;).Misalnya dari contoh di atas, jika nilai >=68, maka Ket adalah ‘Tuntas’ dan misalnya tambah satu aksi lagi, yaitu Ket1 dengan isi “Tidak Remedial”. Dan untuk Ket ‘Tidak Tuntas’, Ket1 kita isi dengan “Harus Remedial”.

Programnya sebagai berikut :

Program Pemilihan_IF;Uses Crt;Var

8

Page 36: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

MatPel : String[50]; Nilai : Integer; Ket : String[25]; Ket1 : String[25];Begin Clrscr; Write(‘Mata Pelajaran : ‘);Readln(MatPel); Write(‘Nilai Kognitif : ‘);Readln(Nilai); (* --- Seleksi Nilai dg Menggunakan IF --- *) If Nilai >= 68 Then Begin Ket := 'Tuntas'; Ket1 := 'Tidak Remedial'; End Else Begin Ket := 'Tidak Tuntas'; Ket1 := 'Harus Remedial'; End;

(* --- Tampilkan Hasil Seleksi/Pemilihan --- *) Writeln('Keterangan : ',Ket); Writeln('Tindakan : ',Ket1);

Readkey;End.

Contoh Soal :

1. Dengan menggunakan IF buatlah program Pascal untuk menentukan angka yang diinputkan, apakah angka tersebut adalah Ganjil atau Genap, dengan tampilan seperti berikut ini :

Inputkan Sembarang Angka : 6 (diinputkan) Angka Tersebut adalah : Genap (hasil seleksi IF)

Jawab :

Program Pemilihan_IF;Uses Crt;Var Angka : Integer; Jenis : String[10];Begin Clrscr; Write(‘Inputkan Sembarang Angka : ‘);Readln(Angka); (* --- Seleksi Angka dg Menggunakan IF --- *) If Angka Mod 2 = 0 Then Jenis := 'Genap' Else Jenis := ‘Ganjil’;

(* --- Tampilkan Hasil Seleksi/Pemilihan --- *) Writeln(‘Angka Tersebut adalah : ',Jenis);

8

Page 37: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Readkey;End.2. Dengan menggunakan IF buatlah program Pascal untuk menampilkan bilangan genap

diantara 1 sampai 100.

Jawab :

Program Pemilihan_IF_dalam_FOR;Uses Crt;Var A : Integer;Begin Clrscr; (* --- Looping dari 1-100 --- *) For A:=1 To 100 DO (* --- Seleksi nilai A dengan IF --- *) (* --- dimana jika A bernilai Genap --- *) (* --- maka tampilkan nilai A --- *) If A Mod 2 = 0 Then Write(A:4);

Readkey;End.

4.2. STATEMEN IF TERSARANG

Statemen IF Tersarang adalah statemen IF yang berada dalam statemen IF.

Bentuk umum :

IF kondisi1 THEN Statemen1 ELSE IF kondisi2 THEN Statemen2 ELSE Statemen3;

Untuk IF dengan tiga kondisi atau lebih, maka setelah ELSE yang terakhir dari bentuk umum di atas, kita tambah lagi IF baru, seperti berikut ini :

IF kondisi1 THEN Statemen1 ELSE IF kondisi2 THEN Statemen2 ELSE IF kondisi3 THEN Statemen3 ELSE Statemen4;

Begitu seterusnya, jika kita akan menseleksi banyak kondisi.

8

Page 38: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Contoh :

IF angka>0 THEN Writeln(‘Angka Lebih dari Nol’) ELSE IF angka<0 THEN Writeln(‘Angka Kurang dari Nol’) ELSE Writeln(‘Angka Sama dengan Nol’);

Contoh dalam program :

Program Pemilihan_IF;Uses Crt;Var Angka : Integer;Begin Clrscr; Write(‘Inputkan Angka : ‘);Readln(Angka);

(* --- Seleksi Angka dg Menggunakan IF --- *) IF angka>0 THEN Writeln(‘Angka Lebih dari Nol’) ELSE IF angka<0 THEN Writeln(‘Angka Kurang dari Nol’) ELSE Writeln(‘Angka Sama dengan Nol’);

Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah :

Inputkan Angka : 1 (diinputkan)Angka Lebih dari Nol (hasil seleksi IF)

Contoh Soal :1. Dengan menggunakan IF Tersarang, buatlah program Pascal untuk mencari nilai

huruf dan keterangan dari nilai angka yang diinputkan. Dengan ketentuan sebagai berikut :

Jika Nilai Angka Maka Nilai Huruf Keterangan0 – 44 E Sangat Kurang

45 – 54 D Kurang55 – 69 C Cukup70 – 84 B Baik85 - 100 A Sangat Baik

Dan tampilan program adalah seperti berikut ini :

Inputkan nilai angka : 67 (diinputkan) Nilai hurufnya adalah : C (hasil seleksi IF)

8

Page 39: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Keterangan : Cukup (hasil seleksi IF)

2. Dengan menggunakan IF Tersarang di dalam Looping, buatlah program untuk mencari nilai discount dengan ketentuan sebagai berikut :

Jika Jumlah Belanja Maka Diskon(dari Jumlah Belanja)

< 500 rb 0 %500 rb – 999 rb 2 %

1 jt – 1,9 jt 5 %>= 2 jt 10 %

Dan tampilan program adalah seperti berikut ini :

Inputkan nama barang ke - 1 : Semen (diinputkan) Inputkan harga barang ke - 1 : 100000 (diinputkan) Inputkan nama barang ke - 2 : Pasir (diinputkan) Inputkan harga barang ke - 2 : 50000 (diinputkan) Inputkan nama barang ke - 3 : Batako (diinputkan) Inputkan harga barang ke - 3 : 50000 (diinputkan)

Jumlah Belanja : 2000000 (penjumlahan)Diskon : 10% (hasil seleksi IF)Nilai Diskon : 200000 (proses)Total Bayar : 1800000 (proses)

4.3. CASE

CASE adalah merupakan bentuk lain penseleksian kondisi (pemilihan). Jadi IF dan CASE mempunyai fungsi atau kegunaan yang sama, yaitu sama-sama utnuk penseleksian kondisi atau pemilihan.

Tapi, CASE tidak bisa kita gunakan untuk semua masalah yang akan kita seleksi. CASE hanya bisa digunakan untuk menseleksi variable yang jelas batasan nilainya.

Bentuk umum :

CASE variable OF Kondisi : Aksi; End;

Jika terdapat lebih dari satu kondisi, maka bentuknya adalah seperti berikut ini :

CASE variable OF Kondisi1 : Aksi1; Kondisi2 : Aksi2; Kondisi3 : Aksi3; End;

Dan, jika kita memakai ELSE, hanya bisa kita lakukan setelah Aksi terakhir, seperti berikut ini :

8

Page 40: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

CASE variable OF Kondisi1 : Aksi1; Kondisi2 : Aksi2; Kondisi3 : Aksi3; ELSE Aksi4; End;

Contoh :

CASE NA OF 0..44 : NH := ‘E’; 45..54 : NH := ‘D’; 55..69 : NH := ‘C’; 70..84 : NH := ‘B’; 85..100 : NH := ‘A’; ELSE NH := ‘Nilai Anka Tidak Terdefenisi’; End;

Contoh dalam program :

Program Pemilihan_CASE;Uses Crt;Var

NA : Integer;NH : String;

Begin Clrscr; Write(‘Inputkan Nilai Angka : ‘);Readln(NA);

(* --- Seleksi NA dg Menggunakan CASE --- *) CASE NA OF 0..44 : NH := ‘E’; 45..54 : NH := ‘D’; 55..69 : NH := ‘C’; 70..84 : NH := ‘B’; 85..100 : NH := ‘A’; ELSE NH := ‘Nilai Angka Tidak Terdefenisi’; End;

(* --- Tampilkan Hasil Seleksi --- *) Writeln(‘Nilai Huruf : ‘,NH); Readkey;End.

Hasil dari program ini jika dijalankan (di-run) adalah :

Inputkan Nilai Angka : 70 (diinputkan)Nilai Huruf : B (hasil seleksi CASE)

8

Page 41: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Untuk satu kondisi pada CASE dengan lebih dari satu aksi, maka kita juga gunakan blok (Begin...End;), seperti berikut ini :

CASE NA OF 0..44 : Begin NH := ‘E’; Ket := ‘Sangat Kurang’; End;End;

Contoh dalam program :

Program Pemilihan_CASE;Uses Crt;Var

NA : Integer;NH : String[35];Ket : String[25];

Begin Clrscr; Write(‘Inputkan Nilai Angka : ‘);Readln(NA);

(* --- Seleksi Angka dg Menggunakan CASE --- *) CASE NA OF 0..44 : Begin NH := ‘E’; Ket := ‘Kurang Sekali’; End; 45..54 : Begin NH := ‘D’; Ket := ‘Kurang’; End; 55..69 : Begin NH := ‘C’; Ket := ‘Cukup’; End; 70..84 : Begin NH := ‘B’; Ket := ‘Baik’; End; 85..100 : Begin NH := ‘A’; Ket := ‘Sangat Baik’; End; ELSE Begin NH := ‘Nilai Angka Tidak Terdefenisi’; Ket := ‘Ulang Lagi Input Nilai Angka !’); End; End;

(* --- Tampilkan Hasil Seleksi --- *) Writeln(‘Nilai Huruf : ‘,NH); Writeln(‘Keterangan : ‘,Ket);

Readkey;End.

8

Page 42: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

8

Page 43: Materi Pascal

©Copyright by HANAFI, SMANSA Batam, 2009

Dasar Pemograman dengan Turbo Pascal

Hasil dari program ini jika dijalankan (di-run) adalah :

Inputkan Nilai Angka : 70 (diinputkan)Nilai Huruf : B (hasil seleksi CASE)Keterangan : Baik (hasil seleksi CASE)

Contoh Soal :

Dengan menggunakan CASE, buatlah program Pascal untuk menyelesaikan Contoh Soal no. 2 pada soal IF di atas.

8