Algoritma Dasar: Pengertian, Ciri-Ciri, Jenis, dan Penyelesaiannya
Ilmu pengetahuan maupun teknologi terus mengalami perkembangan setiap harinya. Memang terlihat kompleks dan sulit dipahami, namun adanya teknologi nyatanya membawa banyak manfaat untuk kehidupan. Seperti halnya komputer, perangkat ini memiliki peran besar untuk memudahkan aktivitas manusia. Pun, algoritma dasar komputer tidak dipahami oleh semua orang, tapi manfaatnya bisa dirasakan banyak orang.
Pengertian Algoritma Dasar
Menyinggung tentang algoritma dasar, apa sih pengertiannya? Algoritma khususnya dalam komputer merupakan daftar instruksi yang ditujukan untuk menyelesaikan pekerjaan tertentu. Instruksi atau langkah dalam menyelesaikan pekerjaan atau masalah yang dimaksud bukan dalam bentuk bahasa pemrograman, akan tetapi langkah atau instruksi yang selanjutnya akan dimodifikasi ke dalam bahasa pemrograman.
Ciri-ciri Algoritma
Mungkin tanpa disadari kamu sudah sering menggunakan algoritma dalam keseharian. Namun karena belum pernah mempelajarinya secara khusus, kamu belum paham bahwa cara menghadapi atau menyelesaikan masalah yang pernah dilakukan sudah memenuhi ciri-ciri algoritma. Lalu apa saja ciri-ciri algoritma tersebut? Berikut uraiannya.
1. Ada Input
Artinya, masalah yang memiliki kaitan dan akan dihadapi di masa depan perlu disertai solusi sehingga bisa diatasi dengan baik. Nilai minimal algoritma adalah 0.
2. Ada Output
Output di sini merupakan solusi dari masalah yang sedang dihadapi (input). Nilai minimal algoritmanya adalah 1 output atau lebih.
3. Terdapat Proses
Ketika hendak menyelesaikan masalah dibutuhkan proses atau sekumpulan instruksi sebagai panduan dalam menyelesaikan masalah.
4. Jelas
Agar masalah bisa diselesaikan dengan baik dibutuhkan instruksi atau langkah yang jelas. Dengan demikian output yang dihasilkan bisa sesuai dengan harapan.
5. Ada Tujuan
Poin ini merupakan tahapan akhir dari algoritma. Di mana proses penyelesaian masalah akan “berhenti” jika sudah mencapai batasan atau tujuan yang diinginkan.
Jenis Algoritma
Agar lebih memahami tentang algoritma dasar, penting mengetahui berbagai jenis algoritma itu sendiri. Berikut beberapa jenis algoritma;
1. Divide and Conquer
Algoritma jenis ini membagi satu masalah jadi dua bagian masalah kecil. Selanjutnya setiap masalah diselesaikan satu per satu. Apabila sudah, solusi dari keduanya digabungkan menjadi satu. Algoritma divide and conquer termasuk algoritma yang sering dimanfaatkan sebab dianggap mudah dan stabil.
2. Algoritma Rekursif
Hampir mirip dengan poin sebelumnya, algoritma rekursif juga membagi masalah jadi beberapa bagian. Namun kemudian algoritma ini melakukan pengulangan kesamaan diri hingga masalah terurai.
3. DP atau Pemrograman Dinamis
Pada algoritma ini setiap masalah dicarikan solusi, kemudian solusi tersebut diuraikan lagi hingga menjadi sekumpulan instruksi. Jadi hasil akhirnya adalah solusi dari masalah tadi berupa keputusan-keputusan kecil yang saling berhubungan.
4. Greedy
Jenis dari algoritma ini cenderung melakukan penyelesaian masalah dengan solusi yang dinilai paling jelas diantara solusi-solusi yang sering digunakan. Algoritma ini juga dikenal dengan algoritma serakah karena pada algoritma greedy keputusan yang telah diambil tidak akan pernah diutak-atik lagi sebab sudah dinilai “baik”.
5. Brute Force
Berbeda dari algoritma greedy, algoritma Brute Force ini justru berusaha mengeksekusi semua peluang yang ada hingga hasil atau tujuan yang diinginkan bisa diraih. Algoritma jenis ini mempertimbangkan banyak opsi secara logis. Kekurangannya adalah proses pemecahan masalah menggunakan algoritma ini membutuhkan waktu yang lama.
6. Backtracking
Algoritma jenis ini juga disebut algoritma mundur sebab penyelesaian masalahnya dilakukan dengan memanggil dirinya secara berulang atau rekursif. Akan tetapi, ketika suatu solusi yang dipilih tidak dapat mengatasi masalah, maka solusi tersebut akan dihilangkan dan mundur atau kembali ke belakang untuk mencari solusi lainnya.
7. Struktur Algoritma
Struktur algoritma dasar adalah sequence, selection, dan repetition. Sequence berisi instruksi yang runtut dari awal hingga akhir. Selection merupakan proses untuk menyeleksi manakah solusi yang akan digunakan. Repetition adalah proses pengulangan suatu fungsi hingga menemukan solusi yang diharapkan.
Penyelesaian Algoritma
Contoh kasus yang mungkin juga kamu temui dalam kehidupan sehari-hari; Seorang pria ingin mengganti bak tampung di rumahnya dengan bak tampung yang baru. Ia membutuhkan program yang bisa membantunya menghitung luas dan volume bak tampung persegi panjang agar sesuai dengan ukuran area bak tampung di rumahnya. Bagaimana cara menghitungnya?
Program Hitung_Luas_Volume_Bak_Tampung
Deklarasi
float panjang, lebar, tinggi, L_Bak, V_Bak
Deskripsi
Baca Panjang
Baca lebar
Baca tinggi
Hitung L_Bak = panjang x lebar
Hitung V_Bak = panjang x lebar x tinggi
Cetak L_Bak
Cetak V_Bak
End
Konversi ke Bahasa Pemrograman C++
Kamu juga bisa menghitung penyelesaian dari masalah yang terjadi di atas menggunakan bahasa pemrograman C++. Contohnya sebagai berikut:
//Program Volume Bak
include
include
include
Main()
{
float panjang, lebar, tinggi, L_Bak, V_Bak;
cout<<”Program Hitung Luas dan Volume Bak Tampung”<
cout<<”/t/t/tPB.Cahaya Dinamika”<
cout<<”====================================”<
printf(”Panjang :”);scanf (”%f”,panjang);
printf(”Lebar :”);scanf (”%f”,lebar);
printf(”Tinggi :”);scanf (”%f”,tinggi);
L_Bak = panjang*tinggi;
V_Bak = panjang* lebar * tinggi;
Printf(”Luas Bak Tampung = %5.2f”,L_Bak);
Printf(”Volume Bak Tampung = %5.2f”,V_Bak);
Getch();}
Demikianlah uraian tentang pengertian algoritma, ciri, jenis, hingga contoh kasus penggunaan algoritma. Dari ulasan diatas bisa kita ambil kesimpulan jika algoritma tidak digunakan hanya sebagai cara untuk menyelesaikan masalah yang terjadi pada komputer, namun juga bisa digunakan sebagai penyelesai masalah sehari-hari. Algoritma sangat erat hubungannya dengan dunia matematika yang nampak membosankan dan menyulitkan. Namun bagi kamu yang menyukainya tentu ini adalah tantangan bukan?
Baca juga: Struktur Dasar Algoritma: Prinsip, Struktur, dan Cara Penyajian
Setelah menyimak uraian di atas apakah kamu makin bersemangat untuk mempelajari algoritma? Mungkin di awal akan terlihat membosankan, namun mempelajari algoritma itu lebih baik dibandingkan harus mengalami ketertinggalan karena menutup diri dari perkembangan yang ada.
Comments :