AP 1A - BAB 1 Hal 1 dari 9 BAB 1 PENDAHULUAN 1.1. DEFINISI ALGORITMA Algoritma berasal dari kata algorism dan ritmis. Istilah ini pertama kalidiungkapkan oleh Abu Jafar Mohamed Ibn Musa al Khowarizmi (825M) dalam buku Al-Jabr Wa-al Muqabla. Algoritma didefinisikan sebagai suatu metode khusu yang tepat dan terdiri dari serangkaian langkah terstruktu, kemudian ditulis secara sistematis untuk menyelesaikan suatu masalah. Sedangkan menurut Kamus Besar Bahasa Indonesia terbitan balai pustaka tahun 1988, algoritma adalah urutan logis pengam bilan keputusan untuk pemecahan masalah. Logis disini mengandung nilai kebenaran, kalau tidak benar dapat memberikan hasil yang salah. Contoh Algoritma Tukar Isi Bejana Diberikan dua buah bejana A dan B. Bejana A berisi larutan berwarna merah dan bejana B berisi larutan berwarna biru. Pertukarkan isi kedua bejana itu, sedemikian rupa sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah. A B Coba anda pikirkan baik-baik bagaimana cara yang paling tepat agar kedua bejana tersebut benar-benar bertukar warna larutan. Bagaimana bila menggunakan deskripsi di bawah ini. Deskripsi : 1. Tuangkan larutan dari bejana A ke dalam bejana B. 2. Tuangkan larutan dari bejana B ke dalam bejana A. Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 2 dari 9 Deskripsi yang benar : 1. Tuangkan larutan dari bejana A ke dalam bejana C. A B C 2. Tuangkan larutan dari bejana B ke dalam bejana A. A B C 3. Tuangkan larutan dari bejana C ke dalam bejana B. A B C Dari kedua contoh algoritma yang telah diuraikan di atas memberikan pesan : - Algoritma harus benar. - Algoritma harus berhenti. - Setelah algoritma berhenti menghasilkan hasil yang benar. Algoritma adalah jantung ilmu komputer/ ilmu informatika, namun jangan beranggapan identik dengan ilmu komputer saja. Dalam kehidupan sehari-haripun banyak terdapat proses yang digambarkan dalam suatu algorima. Misal cara-cara memasak kue/ makanan. Dalam setiap resep selalu ada urut-urutan langkah membuat kue/ makanan. Bila langkah-langkahnya tidak logis, tidak dapat menghasilkan kue/ makanan yang diinginkan. Ibu-ibu yang mencoba resep suatu kue/ makanan akan membaca satu per satu Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 3 dari 9 langkah pembuatannya, lalu ia akan mengerjakan proses sesuai yang ia baca. Komputer ibarat ibu-ibu yang mencoba resep suatu kue/ makanan, bahan-bahan ibarat data, sedangkan kue/ makanan ibarat informasi. Prosess Data Informasi Algoritma dapat disajikan dengan menggunakan tehnik : English Structure Tulisan Pseudocode Algoritma Gambar Structure Chart HIPO Flowchart Nassi Schneiderman Chart 1.2. DEFINISI FLOWCHART Flowchart adalah urut-urutan logis yang digambarkan dengan symbol-simbol khusus sebagai pengambilan keputusan untuk pemecahan suatu masalah. Masing-masing symbol telah ditetap kan terlebih dahulu fungsi dan artinya. Kegunaan Utama Flowchart Untuk menggambarkan tahapan penyelesaian masalah dengan simbol tertentu sehingga mudah dimengerti karena sederhana, terurai, rapi, jelas, effektif dan tepat, mudah digunakan dan standart. Dalam menggambarkan Flowchart dapat mengikuti pedoman sbb: 1. Sebaiknya digambarkan dari atas ke bawah dan dimulai dari bagian kiri suatu halaman. 2. Kegiatan dalam flowchart harus ditunjukkan dengan jelas. 3. Harus ditunjukkan dari mana kegiatan dimulai dan dimana kegiatan akan berakhir. 4. Masing-masing kegiatan di dalam flowchart sebaiknya satu kata mewakili satu pekerjaan. Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 4 dari 9 5. Masing-masing kegiatan di dalam flowchart harus dalam urutan semestinya. 6. Kegiatan yang terpotong akan disambung di tempat lain dan harus ditunjukkan dengan jelas menggunakan simbolsimbol penghubung. 7. Gunakan simbol-simbol flowchart yang standart. 2.2. MODEL FLOW CHART Flowchart dapat dibagi menjadi System Flowchart Program Flowchart System Flowchart System flowchart menggambarkan peralatan komputer yang digunakan dalam proses pengolahan data dan hubungan antar peralatan tersebut. System flowchart ini tidak digunakan untuk menggambarkan urutan langkah pemecahan masalah, tapi hanya menggambarkan prosedur dalam sistem yang dibentuk. Simbol-simbol Menunjukkan Input/ Output yang menggunakan pita magnetic (magnetic tape) Menunjukkan Input yang menggunakan online keyboard Menunjukkan Input/ Output yang menggunakan pita kertas berlubang (punched paper tape) Menunjukkan Output yang menggunakan/ yang ditampilkan di monitor (VDU=Visual Display Unit) Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 5 dari 9 Menunjukkan Input/ Output yang menggu nakan magnetic drum Menunjukkan Input/ Output dari media apa saja Menunjukkan Input/ Output yang menggunakan hard disk Menunjukkan Input/ Output menggunakan punched card (kartu berlubang) Menunjukkan off-line storage Menunjukkan kegiatan manual Menunjukkan operasi yang dilakukan offline (di luar operasi komputer) Menunjukkan proses pengurutan data/ sort off-line (di luar proses komputer) Menunjukkan kegiatan proses dari program komputer Menunjukkan Input/ Output yang menggunakan disket Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 6 dari 9 Menunjukkan proses penggabungan data (merge) Menunjukkan arus dari proses Menunjukkan proses transmisi data melalui channel komunikasi Contoh System Flowchart : Keyboard CPU Disket VDU Program Flowchart Merupakan flowchart yang menggambarkan secara rinci langkah-langkah/ urutan logika dari prosedur pemecahan masalah. Program flowchart dibuat dari derivikasi system flowchart dengan menggunakan simbol-simbol sebagai berikut : Digunakan untuk mewakili data input/ output Digunakan untuk mewakili suatu proses Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 7 dari 9 Digunakan untuk menunjukkan suatu operasi yang rinciannya ditunjukkan di tempat lain Digunakan untuk menyeleksi kondisi di dalam program Digunakan untuk memberikan nilai awal suatu besaran/ variabel Digunakan untuk menunjukkan awal/ akhir Simbol penghubung di halaman yang sama Simbol penghubung di halaman yang lain Digunakan untuk menunjukkan arus dari sutu proses Contoh Flowchart global yang dibuat oleh analis system : START INPUT PROSES OUTPUT STOP Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 8 dari 9 Contoh Detail Program Flowchart yang dibuat oleh programmer START INPUT N JML = 0 FOR K 1 TO N INPUT BIL JML = JML + BIL NEXTK PRINT JML STOP 1.3. PEMROGRAMAN Konsep Pemrograman Komputer memang alat bantu dalam menyelesaikan masalah. Persoalannya komputer tidak dapat langsung menyelesaikan masalah yang “disodorkan”. Orang harus merumuskan langkahlangkah penyelesaian masalah itu dalam suatu runtunan instruksi. Komputerlah yang nantinya mengerjakan dengan cepat, akurat bahkan berulang-ulang tanpa kenal lelah dan bosan. Universitas Gunadarma Rr. Artiana Krestianti AP 1A - BAB 1 Hal 9 dari 9 Jadi program adalah runtunan/ sekumpulan instruksi yang merupakan penyelesaian masalah. Program “dimasukkan” ke dalam komputer, komputer mengerjakan instruksi-instruksi yang terdapat di dalam program tersebut, lalu memberikan hasil atau keluaran yang diinginkan. Agar program dapat dilaksanakan oleh komputer, program tersebut harus ditulis dalam suatu bahasa yang dimengerti oleh komputer. Bahasa yang digunakan dalam menulis program dinamakan bahasa pemrograman. Jenis Pemrograman Sampai saat ini terdapat ratusan bahasa pemrograman. Bahasa pemrograman akan terus berkembang dan bertambah jumlahnya. Pada dasarnya bahasa pemrograman dapat dibagi : a) Low Level Language (Bahasa Tingkat Rendah) - Penulisan instruksinya mendekati bahasa mesin. - Biasanya ditulis dalam bentuk kode Hexadecimal. - Disebut juga sebagai Object Program. - Contoh : ASSEMBLER b) High Level Language (Bahasa Tingkat Tinggi) - Penulisan instruksinya mendekati bahasa manusia. - Biasanya ditulis dalam bahasa Inggris. - Disebut juga sebagai Source Program. - Contoh : BASIC, COBOL, FORTRAN, dll Sebelum suatu program dibuat, alangkah baiknya bila dibuat urut-urutan langkah yang sistematis untuk menyelesaikan sebuah masalah, yang sering disebut sebagai algoritma. Salah satu jenis algoritma adalah flowchart. Universitas Gunadarma Rr. Artiana Krestianti