Ketika membaca atau mendengar kata algoritma, sebagian besar dari kita akan beranggapan bahwa kata tersebut berhubungan dengan bahasa pemrograman, ilmu komputer, atau matematika. Iya, itu benar. Bahkan dalam kehidupan sehari-hari pun kita sering melakukan algoritma. Tetapi sebenarnya, apa pengertian algoritma itu?
Secara umum, pengertian algoritma adalah suatu urutan dari beberapa langkah logis dan sistematis yang digunakan untuk menyelesaikan masalah tertentu. Pendapat lain mengatakan definisi algoritma adalah proses atau serangkaian aturan yang harus diikuti dalam perhitungan atau operasi pemecahan masalah lainnya, terutama oleh komputer. Dengan kata lain, semua susunan logis yang diurutkan berdasarkan sistematika tertentu dan digunakan untuk memecahkan suatu masalah dapat disebut dengan algoritma.
Biasanya algoritma digunakan untuk melakukan penghitungan, penalaran otomatis, serta mengolah data pada komputer dengan menggunakan software. Dalam algoritma terdapat rangkaian terbatas dari beberapa instruksi untuk menghitung suatu fungsi yang jika dieksekusi dan diproses akan menghasilkan output, lalu berhenti pada kondisi akhir yang sudah ditentukan. Pencetus pertama algoritma adalah Muhammad bin Musa al-Hawarizmi.
Menurut informasi dari Wikipedia, al-Hawarizmi adalah seorang pakar dalam beberapa bidang seperti ahli matematika, astronomi, astrologi, dan geografi. Al-Hawarizmi juga dikenal sebagai Bapak Al-Jabbar karena telah membuat buku pertamanya yaitu Al-Jabbar yang membahas tentang solusi sistematik dari linier dan notasi kuadrat. Dan dari namanya istilah yang akan kita pelajari dalam video ini muncul.
Dari Al-Hawarizmi kemudian berubah menjadi algoritm dalam bahasa Inggris dan diterjemahkan menjadi algoritma dalam bahasa Indonesia. Algoritma memiliki lima ciri utama yang saling berhubungan satu dengan lainnya. Menurut Donald Eknuth, adapun ciri-ciri algoritma adalah sebagai berikut.
1. Ada input, yaitu permasalahan yang dihadapi dan akan dicarikan solusinya. Algoritma memiliki nilai 0 atau lebih input atau masukan. 2. Ada proses, yaitu langkah-langkah yang harus dilakukan untuk mencapai tujuan akhir.
3. Ada output, yaitu solusi atau tampilan akhir yang didapatkan dari suatu algoritma. Algoritma memiliki minimal 1 output. 4. Ada instruksi-instruksi yang jelas dan tidak ambigu, yaitu instruksi yang jelas dalam algoritma sehingga tidak terjadi kesalahan dalam menghasilkan output.
5. Ada tujuan akhir yang dicapai, yaitu akhir dari program di mana program akan berhenti ketika tujuan akhir telah tercapai. Pembuatan algoritma mempunyai banyak keuntungan di antaranya. 1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya. 2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama. Cara penulisan algoritma. Ada tiga cara penulisan algoritma, yaitu 1. Structure English SE, dikenal juga sebagai Natural Language atau bahasa sehari-hari. SE merupakan alat yang cukup baik untuk menggambarkan suatu algoritma.
Dasar dari SE adalah bahasa Inggris. Namun kita dapat memodifikasi dengan bahasa Indonesia, sehingga kita boleh menyebutnya sebagai Structure Indonesian SE. SE atau SE lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasikan kepada pemakai perangkat lunak.
2. Sudokot. Sudokot adalah kode yang mirip dengan instruksi kode program sebenarnya. Sudokot didasarkan pada bahasa pemrograman yang sesungguhnya seperti Basic 7, Fortran atau Pascal.
Sudokot yang berbasis bahasa Pascal merupakan sudokot yang sering digunakan. Sudo berarti imitasi atau tiruan atau menyerupai, sedangkan kod menunjuk pada kode program. 3. Flowchart.
Flowchart atau bagan alir adalah skema, bagan atau chat yang menunjukkan aliran atau flow di dalam suatu program secara logika. Flowchart merupakan alat yang banyak digunakan untuk menggambarkan algoritma dalam bentuk notasi-notasi tertentu. Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Untuk lebih memahami contoh algoritma Structure English atau Natural Language, berikut adalah contoh algoritmanya dengan bentuk yang bisa dijumpai dalam kegiatan sehari-hari.
Sebelum membuat algoritmanya, perlu diingat kembali dengan pengertian algoritma. Perhatikan kata-kata kunci yang bercetak tebal. Algoritma yang diangkat sebagai contoh adalah membuat secangkir kopi panas.
Tujuannya atau penyelesaiannya adalah tersajinya secangkir kopi panas. Masalahnya adalah bagaimana keurutan cara membuat secangkir kopi panas yang logis atau masuk akal secara sistematis. Secara logika, untuk membuat secangkir kopi, kita memerlukan alat dan bahannya.
Pikirkan alat dan bahan yang akan diperlukan. Kita pasti memerlukan kopi, gula, air panas, cangkir, dan sendok. Yang pertama, kita tuangkan air panas ke dalam cangkir yang kedua sobek bungkus kopi sasetnya yang ketiga tuangkan kopi bubuk saset tadi ke dalam cangkir yang sudah berisi air panas yang keempat tambahkan gula dan krimer sebagai campuran pemanis yang kelima aduk semua bahan sampai kopi gula dan krimer supaya bercampur sempurna dengan air dan yang terakhir secangkir kopi panas sudah siap disajikan walau dalam membuat algoritma harus berurutan tetapi dalam beberapa kasus, boleh urutannya terbalik, asalkan tidak akan merubah pada output atau hasil akhirnya.
Urutan yang terbalik pula dapat terjadi dalam membuat program seperti misalnya boleh membalik urutan ketika membuat fungsi dulu kemudian prosedur atau sebaliknya. Begitulah kira-kira algoritma membuat secangkir kopi panas. Lalu bagaimana contoh logika yang salah, misalnya jika Anda akan membuat secangkir kopi, Anda akan membuatnya di dalam ember atau Anda akan mengaduk semua bahan dengan centong nasi. Tentu ini kurang tepat, karena kurang masuk akal.
Jika disebut tidak sistematis, mungkin Anda tidak akan mengaduk semua bahan, padahal proses mengaduk adalah bagian dari proses dalam membuat secangkir kopi yang benar. Jika Anda sudah mengaduk isi dalam cangkir sebelum Anda menuangkan kopi bubuk saset ke dalam cangkirnya, berarti ada urutan yang salah dalam algoritmanya. Dan jika semua bahan sudah berada di dalam cangkir tetapi kemudian Anda membalikan cangkirnya hingga semua bahan yang berada di dalam cangkir tumpah, itu artinya tidak ada penyelesaian masalah atau algoritmanya salah.
Apakah Anda sudah mengerti cara membuat algoritma dalam kehidupan sehari-hari? Sangat mudah bukan? Terima kasih telah menonton Terima kasih telah menonton