MODUL PRAKTIKUM ALGORITMA & PEMROGRAMAN 2 Versi 3.1 Tahun Penyusunan 2012 1. Dina Anggraini 2. Benny Irawan Tim Penyusun 3. Kuwat Setiyanto 4. Hela Yudha 5. Rahma Aditia Donny Irianto Laboratorium Sistem Informasi Akuntansi Fakultas Ekonomi UNIVERSITAS GUNADARMA
Pertemuan 1 Konsep Dasar Pascal 7.0 Objektif: 1. Memahami Sejarah singkat bahasa pemrograman Pascal 7.0 2. Mengerti dan dapat menggunakan tipe-tipe data yang ada 3. Dapat menggunakan operator-operator dalam Pascal 4. Dapat menggunakan statement input dan output Pertemuan 1 5
P1.1 Teori Sejarah Singkat Bahasa Pascal Apa itu Turbo Pascal? Pascal merupakan suatu bahasa komputer tingkat tinggi yang dibuat sekitar tahun 1970 oleh Niklaus Wirth dan digunakan untuk pendidikan komputer. Nama Pascal diambil dari seorang ahli matematika yang bernama Blaise Pascal yang menemukan mesin hitung pertama. Bahasa Pascal dirancang untuk menyelesaikan masalah dari berbagai kalangan pemakai, mulai dari para mahasiswa, pendidik, dan ilmuwan. Salah satu kompiler pascal yang terkenal dan tercepat adalah Turbo PASCAL yang dibuat oleh perusahaan Borland (http://www.borland.com). Adakah versi Turbo Pascal untuk pemrograman Visual? Pada trend pemrograman Visual, perusahaan Borland mengeluarkan Borland Delphi yang menggunakan dasar dialek Pascal pada lingkungan pemrograman Visual. Apa artinya Pascal adalah bahasa pemrogram terstruktur? Pascal adalah suatu bahasa pemrograman terstruktur. Hal tersebut berarti semua program yang Anda buat harus terstruktur dan teratur, dalam hal ini ada pemakaian goto dan jump. Bagaimana Struktur program pascal yang paling sederhana? Struktur program pascal yang paling sederhana adalah : uses...; var...; begin... {Your program is here} end. Konsep Dasar Pascal 7.0 6
Dapatkah anda memberi contoh sebuah program pascal yang sederhana? uses crt; begin Clrscr; Writeln('Saya sedang belajar Pascal!'); Writeln('Di PentaCOM'); end. Penggunaan Turbo Pascal Dari modus prompt DOS, hal yang dilakukan sbb: A:\> turbo Menu dalam Pascal : a. File (Alt-F) New Open Save Save as Save all Change dir Print Printer setup : untuk membuat program baru. : untuk mengambil program yang sudah ada di disk kerja. : untuk menyimpan program. : untuk menyimpan file dengan nama yg beda : untuk menyimpan semua program yg di edit : untuk mengganti direktori yang aktif. : untuk mencetak program yg sedang dibuka : untuk men-setting printer Konsep Dasar Pascal 7.0 7
DOS Shell Exit : untuk menjalankan perintah-printah DOS : mengakhiri turbo Pascal dan kembali keprompt DOS b. Edit (Alt-E) Digunakan untuk keperluan memperbaiki program. c. Search (Alt-S) Digunakan untuk mencari kata atau baris program c. Run (Alt-R) Digunakan untuk menjalankan program yang ada dijendela edit. d. Compile (Alt-C) Digunakan untuk mengkompilasi program. Destination Memory (disimpan di memory). Destination Disk (disimpan di disk dengan ext.exe). e. Debug dan Break/Watch (Alt-D & Alt-B) Digunakan untuk melacak program.mengaktifkan Debug & Break/Watch. f. Tools (Alt-T) Digunakan untuk menampilkan pesan/ output dari program g. Options (Alt-O) Digunakan untuk mengatur/menentukan kembali bagaimana F1-help, F2-Save F3- new file, F4-import data, F9-expand, F10-contract dan Esc-exit integrated environment bekerja. h. Window (Alt-W) Untuk mengatur tampilan dari program-program yang dipanggil, bentuk Tile atau cascade. **Cat : tekan Esc untuk meninggalkan menu. Struktur Program Pascal Secara ringkas, struktur suatu program Pascal dapat terdiri dari : Konsep Dasar Pascal 7.0 8
1. Judul Program 2. Tubuh Program Tubuh program dibagi menjadi dua bagian utama : a. Bagian deklarasi - deklarasi label - deklarasi konstanta - deklarasi tipe - deklarasi variabel/perubah - deklarasi prosedur - deklarasi fungsi b. Bagian Pernyataan/Terproses Cat : baris-baris komentar untuk memperjelas program diletakkan diantara tanda (* dan *) atau { dan }. 1. Judul program Judul program ini digunakan untuk memberi nama program dan sifatnya optional. Jika ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma (;). Contoh penulisan judul program : PROGRAM latihan; PROGRAM latihan(input,output); PROGRAM lat_1; PROGRAM lat_satu(output); 2. Bagian Pernyataan/Terproses Bagian ini adalah bagian yang akan terproses dan terdapat dalam suatu blok yang diawali dengan BEGIN dan diakhiri dengan END (penulisan END diikuti dengan tanda titik). Bagian ini berisi pernyataan / statamen yang merupakan instruksi program. Setiap statemen diakhiri dengan tanda titik koma (;). Bentuk umumnya adalah sbb : BEGIN Konsep Dasar Pascal 7.0 9
... statemen; statemen;... END. 3. Bagian deklarasi Bagian ini menjelaskan / memperkenalkan secara rinci semua data yang akan digunakan pada suatu program. Dalam penulisannya tidak boleh sama dengan kata-kata cadangan (reserved words) dan selalu diakhiri dengan titik koma (;). Deklarasi label Deklarasi label digunakan Jika pada penulisan program akan menggunakan statemen GOTO (untuk meloncat ke suatu statement tertentu). Contoh : Catt : Statement Readln digunakan untuk menghentikan tampilan. Karena jika tidak menggunakan Readln, ketika dijalankan, akan kembali ke Editor program Konsep Dasar Pascal 7.0 10
Bila program di atas dijalankan, output sbb : Deklarasi konstanta Deklarasi ini digunakan untuk mengidentifikasikan data yang nilainya sudah ditentukan dan pasti, tidak dapat dirubah dalam program. Contoh : Const phi = 3.14; Deklarasi tipe Deklarasi ini digunakan untuk menyebutkan tipe setiap data yang akan digunakan pada program Pascal. Tipe data menentukan jangkauan nilai yang mungkin dari data yang digunakan Contoh : Output program, sbb : hasil penjumlahan = 4.52 Konsep Dasar Pascal 7.0 11
Deklarasi variabel/perubah Deklarasi ini berisi data-data yang bisa berubah-ubah nilainya di dalam program. Deklarasi variabel harus di letakkan setelah deklarasi tipe (jika ada). Contoh : Output program : hasil = 14.2 Konsep Dasar Pascal 7.0 12
Program diatas bisa ditulis sbb : VAR satu,dua : INTEGER; a,b : REAL; BEGIN... statement;... END. Contoh jika terdapat deklarasi tipe : TYPE bilangan = integer; VAR satu,dua,a : bilangan; b : real; BEGIN... statement;... END. Deklarasi prosedur dan Fungsi Program dapat dibagi menjadi beberapa bagian/subprogram, yang terdiri dari satu program utama dan satu / lebih program bagian (bisa berupa prosedur / fungsi). Deklarasi prosedure/ fungsi terletak pada subprogram yang menggunakannya Konsep Dasar Pascal 7.0 13
Tipe-tipe Data dalam Pascal Tipe Data dapat terletak pada deklarasi variabel maupun pada deklarasi tipe. Pascal menyediakan beberapa macam tipe data, yang terdiri dari : o Tipe data sederhana/skalar, terdiri dari : o Tipe data standar/predefinisi bulat (integer) real karakter string logika (boolean) o Tipe data didefinisikan pemakai : subjangkauan (subrange) terbilang (enumerated) o Tipe data terstruktur, terdiri dari : larik (array) rekaman (record) berkas (file) himpunan (set) o Tipe data penunjuk (pointer) Tipe data standar Tipe data integer Tipe integer adalah bilangan yang tidak mempunyai titik desimal/bilangan pecahan. Integer terdiri dari beberapa tipe, yaitu : - byte, dengan jangkauan nilai 0..255 - shortint, dengan jangkauan nilai -128..127 - integer, dengan jangkauan nilai -32768..32767 - word, dengan jangkauan nilai 0..65535 - longint, dengan jangkauan nilai -2147483648..2147483647 Operator yang dapat digunakan pada data tipe integer : +, penjumlahan Konsep Dasar Pascal 7.0 14
-, pengurangan *, perkalian div, pembagian mod, sisa pembagian Contoh : hasil program : Tipe data real Tipe real adalah bilangan yang mengandung pecahan, paling sedikit harus ada satu digit sebelum dan sesudah titik desimal. Operator yang dapat digunakan pada data tipe real adalah : + penjumlahan - pengurangan * perkalian / pembagian Konsep Dasar Pascal 7.0 15
Contoh : Output program, sbb : Tipe data karakter Nilai data karakter berupa sebuah karakter yang ditulis diantara tanda petik tunggal, misalnya : 'A', 'b', '@', dan sebagainya. Karakter yang dapat diterima oleh komputer : huruf besar/kecil : A,B,C,...,Z / a,b,...,z digit : 1,2,3,...,9 operator aritmatika : * / + - tanda baca :,. ; :?! simbol khusus : $ @ { } ( ) [ ] % # spasi Konsep Dasar Pascal 7.0 16
Contoh : Hasilnya : Tipe data string Nilai data string adalah satu atau lebih karakter yang terletak diantara tanda petik tunggal, misal : 'GUNADARMA'. Bila panjang dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap panjangnya 255 karakter. Contoh : Konsep Dasar Pascal 7.0 17
hasil : Tipe data boolean Data tipe boolean mempunyai dua nilai, yaitu True dan False. Contoh : hasil : Tipe data Terdefinisi Tipe data subjangkauan Tipe data ini adalah tipe data yang dapat didefinisikan sendiri oleh pemakai. Nilai data pada tipe ini mempunyai jangkauan tertentu. Misalkan nilai ujian mempunyai harga 0 sampai 100, maka nilai ujian dapat didefinisikan sbb : Konsep Dasar Pascal 7.0 18
TYPE nilai = 0..100; Contoh : VAR sks : 1..4; angkatan : 89..95; nilai : 'A'..'E'; Tipe data terbilang Tipe data ini juga dapat didefinisikan sendiri oleh pemakai. Disebut tipe terbilang karena semua nilai disebut satu persatu. Contoh : TYPE hari = (Senin,Selasa,Rabu,Kamis,Jum'at,Sabtu,Minggu); hari_kerja = (Senin,Selasa,Rabu,Kamis,Jum'at); situasi = (senang,gembira,sedih,susah); Tipe data larik (array) Larik (array) adalah kumpulan data yang mempunyai tipe data sejenis. Daftar nomor telpon, daftar kode mata kuliah, vektor, matrik merupakan contoh larik. Contoh penulisan tipe larik berdimensi satu sbb : CONST batas = 20; VAR telpon : ARRAY[1..3] OF STRING[7]; { larik dengan nama telpon mempunyai 3 data dengan tipe string } nilai : ARRAY[1..5] OF INTEGER; { larik dengan nama nilai mempunyai 5 data dengan tipe integer } gaji : ARRAY[1..batas] OF REAL; { larik dengan namagaji mempunyai 20 data dengan tipe real } Contoh larik yang mempunyai tipe data terbilang atau subjangkauan : TYPE batas = 0..100; keadaan = (baru,lama,bagus,jelek); Konsep Dasar Pascal 7.0 19
VAR nilai : ARRAY[1..30] OF 'A'..'B'; { larik dengan nama nilai mempunyai 30 data, dan pengisian data yang diperbolehkan hanya A, B, C, D, E } angka : ARRAY[1..50] OF batas; { larik dengan nama angka mempunyai 50 data, dan pengisian data yang diperbolehkan hanya 1,2,3,...,99,100 } baju : ARRAY[1..10] OF keadaan; { larik dengan nama angka mempunyai 10 data,dan pengisian data yang diperbolehkan baru, lama, bagus, jelek } Contoh program : hasil : Contoh penulisan tipe larik berdimensi dua sbb : VAR tabel : ARRAY[1..3,1..2] OF BYTE; { larik tabel mempunyai 3 baris dan 2 kolom dengan tipe byte } BEGIN tabel[1,1] := 5; { baris 1, kolom 1 } Konsep Dasar Pascal 7.0 20
tabel[1,2] := 7; tabel[2,1] := 21; { baris 2, kolom 1 } tabel[2,2] := 18; tabel[3,1] := 8; tabel[3,2] := 7; WRITELN('BARIS 1 KOLOM 2 = ',tabel[1,2]); END. hasil : BARIS 1 KOLOM 2 = 7 Operator-Operator dalam Pascal Untuk pengolahan type variabel di sediakan berbagai jenis operator antara lain 1. Operator Aritmatika Operator Integer Type Real Type + Penjumlahan Penjumlahan - Pengurangan Pengurangan * Perkalian Perkalian / Pembagian Pembagian DIV Hasil bagi MOD Sisa Bagi 2. Operator Logika Operator Integer Type Boolean Type NOT Bitwise Negation Logical Negation AND Bitwise AND Logical AND OR Bitwise inclusive OR Logical inclusive OR XOR Bitwise exclusive OR Logical exclusive OR SHL SHR Bitwise shift-left Bitwise shift-right 3. Operator relasi yang mengembalikan hasil Boolean Operator Fungsi := Menyatakan nilai Konsep Dasar Pascal 7.0 21
= Sama dengan <> Tidak sama dengan < Lebih kecil > Lebih besar <= Lebih kecil atau sama dengan >= Lebih besar atau sama dengan Statement Input - Output Memasukkan Data Cara yang paling banyak digunakan untuk memasukkan data adalah dengan cara mengetikkan lewat keeyboard. Pascal menyediakan prosedur untuk maksud tersebut yaitu prosedur standar Read dan Readln. Sintaks: READ/READLN(V); Keterangan : V = variabel. READ = pada statemen ini posisi kursor tidak pindah ke baris selanjutnya. READLN = pada statemen ini posisi kursor akan pindah ke baris selanjutnya setelah di input. Menampilkan Hasil Untuk menampilkan hasil dengan bahasa Pascal, digunakan prosedur standar Write dan Writeln. Sintaks: WRITE/WRITELN(V); Keterangan : V = variabel. WRITE/WRITELN = sama dengan READ/READLN. Konsep Dasar Pascal 7.0 22
Hasilnya Tampilan terformat Parameter CH:N Digunakan untuk membentuk format tampilan Char selebar N karakter Hasilnya : Konsep Dasar Pascal 7.0 23
Penjelasan : huruf A didepannya diberi spasi 5, sedang B diberi 3 spasi Parameter S:N Digunakan untuk format tampilan string Hasilnya : Penjelasan akan tampil Bahasa : Pascal 10 karakter Parameter I:N Digunakan untuk format tampilan Integer Konsep Dasar Pascal 7.0 24
Hasilnya Penjelasan akan tampil Jumlah data: 275 5 digit Parameter R:N Digunakan untuk format tampilan Real. Hasilnya Konsep Dasar Pascal 7.0 25
Penjelasan akan tampil Nilai ujian: 1.23450E+02 12 digit P1.2 Contoh Kasus Buatlah program sederhana menggunakan konstanta yang akan menghasilkan output 50 tahun Indonesia Merdeka Catt : penggunaan statemen Clrscr adalah untuk menghapus layar, dan kursor akan berada di pojok kiri atas dari layar. Unit yang digunakan adalah Uses Crt. Bila program dijalankan, output sbb : Konsep Dasar Pascal 7.0 26
P1.3 Latihan 1. Buatlah program sederhana menggunakan tipe data integer, char, dan real! 2. Buatlah program sederhana untuk menghitung luas segitiga! 3. Buatlah progam sederhana untuk menghitung luas persegi panjang! P1.4 Daftar Pustaka 1 Ifada N, Diktat Mata Kuliah Algoritma Pemrograman, Bangkalan: Jurusan Teknik Informatika Universitas Trunojoyo, 2005. 2 Munir R, Algoritma dan Pemrograman dengan Pascal dan C edisi Kedua, Bandung: Informatika, 2003. 3 Jogiyanto H, Turbo Pascal, Yogyakarta Andi, 2006. Konsep Dasar Pascal 7.0 27