Lihat Foto Show KOMPAS.com - Pada pagi hari apa yang kamu lakukan sebelum berangkan ke suatu tempat? Pertama kali kamu akan bangun, berjalan ke kamar mandi, menganggalkan pakaian, mandi, menggunakan pakaian kembali, sarapan, lalu pergi. Hal tersebut adalah urutan lengkap sebelum pergi, karena tidak mungkin kita mandi dulu padahal belum bangun tidur ataupun mandi tanpa menganggalkan pakaian terlebih dulu. Urutan tersebut adalah algoritma rutinitas pagi. Definisi algoritma dalam program komputer adalah daftar langkah atau instruksi untuk menyelesaikan masalah atau pekerjaan tertentu. Dengan adanya algoritma, akan lebih mudah untuk membuat program computer yang rumit sekalipun. Ciri-ciri algoritma, yaitu:
Baca juga: Sistem Operasi Komputer: Pengertian, Fungsi, Jenis, Cara Kerja, dan Contohnya Jenis algoritmaAlgoritma memiliki beberapa jenis, sebagai berikut:
Algoritma divide and conquer adalah algoritma pemecahan suatu masalah dengan membaginya ke dalam dua masalah yang lebih kecil. Pertama-tama masalah dibagi menjadi dua sub masalah, lalu masing-masing sub masalah tersebut diselesaikan. Setelah kedua submasalah terselesaikan, solusinya digabungkan kembali menjadi satu. Algoritma divide and conquer sangat sering digunakan karena dinilai stabil dan sederhana.
khanacademy.org Algoritma divide and conquer
Lihat Foto Dilansir dari Analytic Step, algoritma rekursif memecah masalah menajadi submasalah dan memanggil dirinya sendiri berulang-ulang sampai masalah terurai atau sebuah kondisi dasar yang ditentukan terpenuhi. Baca juga: Jaringan Komputer: Pengertian dan Manfaatnya Jakarta - Pernahkah kamu mendengar tentang algoritma? Mungkin terdengar asing untukmu, tetapi algoritma merupakan fondasi penting untuk menyelesaikan masalah dengan sistem komputer, lho. Secara sederhana, algoritma adalah susunan langkah penyelesaian atau metode untuk menyelesaikan suatu masalah secara sistematis dan logis. Untuk bisa mengenalinya, algoritma memiliki ciri-ciri sebagai berikut: 1. Memiliki masukan atau input,2. Memiliki keluaran atau output,3. Menjabarkan langkah yang pasti, jelas, dan tidak ambigu,4. Langkah yang digunakan sederhana, 5. Memiliki batasan waktu. Simak penjelasan mengenai prinsip kerja, struktur, dan cara penyajian algoritma dalam pemrograman computer yang dikutip dari buku Algoritma dan Pemrograman karya Lamhot Sitorus, yuk. Prinsip Kerja AlgoritmaPada dasarnya, algoritma merupakan deskripsi proses untuk mengerjakan sesuatu yang disusun dalam sederet aksi. Secara sederhana, prinsip kerja algoritma terbagi menjadi, masukan (input), proses, dan keluaran (output). Dalam kehidupan sehari-hari, prinsip kerja algoritma dapat dipahami ketika kita ingin membuat telur dadar. Sebelum membuat algoritma, hal yang perlu kita lakukan adalah mendefinisikan masukan (input) dan keluaran (output). Berdasarkan contoh di atas, maka yang menjadi masukan adalah telur mentah dan yang menjadi keluaran adalah telur dadar matang. Dengan demikian, susunan algoritmanya menjadi sebagai berikut: 1. Nyalakan api kompor,2. Tuangkan minyak ke dalam wajan,3. Pecahkan telur ayam ke dalam mangkuk,4. Tuangkan garam secukupnya,5. Kocok campuran telur dan garam,6. Tuang adonan telur ke dalam wajan, 7. Masak telur hingga matang. Struktur Dasar AlgoritmaSecara umum, struktur dasar algoritma terdiri dari sekuensial (sequential), test kondisi atau percabangan (branching), dan perulangan (looping). 1. Algoritma SekuensialAlgoritma sekuensial adalah langkah-langkah yang dilakukan secara berurutan sesuai dengan urutan penulisannya. Struktur ini merupakan struktur yang paling sering dilakukan. Contoh: 2. Algoritma Percabangan (Branching)Dalam kehidupan sehari-hari ada kalanya suatu kegiatan akan dilakukan dan tidak dilakukan tergantung situasi tertentu. Begitu pun dengan algoritma, ada kalanya satu atau beberapa aksi akan dikerjakan dan tidak dikerjakan tergantung situasi tertentu. Nah, struktur algoritma percabangan ini digunakan untuk mengerjakan satu aksi dari beberapa pilihan yang diberikan. 3. Algoritma Perulangan (Looping)Sama halnya dengan manusia, algoritma juga mengenal kegiatan pengulangan, yakni melakukan satu atau beberapa kegiatan secara berulang-ulang. Namun, berbeda dengan manusia, komputer tidak mengenal istilah lelah atau bosan dalam melakukan kegiatan yang sama secara berulang. Dengan demikian, struktur perulangan atau looping digunakan untuk menjalankan kegiatan yang dilakukan berulang-ulang. Cara Penyajian AlgoritmaPenyajian algoritma akan lebih baik jika ditulis secara sistematis. Ada tiga cara yang bisa kamu gunakan untuk menyajikan algoritma, yakni secara naratif, flowchart atau diagram/bagan alir, dan pseudocode. 1. NaratifPenyajian algoritma secara naratif dituliskan dengan menggunakan cerita seperti dalam bahasa sehari-hari. Contoh: Menghitung luas segitiga menggunakan naratifLangkah-1 : MulaiLangkah-2 : Baca nilai AlasLangkah-3 : Baca nilai TinggiLangkah-4 : Hitung Luas = (Alas x Tinggi) / 2Langkah-5 : Cetak Hasil Luas Langkah-6 : Selesai 2. FlowchartDengan flowchart, cara penyajian algoritma dibuat dalam urutan simbol-simbol khusus. Urutan simbol digambarkan sesuai dengan arah tanda panah.
Sumber gambar: Algoritma dan Pemrograman (Sitorus, 2015) 3. PseudocodeLangkah-langkah penyelesaian masalah ini ditulis dengan cara yang mirip atau menyerupai program. Pseudocode tidak spesifik terhadap salah satu bahasa pemrograman sehingga algoritma ini dapat diterjemahkan menyesuaikan bahasa pemrograman yang ada dalam suatu program. Contoh: Menghitung luas segitiga menggunakan pseudocode Input (Alas)Input (Tinggi)Luas ← (Alas x Tinggi) / 2 Output (Luas) Meskipun ada tiga cara penyajian yang berbeda, hasil algoritma yang diberikan tetap sama. Maka dari itu, tidak ada aturan yang menyatakan harus menggunakan penyajian tertentu. Kamu bebas memilih bentuk penyajian sesuai keinginan dan pemahaman. Meski begitu, algoritma yang dibuat dengan kalimat memiliki kelemahan, yaitu hanya bisa dimengerti oleh praktisi yang mengerti bahasanya. Simak Video "Sistem Transportasi di New York Dihack, Negara-negara Ini Dicurigai" (pal/pal) Secara umum struktur Algoritma terdiri dari 3 bagian, yaitu: 1. Nama/judul Algoritma Nama Algoritma memberikan gambaran secara singkat apa tujuan dari Algoritma, misalkan nama resep masakan, petunjuk melakukan sesuatu, jadwal kegiatan, langkah-langkah penyelesaian sebuah masalah, dan sebagainya. Pemberian nama Algoritma disarankan singkat dan jelas, namun sudah mewakili maksud dari algoritma. Dalam Algoritma komputer biasanya nama algoritma dituliskan tanpa menggunakan spasi, misalkan Algoritma VolumeBalok atau Algoritma Volume_Balok 2. Bagian Deklarasi Bagian deklarasi merupakan tahap persiapan dari algoritma. Pada bagian ini dijelaskan kebutuhan agar algoritma dapat berjalan. Istilah lainnya disini adalah alat dan bahan didefinisikan. Dalam algoritma pemrograman, bagian deklarasi menjelaskan input (masukan) apa saja yang akan diproses oleh algoritma termasuk jenis data input (tipe data), juga output apa yang akan dihasilkan serta semua hal yang akan dipakai dalam algoritma. 3. Bagian Deskripsi Pada bagian ini dijelaskan serangkaian langkah-langkah (instruksi) atau pernyataan (statement) untuk memproses alat dan bahan atau inputan untuk menghasilkan output sesuai yang diharapkan. Langkah-langkah dalam algoritma dituliskan dari atas ke bawah. Urutan penulisan menentukan urutan perintah Berikut ini gambaran struktur sebuah Algoritma Algoritma NAMA_ALGORITMA { Penjelasan mengenai algoritma, yang berisi uraian singkat mengenai apa yang dilakukan oleh algoritma } DEKLARASI { Semua bahan dan alat yang dibutuhkan selama algoritma dijalankankan, atau dalam algoritma meliputi variabel yang dipakai, nama tipe, konstanta, nama prosedur dan nama fungsi didefinisikan di sini } Tanda { } digunakan untuk menuliskan komentar DESKRIPSI : { Semua langka, proses, atau statement algoritma dituliskan di sini, biasanya langkah-langkah diberikan penomoran untuk memudahkan penelusuran dan organisasi)} Untuk lebih jelasnya, perhatikan contoh 1, berikut : Bahan : 1 bungkus tepung hunkwe 250 gram gula pasir 1 gelas santan kental 3 gelas air 100 gram mutiara/ pacar cina, rebus, tiriskan 1 lembar daun pandan ½ sendok teh garam Cara Pembuatan:
Dalam algoritma resep masakan di atas dapat dilihat bahwa proses disusun dengan sistematis dalam bentuk urutan rangkaian kerja. Dalam kasus ini semua proses harus urut satu persatu dikerjakan dari nomor 1 hingga 4. Ciri-ciri Algoritma menurut Donald E. Knuth 1. Algoritma mempunyai awal dan akhir. Suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas dengan kata lain algroritma harus memiliki langkah terbatas . 2. Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda (not ambiguous) 3. Memiliki masukan (input) atau kondisi awal 4. Memiliki keluaran (output) atau kondisi akhir 5. Algoritma harus efektif , bila diikuti benar-benar akan menyelesaikan masalah. |