Seri : Algoritma dan Pemrograman dengan Pascal Penulis : Fakhri Copyright 2013 pelatihan-osn.com Cetakan I : Oktober 2012 Diterbitkan oleh : Pelatihan-osn.com Kompleks Sawangan Permai Blok A5 No.12 A Sawangan, Depok, Jawa Barat 16511 Telp. 021-9321 1780 Email : humas@pelatihan-osn.com ; tokobuku@pelatihan-osn.com Dilarang Keras Mengutip, menjiplak, memfotokopi sebagaian atau seluruh isi buku ini serta memperjual belikannya tanpa izin tertulis dari pelatihan-osn.com
Kata Pengantar Olimpiade Sains Nasional merupakan ajang kompetisi yang sangat kompetitif dan menarik di kalangan siswa-siswi SMA maupun SMP. Perlombaan yang diikuti oleh ribuan siswa ini ternilai cukup sukses dalam meningkatkan semangat belajar siswa siswi di Indonesia. Melalui ajang ini pula Indonesia bisa memperoleh bibit bibit unggul yang sukses mengharumkan nama Indonesia di kancah internasional. Olimpiade komputer merupakan salah satu bidang yang diperlombakan di Olimpiade Sains Nasional. Antusias siswa siswi terhadap bidang olimpiade yang satu ini termasuk cukup tinggi di Indonesia dan prestasi prestasi internasional dapat diraih Indonesia untuk bidang komputer tingkat pelajar. Dalam pembelajaran khususnya bidang olimpiade komputer tidak banyak sekolah yang memberikan materi yang sesuai dengan materi olimpiade komputer yaitu pemrograman Pascal, C, ataupun C++. Kebanyakan sekolah mengajarkan materi komputer berupa visual basic, microsoft office, dan lain-lain yang kebanyakan tidak menitikberatkan kepada pemrograman yang menunjang olimpiade. Untuk menunjang persiapan siswa dalam mengikuti olimpiade komptuter, maka buku ini diharapkan dapat membantu sebagai pengantar materi yang dapat menjadi sumber referensi singkat. Perlu diperhatikan bahwa buku ini bukanlah referensi yang tergolong sangat lengkap, sehingga tidak disarankan menganggap buku ini sebagai satu-satunya pegangan. Diharapkan kepada siswa siswi yang menggunakan buku ini agar ikut dalam kontes kontes komputer online yang sangat melatih kemampuan pemrograman, selain itu juga diharapkan untuk mengikuti pelatihan pelatihan yang disediakan instansi instansi pelatihan olimpiade. Buku atau modul ini akan sangat mendukung untuk pelatihan pelatihan olimpiade yang memiliki pembimbing atau pengajar sebagai sumber materi. Walaupun pengajaran di buku ini menitikberatkan tentang pemrograman, materi analitik dan logika tetap akan terdukung. Soal olimpiade komputer memang terdiri dari begian analitik dan pemrograman, akan tetapi pada dasarnya materi analitik dan logika merupakan hal yang terkandung di dalam pemrograman juga. Perlu diperhatikan juga bahwa dengan mempelajari materi pemrograman maka tanpa disadari kemampuan seseorang di dalam materi analitik akan ikut meningkat, sehingga tidak perlu khawatir jika sebagai siswa peserta olimpiade komputer jika terus menerus belajar dari segi pemrograman. Hal ini akan berjalan tentunya jika siswa tersebut tetap melakukan latihan rutin dan kerja keras dalam berlatih. Sebagai penulis, tentunya modul atau buku yang merupakan buatan manusia tetap tidak luput dari kesalahan sehingga melalui pembuka ini penulis meminta maaf jika ada kesalahan kesalahan di dalam penulisan buku ini. Bandung, Februari 2013 Penulis
DAFTAR ISI Kata Pengantar Daftar Isi Bab 1 : Pengenalan Algoritma dan Pemrograman Pascal Pengenalan algoritma 2 Pemrograman komputer 4 Pemrograman pascal 5 Soal dan latihan 9 Bab 2 : Tipe Data dan Operator Dalam Pemrograman Tipe data 11 Operator 15 Soal dan latihan 22 Bab 3 : Percabangan If-then 25 If-then-else 26 If-else-if 27 Tambahan untuk if-then/if-then-else/if-else-if-else 30 Case 31 Soal dan latihan 33 Bab 4 : Perulangan For-to-do 36 Nested for/for bersarang 38 While-do 39 Repeat-until 40
Soal dan latihan 42 Bab 5 : Array Pengenalan array 45 Array satu dimensi 45 Array dua dimensi 47 Array n dimensi 48 Soal dan latihan Bab 6 : Procedure dan Function Procedure 53 Function 58 Variabel lokal dan global 61 Soal dan latihan 67 Bab 7 : Rekursif Pengenalan rekursif 70 Penggunaan rekursi 71 Soal dan latihan 75 Bab 8 : Pengurutan Pengenalan pengurutan 79 Bubble sort 79 Selection sort 80 Insertion sort 82 Quick sort 83 Soal dan latihan 86 Bab 9 : Pencarian Pengenalan pencarian 88
Sequential search 88 Binary search 89 Soal dan latihan 90 Solusi soal dan latihan Solusi bab 1 92 Solusi bab 2 95 Solusi bab 3 95 Solusi bab 4 96 Solusi bab 5 97 Solusi bab 6 99 Solusi bab 7 101 Solusi bab 8 102 Solusi bab 9 103 Penutup 106 Referensi 107
Pengenalan Algoritma dan Pemrograman Pascal Bab1
1.1 Pengenalan Algoritma Algoritma adalah deretan instruksi dalam memecahkan suatu permasalahan. Contoh algoritma dalam kehidupan sehari hari dapat kita amati melalui proses memasak, yaitu : 1. Pecahkan telur dan masukkan isinya ke mangkuk 2. Berikan garam, potongan cabe, dan potongan bawang ke mangkuk yang sama 3. Aduk telur dan campurannya hingga merata 4. Tuangkan minyak makan 5 cc ke atas kuali 5. Letakkan kuali di atas kompor yang menyala 6. Tunggu hingga minyak panas 7. Tuang adukan telur pada mangkuk ke kuali 8. Tunggu hingga bagian bawah telur matang 9. Balikkan telur sehingga posisi bawah menjadi atas 10. Tunggu hingga telur matang Urutan langkah di atas merupakan algoritma dalam memasak telur. Jadi dapat terlihat bahwa algoritma merupakan suatu proses pengerjaan. Pengerjaan algoritma untuk contoh di atas adalah manusia, tetapi pada pemrograman pelaksana algoritma adalah komputer. Karena komputer yang melaksanakan pengerjaan algoritmanya, tugas seorang programmer adalah merancang algoritma yang akan dikerjakan komputer dalam memecahkan masalah. Hal ini disebut juga sebagai problem solving. Algoritma algoritma ini biasanya dibagi atas beberapa tipe, yaitu : pernyataan (statement) yang dibagi atas, penerimaan input atau output dan assignment atau pengisian nilai. perulangan yang menyebabkan dilakukannya statement secara berulang kali, percabangan yang menyebabkan beberapa pernyataan tidak dilakukan karena suatu kondisi Dalam penulisan algoritma dapat digunakan diagram alir (flow chart).
1.1.1 Diagram Alir Diagram alir merupakan diagram yang dirancang dengan tujuan pembacaan algoritma. Ada beberapa simbol yang digunakan dalam diagram alir, yaitu : = Mulai / akhir = perulangan = proses/pernyataan = input/output = percabangan Contohnya aplikasi flow chart dari algoritma memasak telur : Mangkuk diisi potongan cabe dan bawang Mangkuk diisi telur Mulai Aduk campuran telur Hingga campuran telur merata Kuali diisi minyak Kuali diletakkan di atas kompor nyala Kuali diisi dengan isi mangkuk Hingga minyak panas tunggu tunggu Hingga bawah telur matang Balikkan telur tunggu Hingga bawah telur matang Selesai
1.4 Soal dan Latihan 1. tuliskan tata cara : a. menyalakan komputer (PC) b. mematikan komputer dengan OS windows (PC) c. mencetak (print) dokumen di microsoft Word 2. berdasarkan soal nomor 1, tuliskan ketiga point tersebut dalam bentuk flowchart! Solusi Bab 1 1) Menuliskan tata cara : a. Menyalakan komputer : i. Hubungkan CPU dan monitor ke sumber listrik ii. Tekan tombol on untuk CPU dan monitor iii. Tonggu proses booting selesai iv. Komputer dapat digunakan b. Mematikan komputer dengan OS Windows i. Klik start menu ii. Klik menu shut down iii. Tuggu proses hingga CPU mati iv. Tekan tombol off monitor monitor 2) Flowchart a. Menyalakan komputer
Mulai Hubungkan CPU dan monitor dengan sumber listrik Tekan tombol ON pada CPU dan monitor Selesai Selagi booting tunggu