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.