Kriteria Algoritma – Sejauh ini sebetulnya belum ada standarisasi tentang bagaimana menyusun algoritma. Namun pada prinsipnya, kita diberikan kebebasan untuk menyusun bentuk algoritma (algorithm). Kendati begitu, kita pasti memerlukan sebuah kriteria algoritma atau dasar untuk merancang algoritma yang baik dan benar. Show Lalu apa kriteria itu? Menurut KBBI, Kriteria adalah ukuran yang menjadi dasar penilaian atau penetapan sesuatu. Dan pada postingan kali ini, kita akan mempelajari apa saja ukuran dasar dari penyusunan algoritma. Kriteria yang akan dijabarkan diambil dari buku yang ditulis oleh Donald E. Knuth. Beliau adalah seorang ilmuwan komputer, matematikawan dan sudah menulis banyak buku tentang Algoritma. Dan berikut adalah penjabarannya: Kriteria Penyusunan Algoritma1. Input (Masukan)Sebuah Algoritma harus memiliki nol input atau inputan dari pengguna (user). Apa yang dimaksud dengan nol input? Nol input dapat diartikan algoritma atau program tidak mendapat inputan data dari pengguna. Bukan berarti algoritma tidak memiliki masukan sama sekali, tetapi inputan pada algoritma sudah di deklarasikan diawal program. Contoh : Sedangkan yang dimaksud dengan inputan dari pengguna. Seperti contoh diatas, dimana panjang jari-jari perlu diinputkan agar program dapat berjalan dan memberikan hasil yang diinginkan. 2. Output (Keluaran)Dalam penyusunan kriteria algoritma yang baik dan benar minimal harus memiliki satu output. Ini karena algoritma mengusung teori IPO (Input-Proses-Output) dimana setiap ada masukan pasti ada proses dan keluarannya. Output yang dikeluarkan oleh program dapat berbentuk File, Video, teks, audio dan lain sebagainya. Dapat juga output nya sebagai sebuah data yang disimpan di database. 3. Finiteness (Terbatas)Terbatas disini bukan artinya mempunyai keterbatasan dalam pengembangan algoritma tetapi algoritma yang dijalankan harus mempunyai batas. Atau bisa diartikan juga suatu program yang dirancang dan dieksekusi haruslah berhenti dan selesai pada output. Program yang buruk adalah program yang mengalami infinite, yaitu semacam program berjalan terus menerus sampai not responding atau bahasa kerennya nge-Hang. 4. Definiteness (Pasti)Dalam perancangan, program harus memiliki algoritma yang pasti dimana arah dan tujuan yang jelas. Program yang baik adalah program yang memiliki algoritma dengan pernyataan yang jelas seperti kapan mulai dan kapan berakhirnya sebuah progam, tujuan dari program dan output yang jelas. Pada hal ini cukup diperlukan tingkat ke peka an dalam membangun program (software) guna memperkecil persentasi hasil yang tidak diinginkan. 5. EfisienPenyusunan kriteria algoritma yang terakhir adalah Efisien. Menurut KBBI (Kamus Besar Bahasa Indonesia), efisien adalah tepat atau sesuai untuk mengerjakan (menghasilkan) seauatu dengan tidak membuang-buang waktu, tenaga dan biaya. Hal ini menandakan bahwa algoritma yang ditulis pada program haruslah efisien. Bagaimana program yang efisien? Program yang efisien adalah program yang tidak memakan banyak memori dan tidah melakukan hal-hal yang tidak diperlukan selama proses. Lalu kenapa efisien masuk dalam kriteria algoritma yang baik? Karena setiap program akan memakan waktu dalam setiap proses eksekusinya. Jika program mengerjakan hal-hal yang tidak perlu dilakukan, maka bisa dipastikan program tersebut akan berjalan lambat. Kesimpulan Kriteria AlgoritmaDari kriteria-kriteria algoritma diatas, kita dapat menarik beberapa kesimpulan antara lain :
Sekian dari saya, semoga postingan “Kriteria-kriteria Algoritma yang Baik dan Benar” dapat memberikan kita pengetahuan tentang kriteria algoritma lebih dalam lagi. Bila ada kesalahan dalam penulisan mohon dikoreksi, saya menunggu respon mengenai postingan ini dari rekan-rekan semua dapat melalui kolom komentar ataupun email ke . Terima kasih, keep calm and always code programming!!! Wasallam, Sumber :
Halo, teman-teman apa kabar? Semoga teman-teman dalam keadaan baik-baik saja ya. Sudah tahukah kamu ciri-ciri algoritma pemrograman? Sudah tahu, namun belum tahu secara komplit? Baik, pada artikel ini kita akan membahas 6 ciri algoritma pemrograman secara detail dan tuntas. Yuk simak! Sebelumnya mari kita flashback apa yang dimaksud dengan algoritma baik itu pengertian dan juga contohnya.
Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional. Daftar SekarangAlgoritma merupakan urutan aksi untuk menyelesaikan masalah yang disusun secara sistematis dan logis. Algoritma juga dapat diartikan urutan langkah logis yang digunakan untuk menyelesaikan suatu masalah. Singkatnya, sebuah masalah dapat diselesaikan dengan beberapa langkah yang logis. Kenapa perlu algoritma? Komputer itu kan pintar? Perlu kamu tahu bahwa komputer hanya akan menerima perintah dari kita. Jadi kita bisa menginstruksikan komputer dengan bahasa komputer.
Contohnya ketika kamu mau makan. Kamu memerlukan beberapa tindakan untuk makan. Dari mulai mencuci tangan; menyiapkan piring, nasi, dan lauk pauk; hingga makan. Itulah beberapa contoh proses atau urutan langkah algoritma dalam kehidupan sehari-hari. Setiap orang mempunyai urutan langkah yang berbeda karena setiap orang mempunyai algoritmanya masing-masing. Itulah yang menjadi ciri khas algoritma di kehidupan sehari-hari. Adapun manfaat dari algoritma yaitu untuk membantu seseorang dalam menyelesaikan masalah berdasarkan pada pola pikirnya masing-masing. Selain itu, algoritma juga memiliki fungsi di antaranya:
Algoritma pemrograman mempunyai ciri tersendiri yang dapat membedakannya dengan teknik pemrograman lain dalam menyelesaikan suatu masalah, berikut di antaranya sebagai: 1. Finiteness (Keterbatasan)Finiteness atau keterbatasan berarti algoritma harus berakhir setelah mengerjakan sejumlah langkah proses. Algoritma yang sedang mengerjakan sebuah proses atau langkah mempunyai sifat terbatas, maka ia harus menghentikan apa yang sedang ia kerjakan. Program yang tidak pernah berhenti atau tidak ada batasnya merupakan program dengan berisi algoritma yang salah. Itulah mengapa algoritma harus mempunyai ciri finiteness. Algoritma pemrograman harus memiliki output yang sesuai dengan harapan pengguna. Oleh karena itu, finiteness membantu pengguna agar algoritma sesuai dengan yang diharapkannya. 2. Input (Masukan)Algoritma dapat memiliki nol atau lebih masukan (input). Masukan adalah besaran nilai yang diberikan kepada algoritma sebelum ia mulai bekerja. Misal Algoritma Z mempunyai dua buah masukan “A” dan “B“, algoritma Y memiliki masukan dari algoritma “C“, atau algoritma X yang tidak memiliki input sama sekali. 3. Output (Keluaran)Perlu kamu tahu juga bahwa algoritma juga dapat mempunyai nol atau lebih keluaran (output). Keluaran adalah besaran nilai yang memiliki hubungan dengan masukan (input). Keluaran tersebut tentunya harus berupa solusi atau penyelesaian dari suatu masalah. Contohnya sebuah algoritma berfungsi untuk menghitung sebuah luas persegi. Saat ia diberi input 4 maka harusnya outputnya adalah 16. 4. Definiteness (Kepastian)Kepastian (definiteness) adalah urutan langkah yang dibuat harus jelas dan sesuai dengan tujuan. Setiap urutan harus didefinisikan secara tepat dan tidak berarti ganda (ambiguous). Dengan kata lain, pembaca harus mengerti apa tujuan yang dimaksud. Contohnya ketika kamu membuat algoritma penghitung segitiga, pembaca harus tahu kalau yang diinputkan adalah angka bukan teks. Contoh lain pada algoritma menghitung orang di dalam suatu ruangan berikut: “Buatlah variabel nilai bernama value” Dengan begitu, pengguna algoritma dapat dengan mudah mengerjakan dan menyelesaikannya secara pasti. 5. Effectiveness (Keefektivitasan)Algoritma tentu harus sangkil (efektif), jadi urutan algoritma dikerjakan dalam waktu yang wajar. Dalam kata lain, algoritma efektif dan efisien. Setiap urutan atau langkah harus sesederhana mungkin, sehingga dapat dikerjakan dalam sejumlah waktu yang relatif efisien dan masuk akal. Suatu algoritma dapat dikatakan efisien jika waktu proses dari algoritma relatif lebih singkat dan penggunaan memorinya lebih sedikit. Algoritma juga harus tepat guna lo. Walaupun terbilang sederhana, algoritma yang kamu buat harus sesuai dengan masalah yang dihadapi. Selain itu, suatu algoritma dikatakan efektif apabila ia mempunyai solusi dari permasalahan yang diselesaikan. Jadi, jangan ada instruksi yang tidak mungkin dikerjakan oleh algoritma ya. 6. Structured (Terstruktur)Algoritma harus terstruktur. Urutan baris langkah yang digunakan harus disusun secara sistematis. Disusun sedemikian rupa agar proses penyelesaiannya tidak kemana-mana atau berbelit-belit, sehingga memungkinkan prosesnya jadi relatif lebih singkat. Hal ini memperlihatkan bahwa bagian dari proses tersebut dapat dibedakan dengan jelas, seperti input, proses, dan output. Dengan demikian, memudahkan kita dalam melakukan pemeriksaan ulang. Suatu algoritma harus menghasilkan keluaran yang tepat guna (efektif). Ia juga harus diproses dalam waktu yang relatif singkat dengan penggunaan memori yang relatif rendah (efisien). Berikut ini adalah sifat-sifat dari sebuah algoritma:
Kesimpulannya, algoritma adalah metode efektif yang diekspresikan sebagai rangkaian yang terbatas. Algoritma juga merupakan kumpulan instruksi untuk menyelesaikan suatu masalah. Instruksi–instruksi ini dapat diterjemahkan secara bertahap dari awal hingga akhir.
Setelah membaca artikel ini kamu jadi tahu “Apa saja ciri-ciri algoritma pemrograman? Beserta penjelasannya.” Terutama kamu yang ingin jago pemrograman harus memnguasai algoritma terlebih dahulu ya. Apabila ada komentar dan saran silahkan isi di kolom komentar. Terima kasih. Simak juga yuk artikel lainnya di blog Dicoding. Inilah beberapa artikel yang berkaitan tentang algoritma, di antaranya: 6 Ciri Algoritma Pemrograman – karya Rendi Juliarto, Intern Junior Content Writer di Dicoding |