TKD1205 Pemrograman Komputer
RM
Minggu ke 4
ALGORITMA DAN DIAGRAM ALIR PENDAHULUAN 1. Deskripsi singkat Pada minggu ini dipelajari pengertian program, algoritma sebagai prosedur dalam penyusunan program, pengertian diagram alir dan simbol-simbol yang digunakan, serta penuangan algoritma dalam bentuk diagram alir. Selain itu dipraktekkan pula langkah-langkah pembuatan algoritma dan penyusunannya dalam bentuk diagram alir dengan mengambil contoh kasus permasalahan yang sederhana, seperti mencari luas dan keliling persegi panjang, membandingkan dua buah bilangan, mengurutkan bilangan ganjil dan mencari jumlah serta nilai rata-ratanya. 2. Manfaat, relevansi Sebelum memulai penyusunan program dengan menggunakan suatu bahasa pemrograman tertentu, mahasiswa terlebih dahulu dapat mengenali permasalahan yang dihadapi, dan menyusun langkah-langkah detil guna menyelesaikan masalah tersebut secara urut dan logik dalam bentuk suatu algoritma, serta kemudian menuangkannya dalam bentuk diagram alir. 3. Learning Outcomes Kognitif: Menjelaskan pengertian algoritma, perbedaan program dan algoritma, arti simbolsimbol yang digunakan pada diagram alir, dan cara menuangkan algoritma ke dalam bentuk diagram alir. Psikomotorik: Membuat diagram alir untuk berbagai kasus dan permasalahan yang diberikan. Afektif: Dapat bekerja dalam sebuah kelompok, dan mendiskusikan hasil kerjanya, serta berpikir logis.
PENYAJIAN 1. Program dan Algoritma Program adalah sekumpulan perintah yang digunakan untuk mengatur komputer agar melakukan suatu tindakan tertentu. Tanpa program, komputer sesungguhnya tidak dapat berbuat apa-apa. Oleh karena itu, sebuah sistem komputer pada dasarnya mencakup tiga aspek penting, yaitu berupa perangkat keras (hardware), perangkat lunak (software) yang dalam hal ini berupa program, dan manusianya sendiri yang berperan dalam operasi komputer (brainware). Orang yang membuat program biasa disebut pemrogram (programmer), sedangkan aktivitas yang berhubungan dengan pembuatan program disebut pemrograman (programming). Dalam konteks pemrograman, terdapat sejumlah Program Studi Teknik Geodesi dan Geomatika FT-UGM
1
TKD1205 Pemrograman Komputer
RM
bahasa pemrograman tingkat tinggi (high-level language), seperti Basic, Pascal, Fortran, C, dan C++. Untuk apa sebuah program dibuat? Tentu saja untuk menyelesaikan suatu permasalahan. Namun demikian sebelum dapat menyelesaikan masalah dengan menyusun program, terdapat beberapa langkah penting yang perlu dilakukan terlebih dulu, yaitu : a. Mengenali permasalahan yang dihadapi, b. Menyusun langkah-langkah detil guna menyelesaikan masalah tersebut dengan urutan yang benar dan logik, dan c. Menuangkan langkah-langkah tersebut dalam bentuk diagram alir. Prosedur tata urutan langkah-langkah detil yang telah disusun sedemikian rupa secara runtut dan logik/nalar tersebut dinamakan dengan algoritma. Algoritma berbeda dengan program, karena algoritma secara teoritis bersifat bebas terhadap bahasa pemrograman. Dengan kata lain, algoritma dapat disusun tanpa seseorang perlu mengetahui bahasa pemrograman terlebih dulu. Sebagai contoh sederhana, Anda diminta untuk menghitung luas dan keliling suatu bentuk geometri persegi panjang dengan membuat program komputernya. Pada masalah ini, Anda harus dapat menentukan terlebih dulu hal apa yang merupakan masukan dan keluaran bagi penyelesaian masalah tersebut. Dalam hal ini, masukan berupa nilai panjang dan lebar, sedangkan keluarannya berupa nilai luas dan keliling. Selanjutnya berdasarkan logika yang benar, Anda harus dapat menentukan bagaimana luas dan keliling persegi panjang tersebut dihitung berdasarkan data panjang dan lebar. Tentu saja Anda dapat menghitung luas dan keliling persegi panjang dengan rumus: luas = panjang x lebar keliling = 2 x (panjang + lebar) Inilah inti dari mengenali permasalahan yang dihadapi, yang untuk selanjutnya dituangkan dalam bentuk prosedur tata urutan yang logik sebagai algoritma sebagai berikut : a. Peroleh masukan nilai panjang dan lebar persegi panjang, b. Hitung luas dan keliling persegi panjang dengan rumus di atas, c. Tampilkan nilai luas dan keliling persegi panjang. Untuk lebih memperjelas lagi algoritma yang dipakai, biasanya digunakan gambar-gambar yang akan memperlihatkan aliran proses atau kegiatan yang harus dilakukan. Gambar aliran inilah yang disebut diagram alir (flowchart). 2. Diagram Alir Diagram alir biasanya digunakan sebagai alat bantu untuk memahami algoritma, karena dapat menyajikan urutan penyelesaian permasalahan secara visual dengan menggunakan simbol-simbol khusus untuk menyatakan suatu operasi yang harus dilaksanakan. Simbol-simbol standar yang digunakan untuk menyusun diagram alir seperti ditunjukkan pada Tabel 1. Tabel 1. Simbol standar untuk diagram alir SIMBOL
NAMA TERMINAL
ARTI Menunjukkan selesai (end)
Program Studi Teknik Geodesi dan Geomatika FT-UGM
tanda
mulai
(start)
atau
2
TKD1205 Pemrograman Komputer
RM
INPUT OUTPUT
Menunjukkan tanda masukan atau keluaran
PROSES
Menunjukkan suatu proses pengolahan data atau tanda komputasi
TESTING
Menunjukkan suatu kondisi yang harus diuji atau dites
Menunjukkan bahwa bagian sambungan CONNECTOR dari diagram alir berada pada halaman yang sama Menunjukkan bahwa bagian sambungan OFF-PAGE dari diagram alir berada pada halaman yang CONNECTOR berbeda ARAH ALIRAN
Menunjukkan arah aliran kegiatan
Contoh penggunaan simbol-simbol diagram alir pada kasus menghitung luas dan keliling suatu persegi panjang di atas ditunjukkan pada Gambar 1. Mulai
Masukan panjang, lebar luas = panjang x lebar keliling = 2 x (panjang + lebar) Keluaran luas, keliling
Selesai Gambar 1. Diagram alir penghitungan luas dan keliling persegi panjang Program Studi Teknik Geodesi dan Geomatika FT-UGM
3
TKD1205 Pemrograman Komputer
RM
3. Struktur Dasar Algoritma dan Penuangannya ke Diagram Alir Pada dasarnya terdapat tiga buah struktur dasar yang digunakan dalam menyusun suatu algoritma, yaitu sekuensial (urut), seleksi (pengujian), dan pengulangan (looping). Pada struktur sekuensial, langkah-langkah yang dilakukan dalam algoritma diproses secara berurutan, sebagaimana diperlihatkan pada Gambar 2. Langkah 1
Langkah 2 Langkah 3
Dari Gambar 2 di samping, terlihat bahwa langkah 1 merupakan langkah yang akan dijalankan pertama kali, setelah itu langkah 2 dikerjakan dan diikuti dengan langkah 3. Contoh diagram alir penghitungan luas dan keliling persegi panjang pada Gambar 1 merupakan contoh penuangan struktur algoritma sekuensial ke bentuk diagram alir.
Gambar 2. Diagram alir struktur sekuensial Pada struktur seleksi, dicirikan adanya pemilihan langkah yang didasarkan oleh suatu kondisi yang dites, sebagaimana diperlihatkan pada Gambar 3. Dari Gambar 3 di samping, langkah 1 hanya akan dijalankan kalau kondisi bernilai benar, sedangkan langkah 2 hanya akan benar salah dijalankan kalau kondisi bernilai kondisi salah. Contoh penuangan struktur algoritma seleksi ke dalam bentuk diagram alir dapat dilihat pada Langkah 2 Langkah 1 Gambar 5 yang menunjukkan diagram alir menentukan bilangan terbesar dari dua buah bilangan x dan y. Gambar 3. Diagram alir struktur seleksi (titik masuk)
Pada struktur pengulangan, dicirikan adanya suatu tindakan atau langkah yang dijalankan beberapa kali, sebagaimana diperlihatkan pada Gambar 4. salah kondisi Dari Gambar 4 di samping, sebelum Prosedur dijalankan pertama kali, kondisi diuji terlebih dulu. Selama kondisi masih bernilai benar, benar maka Prosedur akan dijalankan terus. Namun begitu kondisi bernilai salah, maka proses Prosedur pengulangan akan berakhir. Contoh penuangan struktur algoritma pengulangan ke dalam bentuk diagram alir dapat dilihat pada Gambar 6 yang (titik keluar) menunjukkan diagram alir untuk menampilkan tulisan “Selamat Belajar” sebanyak 5 kali. Gambar 4. Struktur pengulangan Program Studi Teknik Geodesi dan Geomatika FT-UGM
4
TKD1205 Pemrograman Komputer
RM
pencacah = 1 Masukkan x,y
terbesar = x salah
terbesar < y
pencacah <6
salah benar
Tampilkan “Selamat Belajar”
benar
terbesar = y pencacah = pencacah + 1 Tampilkan terbesar
Gambar 5. Diagram alir menentukan bilangan terbesar antara dua buah bilangan
Selesai
Gambar 6. Diagram alir menampilkan tulisan “Selamat Belajar” sebanyak 5 kali
4. Aktivitas Ada dua jenis aktivitas yang dikerjakan mahasiswa terkait dengan materi yang diberikan pada minggu ke 4 ini, yaitu: a. Klasikal, yang meliputi: Diskusi kelompok Mengerjakan tugas b. Praktikum di Lab. Komputer, dapat mengerjakan materi tugas 5. Tugas Buatlah diagram alir untuk : a. Mengkonversi suatu suhu dalam derajad Celcius (C) ke dalam derajad Reamur (R) dan Fahrenheit (F). Diberikan rumus konversinya sebagai berikut: R = 4/5 x C F = 9/5 x C + 32 b. Menghitung akar persamaan kuadrat: ax2 + bx + c, yang diketahui koefisien-koefisien persamaannya (a, b, dan c) dengan menguji terlebih dulu harga deskriminannya, yaitu: Jika deskriminan > 0, ada dua akar berlainan Jika deskriminan = 0, ada satu akar (akar kembar) Jika deskriminan < 0, akar imajiner c. Menghitung jarak dua buah titik dan azimuthnya apabila diketahui Program Studi Teknik Geodesi dan Geomatika FT-UGM
5
TKD1205 Pemrograman Komputer
RM
koordinat (x, y) dari kedua titik tersebut. Gunakan rumus hitungan azimuth sisi (persoalan pokok II Ilmu Ukur Tanah) dan ketentuan letak kuadrannya yang telah diberikan pada minggu sebelumnya. d. Mengurutkan bilangan ganjil dari 100 sampai 500 dengan urutan turun, menghitung jumlah dan nilai rata-ratanya. 6. Rangkuman Sebelum membuat program, pertama kali harus ditentukan langkah apa yang harus diambil terlebih dulu. Kemudian prosedur urutan langkah-langkah tersebut harus ditata atau disusun secara benar dan logik. Prosedur tata urutan langkah tersebut dinamakan algoritma. Algoritma berbeda dengan program, karena algoritma secara teoritis bersifat bebas terhadap bahasa pemrograman. Sebagai alat bantu untuk dapat lebih memahami algoritma, digunakanlah simbol-simbol khusus yang menyatakan suatu operasi yang harus dilaksanakan dan memperlihatkan aliran proses atau kegiatan yang dinamakan diagram alir (flowchart). Dalam menyusun diagram alir perlu diperhatikan struktur dasar yang digunakan dalam menyusun suatu algoritma, yaitu sekuensial (urut), seleksi (pengujian), dan pengulangan (looping).
PENUTUP Tes Formatif 1. Simbol apa yang digunakan untuk menunjukkan adanya suatu kondisi yang harus dites? 2. Apa ciri utama dari struktur dasar algoritma seleksi dan pengulangan? 3. Diberikan suatu diagram alir sebagai berikut: bil = 1
salah
bil < 10
benar
bil 5
salah
benar
Tampilkan bil
Selesai
Program Studi Teknik Geodesi dan Geomatika FT-UGM
bil = bil + 1
6
TKD1205 Pemrograman Komputer
RM
Tampilkan hasil dari diagram alir tersebut. Jawaban Tes Formatif 1. Simbol belah ketupat (diamond) 2. Ciri struktur seleksi adalah adanya suatu kondisi yang dites, sedangkan ciri struktur pengulangan adalah adanya suatu tindakan yang dikerjakan secara berulang kali. 3. Hasilnya: 1, 2, 3, 4, 6, 7, 8, 9 Petunjuk Penilaian Mahasiswa dinilai dari hasil tugas dan praktikum yang dilakukan di Lab. Komputer dengan memperhatikan learning outcomes yang telah disebutkan di atas dan berdasarkan kriteria-kriteria yang ditunjukkan dalam rubrik penilaian sebagai berikut : No.
Kriteria
Aspek Kognitif 1. Menjelaskan pengertian algoritma
1 Tidak dapat menjelaskan sama sekali
2.
Menjelaskan perbedaan program dan algoritma
3.
Menjelaskan arti Tidak dapat simbol-simbol menjelaskan yang digunakan sama sekali pada diagram alir
4.
Menjelaskan cara menuangkan algoritma ke dalam bentuk diagram alir
Aspek Psikomotorik 1. Membuat diagram alir
Tidak dapat menjelaskan sama sekali
Tidak dapat menjelaskan sama sekali
Tidak dapat membuat
Program Studi Teknik Geodesi dan Geomatika FT-UGM
2
3
Dapat menjelaskan pengertian algoritma, namun masih kurang tepat Dapat menjelaskan perbedaan program dan algoritma, namun masih kurang tepat Hanya dapat menjelaskan arti beberapa simbol saja (kurang dari 5) dan masih ada yang salah Dapat menjelaskan cara menuangkan algoritma ke dalam bentuk diagram alir, namun masih kurang tepat
Dapat menjelaskan pengertian algoritma dengan benar
Dapat membuat diagram alir
Dapat membuat diagram alir
Dapat menjelaskan perbedaan program dan algoritma dengan benar Dapat menjelaskan arti semua simbol yang digunakan pada diagram alir dengan benar Dapat menjelaskan cara menuangkan algoritma ke dalam bentuk diagram alir dengan benar dan tepat
7
TKD1205 Pemrograman Komputer
untuk berbagai kasus dan permasalahan yang diberikan
diagram alir sama sekali
RM
hanya pada kasus dan permasalahan yang struktur dasar algoritmanya sekuensial
untuk berbagai kasus dan permasalahan dengan struktur dasar algoritmanya kombinasi sekuensial, seleksi dan pengulangan, serta hasilnya benar
Umpan Balik Umpan balik dari mahasiswa dapat diperoleh dari tingkat keaktifan mahasiswa pada saat pelaksanaan diskusi kelompok, hasil tugas, dan dari hasil praktikum di Lab. Komputer. Tindak Lanjut 1. Untuk mahasiswa yang tingkat keaktifannya dalam pelaksanaan diskusi kelompok masih kurang, diharapkan untuk mempelajari terlebih dahulu materi pada minggu berikutnya dan membuat daftar pertanyaan untuk didiskusikan pada sesi klasikal minggu tersebut. 2. Untuk mahasiswa yang hasil tugas dan praktikumnya masih belum baik, diharapkan untuk mengulangi kembali materi yang dipraktekkan dan menemui asisten untuk memperoleh bantuan tutorial/asistensi.
Daftar Pustaka 2. Basuki, S., 2011, Ilmu Ukur Tanah, Edisi kedua (revisi), Gadjah Mada University Press, Yogyakarta. 7. Kadir, A., dan Heriyanto, 2005, Algoritma Pemrograman Menggunakan C++, Penerbit Andi Offset, Yogyakarta. 10. Soesianto, F., dkk., 1987, Pemrograman Basic, Edisi Kedua, Penerbit Andi Offset, Yogyakarta.
Program Studi Teknik Geodesi dan Geomatika FT-UGM
8
TKD1205 Pemrograman Komputer
RM
Rencana Kegiatan Pembelajaran Mingguan (RKPM) Minggu ke 4
4
LO (Learning Outcomes) yang akan dicapai
Kognitif: Menjelaskan pengertian algoritma, perbedaan program dan algoritma, arti simbol-simbol yang digunakan pada diagram alir, dan cara menuangkan algoritma ke dalam bentuk diagram alir
Pokok Bahasan (Topik)
Algoritma dan Diagram Alir
Sub Pokok Bahasan
Teks Presentasi Laptop/PC Lembar Kerja Soal-Tugas Web
Minggu ke
Media Ajar
a. Pengertian algoritma dan - program b. Permasalahan dan urutan penyelesaiannya dalam bentuk algoritma c. Simbol-simbol dalam diagram alir d. Menuangkan algoritma dalam bentuk diagram alir
Afektif: Dapat bekerja dalam sebuah kelompok, dan mendiskusikan hasil kerjanya, serta berpikir logis
Metode Ajar (STAR)
- Klasikal, mahasiswa berkelompok dan berdiskusi (Cooperative learning & Problem-based learning)
Aktivitas Mahasiswa
a. Baca bahan ajar sebelum kuliah b. Diskusi antar kelompok c. Mengerjakan tugas
Aktivitas Dosen
a. Menentukan kelompok b. Menyiapkan dan menjelaskan materi c. Fasilitator & evaluator diskusi d. Memberikan tugas
Metode Evaluasi dan Penilaian
Sumber Ajar
Tugas: membuat diagram alir untuk: Menghitung akar persamaan kuadrat Menghitung azimuth Mengurutkan bilangan Menghitung ratarata
Pustaka: 2, 7, 10
Tabel rubrik Kriteria penilaian 13
Psikomotorik: Membuat diagram alir untuk berbagai kasus dan permasalahan yang diberikan
Program Studi Teknik Geodesi dan Geomatika FT-UGM
9