Modul Pascal Dan Algoritma Pemrograman PDF [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

2012



Dasar Pemrograman Pascal ALGORITMA PEMROGRAMAN DALAM PEMROGRAMAN PASCAL



Priyatmoko.computer.host Contact Person Email : [email protected] 3/4/2012



A. ALGORITMA PEMROGRAMAN 1. DEFINISI ALGORITMA Terdapat beberapa definisi mengenai kata Algoritma : 1. Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis (Rinaldi Munir :2002). 2. Algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah (KBBI :1988). 3. Algoritma adalah suatu himpunan hingga dari instruksi-instruksi yang secara jelas memperinci langkah-langkah proses pelaksanaan, dalam pemecahan suatu masalah tertentu, atau suatu kelas masalah tertentu, dengan dituntut pula bahwa himpunan instruksi tersebut dapat dilaksanakan secara mekanik (Team Gunadarma :1988). Jadi “Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa: Program = Algoritma + Bahasa (Struktur Data) Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya. Pembuatan algoritma mempunyai banyak keuntungan di antaranya: 1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya. 2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman. 3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.



2



2. CIRI ALGORITMA Menurut Donald E. Knuth, algoritma mempunyai lima ciri penring : 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2. Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua. 3. Algoritma memiliki nol atau lebih masukan (input). 4. Algoritma mempunyai nol atau lebih keluaran (output). 5. Algoritma harus sangkil (efektif) 3. NOTASI PENULISAN Di bawah ini dikemukakan beberapa notasi yang digunakan dalam penulisan algoritma, antara lain : 1)



Notasi yang dinyatakan dalam kalimat deskriptif Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas. Notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar. Tabel 1.1. Contoh-Contoh Algoritma dalam Kehidupan Sehari-hari No.



Proses



Algoritma



Contoh Langkah dalam Algoritma



1



Membuat kue



Resep kue



Masukkan telur ke dalam wajan, kocok sampai mengembang



2



Membuat pakaian



Pola pakaian



Gunting kain dari pinggir kiri bawah ke arah kanan sejauh 5 cm



3



Merakit mobil



4



Kegiatan seharihari



Panduan merakit Jadwal harian



Sambungkan komponen A dengan komponen B Pukul 06.00: mandi pagi, pukul 07.00: berangkat kuliah



5



Mengisi voucer HP Panduan pengisian



Tekan 888, voucer



masukkan



nomor



3



Contoh dalam aplikasi bahasa Pascal: Algoritma Bilangan_Maksimum Diberikan tiga buah bilangan bulat. Carilah bilangan bulat maksimum diantara ketiga bilangan tersebut. Deskripsi : (1) baca bilangan 1 (2) baca bilangan 2 (3) bandingkan bilangan 1 dan bilangan 2, kita ambil yang lebih besar, jika kedua bilangan tersebut sama besar, dapat kita ambil bilangan 1, dan sebut bilangan tersebut MAX (4) baca bilangan 3 (5) bandingkan MAX dengan bilangan 3, besar, jika keduanya sama besar, bilangan tersebut MAX.



dan pilih yang pilih MAX dan



lebih sebut



(6) keluarkan sebagai output MAX 2)



Notasi yang dinyatakan dengan pseudo code Pseudocode adalah notasi yang menyerupai bahasa pemrograman tingkat tinggi. Keuntungan menggunakan notasi pseudo code adalah kemudahan mengkonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa pemrograman, karena terdapat korespondensi antara setiap pseudo code dengan notasi bahasa pemrograman. Contoh : Algoritma Bilangan_Maksimum { Dibaca tiga buah bilangan dari piranti masukan. Carilah bilangan bulat maksimum diantara ketiga bilangan tersebut } Deklarasi : Bil1,Bil2,Bil3 : maksimumnya} MAX



integer



{bilangan



yang



dicari



: integer {variabel bantu}



Deskripsi : Read (Bil1,Bil2) If Bil1 >= Bil 2 then Bil1 = MAX Else Bil2 = MAX Read (Bil3) If Bil3 >= MAX then Bil3 = MAX Write (MAX)



4



3)



Notasi yang dinyatakan dalam flow chart Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma yang pendek, namun untuk masalah yang algoritmanya besar, notasi ini jelas tidak efektif. Selain itu, pengkonversian notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar. Contoh : Algoritma Bilangan_Maksimum dalam flow chart



5



Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia pemrograman:



6



B. KONSEP DASAR PEMROGRAMAN PASCAL



1.1 Perkembangan Pascal Pascal adalah bahasa tingkat tinggi yang orientasinya pada segala tujuan, dirancang oleh Prof. Niklaus Wirth dari Technical University di Zurich, Switzerland. Nama pascal diambil sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan philosophi terkenal abad 17 dari Perancis. 1.2 Struktur 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. Secara ringkas, struktur suatu program pascal dapat terdiri dari : 1. Judul program Pada Judul Program Boleh di ikutkan dalam penulisan ataupun tidak, karena ini hanya merupakan penanda pembuatan program. Namun terdapat Code yang harus di tulis pada tiap memulai pemrograman pascal, yaitu : Uses WinCrt; 2. Blok program a. Bagian deklarasi -



deklarasi label deklarasi konstanta deklarasi tipe deklarasi variable deklarasi prosedur deklarasi fungsi



b. Bagian pernyataan Program pascal yang paling sederhana adalah program yang hanya terdiri dari sebuah bagian pernyataan saja. Begin End. Bentuk umum dari bagian pernyataan adalah : Begin Statement; End .



7



Contoh : Uses WinCrt; Begin Writeln ( ‘Hello World’ ); Writeln ( ‘------------------ ‘ ) End . Outputnya : Hello World ----------------Program pascal tidak mengenal aturan penulisan di kolom tertentu, jadi boleh ditulis mulai kolom berapapun. Penulisan statement-statement pada contoh program yang menjorok masuk beberapa kolom tidak mempunyai pengaruh diproses, hanya dimaksudkan supaya mempermudah pembacaan program, sehingga akan lebih terlihat bagian-bagiannya, dan baik untuk dokumentasi. Judul program sifatnya optional dan tidak signifikan didalam program. Jika ditulis dapat digunakan untuk memberi nama program dan daftar dari parameter tentang komunikasi program dengan lingkungannya yang sifatnya sebagai dokumentasi saja. Judul program bila ditulis harus terletak pada awal dari program dan diakhiri dengan titik koma. Contoh : Uses WinCrt; Begin Writeln ( ‘Universitas Bakti Indonesia’ ); Writeln ( ‘Belajar Bahasa Pascal’ ); Writeln( ‘====================== ‘ ); End. Outputnya : Universitas Bakti Indonesia Belajar Bahasa Pascal ====================== 1.3 Deklarasi Bagian deklarasi digunakan bila didalam program menggunakan pengenal (identifier) yang dapat berupa label, konstanta, tipe, variable, prosedur dan fungsi.



8



1.3.1 Deklarasi Konstanta Definisi konstanta diawali dengan kata cadangan Const diikuti oleh kumpulan identifier yang diberi suatu nilai konstanta. Data konstanta nilainya sudah ditentukan dan pasti, tidak dapat dirubah didalam program. Contoh : Program contoh_konstanta; Uses WinCrt; Const Potongan = 0.2 ; Gaji = 25000 ; Namaperusahaan = ‘PT ABC’ ; Begin Writeln ( ‘Potongan =’, Potongan ) ; Writeln ( ‘Gaji =’, Gaji ) ; Writeln ( ‘Nama =’, Namaperusahaan) ; End. 1.3.2 Deklarasi Variabel Variabel adalah identifier yang berisi data yang dapat diubah-ubah nilainya didalam program. Menggunakan kata cadangan Var sebagai judul didalam bagian deklarasi variable dan diikuti oleh satu atau lebih identifier yang dipisahkan koma, diikuti dengan titik dua dan tipe dari datanya diakhiri dengan titik koma. 1.3.3 Deklarasi Tipe Pascal menyediakan beberapa macam tipe data, yaitu : 1. Tipe data sederhana, terdiri dari : a. tipe data standar : integer, real, char, string, Boolean. b. Tipe data didefinisikan pemakai : enumerated atau scalar, subrange 2. Tipe data terstruktur : array, record, file, set 3. Tipe data penunjuk Contoh Penulisan Type Data: Uses WinCrt; Type Pecahan = real ; Bulat = integer ; Huruf = string [25]; Begin End.



9



Contoh : Uses WinCrt; Var Total, Gaji, Tunjangan : real ; Jumlahanak : integer ; Keterangan : string [25] ; Begin Gaji : = 500000 ; Jumlahanak : = 3 ; Tunjangan : = 0.25 * Gaji + Jumlahanak * 30000 Total : = Gaji + Tunjangan ; Keterangan : = ‘Karyawan Teladan’ ; Writeln ( ‘ Gaji bulanan = Rp. ‘ , Gaji ) ; Writeln ( ‘ Tunjangan = Rp. ‘ , Tunjangan Writeln ( ‘ Total gaji = Rp. ‘ , Total ) Writeln ( ‘ Keterangan = Rp. ‘ , Keterangan End.



;



) ; ; ) ;



C. ALGORITMA DASAR PEMROGRAMAN PASCAL Algoritma Bilangan_Maksimum { Dibaca tiga buah bilangan dari piranti masukan. Carilah bilangan bulat maksimum diantara ketiga bilangan tersebut } Deklarasi : Bil1,Bil2,Bil3 : maksimumnya} MAX



integer



{bilangan



yang



dicari



: integer {variabel bantu}



Deskripsi : Read (Bil1,Bil2) If Bil1 >= Bil 2 then Bil1 = MAX Else Bil2 = MAX Read (Bil3) If Bil3 >= MAX then Bil3 = MAX Write (MAX)



10



Algoritma Konversi { Terdapat tiga sub bagian (menu) dari program konversi. Pertama, konversi nilai dolar ke rupiah. Nilai tukar dan jumlah dolar diinput dari piranti masukan. Kedua, konversi Kilo meter (KM) ke meter (m). Nilai kilometer diinput dari piranti masukan. Ketiga, konversi Celcius ke Fahrenheit. Nilai celcius diinput dari piranti masukan. Ketiga nilai diolah dengan masing-masing rumus yang berbeda. Hasilnya dicetak ke piranti keluaran }



Deklarasi : Pilih, Tukar, Dolar, KM Nilai1, Nilai2, Celcius Nilai3 Lagi



= = = =



Integer Integer Real Char



11



Deskripsi : Cetak (judul program) Cetak (pilihan) Baca (Pilih) If (Pilih=1) then Baca (Tukar) Baca (Dolar) Nilai1 = Tukar * Dolar Cetak (Nilai1) ElseIf (Pilih=2) then Baca (KM) Nilai2 = KM * 1000 Cetak (Nilai2) Elseif (Pilih=3) then Baca (Celcius) Nilai3 = (Celcius * 1.8) + 32 Cetak (Nilai3) Else Cetak (Peringatan) Endif Baca (Lagi) If (Lagi = ‘Y’) then goto (x,y) Cetak (selesai)



12



13



Coba selesaikan Permasalahan di bawah ini : 1. Buat Algoritma Pemrograman untuk program membedakan bilangan Bulat positif atau Negatif. 2. Buat Algoritma Pemrograman untuk program membedakan bilangan ganjil atau genap. D. CONTOH PEMROGRAMAN PASCAL Kumpulan program pascal ini merupakan kumpulan latihan saat penulis belajar bahasa pemrograman pascal. Penulis menggunakan Turbo Pascal for Windows (TPW) Versi 1.5 sebagai kompilernya. Mungkin ada kekurangan disana sini, tapi mudah-mudahan kumpulan program ini bermanfaat bagi pembaca yang berminat dan baru mempelajari bahasa pemrograman pascal. Latihan 1



14



Latihan 2



Latihan 3



15



Latihan 4



16



Latihan 5



17



Latihan 6



18



Latihan 7



19



Latihan 8



20



Latihan 9



Latihan 10



21



TUGAS AKHIR SEMESTER 1. BUAT PROGRAM MENGGUNAKAN BAHASA PEMROGRAMAN PASCAL, DENGAN TOPIK BEBAS. SERTA BUAT ALGORITMA PEMBUATAN PROGRAM TERSEBUT.



22