Algoritma Pemrograman: Pengertian, Fungsi, Ciri, Cara Kerja, dan Contohnya
Algoritma Pemrograman |
Pengertian Algoritma Pemrograman
Algoritma Pemrograman adalah langkah-langkah yang ditulis secara berurutan untuk menyelesaikan masalah pemrograman komputer. Masalah yang dapat diselesaikan dengan pemrograman komputer adalah masalah-masalah yang berhubungan dengan perhitungan matematik.
Algoritma pemrograman merupakan dasar pijakan dalam menciptakan suatu program pada komputer. Dalam aktivitas pemrograman algoritma seringkali dianggap sebagai logika dalam penentuan program yang akan dibuat. Penyajian algoritma dapat dilakukan menjadi dua bentuk yakni dalam tulisan maupun gambar, tergantung dari metode yang digunakan oleh programmer.
Fungsi Algoritma Pemrograman
Berikut fungsi penggunaan algoritma dalam pemrograman di antaranya,
1. Dapat menyelesaikan permasalahan bahkan yang rumit sekaligus dalam program yang kemungkinan dapat melibatkan perhitungan dalam tingkat tinggi.
2. Dapat mempermudah dalam pembuatan suatu pemrograman. Karena dengan adanya algoritma maka logika yang digunakan bisa menjadi lebih disederhanakan. Pada penggunaan code juga bisa menjadi lebih sistematis jika menggunakan algoritmanya benar.
3. Selain dapat memudahkan dalam sebuah program, untuk mengembangkannya pun juga bisa lebih mudah karena sebelumnya script dibuat secara urut dan sistematis.
4. Dapat meminimalisir dalam pembuatan program secara berulang-ulang mulai dari awal. Karena pada sebuah program juga bisa menerapkan algoritma yang sama. Sehingga berbagai aktivitas pemrograman bisa jadi efektif serta efisien.
5. Dalam pembuatan suatu program, tentunya akan menemukan beberapa kesalahan, hal ini memang wajar. Dan dengan adanya penerapan pada algoritma, maka dalam pencarian kesalahan pun bisa lebih mudah diperbaiki dengan cepat.
6. Ketika ingin melakukan modifikasi pada sebuah pemrograman, cukup melakukannya terhadap satu modul saja tanpa harus mengubah pada modul lainnya. Hal ini karena suatu program tentunya sudah tersusun secara sistematis. Sehingga hal itu dapat memudahkan jika ingin merubah-rubahnya.
7. Selain itu algoritma dalam sebuah pemrograman juga dapat melakukan pendekatan pada top down dan divide and conquer. Hal ini juga termasuk hal yang penting dalam aktivitas proses pembuatan pemrograman.
Ciri Algoritma Pemrograman
Menurut Donald E. Knuth, algoritma harus memiliki lima ciri penting yang saling berhubungan satu dengan lain di antaranya,
1. Finiteness (keterbatasan). Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas, dengan kata lain ada tujuan akhir yang dicapai, sehingga suatu program akan berhenti ketika tujuan akhir telah tercapai. Program yang tidak pernah berhenti mengindikasikan bahwa program tersebut berisi algoritma yang salah.
2. Definiteness (kepastian). Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambiguous). Ada instruksi-instruksi yang jelas dan juga tidak ambigu, sehingga tidak terjadi kesalahan di dalam menghasilkan output.
3. Input (masukan). Input ini merupakan suatu permasalahan yang dihadapi serta akan dicarikan solusinya. Algoritma ini mempunyai nol atau lebih input, yaitu besaran yang diberikan kepada algoritma untuk diproses.
4. Output (keluaran). Algoritma memiliki nilai nol atau lebih keluaran (output). Output ini tentunya harus berupa solusi atau penyelesaian dari suatu masalah. Output dapat berupa pesan atau besaran yang berhubungan dengan input.
5. Effectiveness (keefektivitasan). Algoritma harus sangkil (effective), setiap urutan atau langkah harus sesederhana mungkin, sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.
Cara Kerja Algoritma Pemrograman
Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer.
Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan komputer. Secara garis besar komputer tersusun atas empat komponen utama yaitu, piranti masukan, piranti keluaran, unit pemroses utama, dan memori.
Unit pemroses utama (Central Processing Unit – CPU) adalah “otak” komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca, dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingat ingat. Yang disimpan di dalam memori adalah program (berisi operasi-operasi yang akan dikerjakan oleh CPU) dan data atau informasi (sesuatu yang diolah oleh operasi-operasi).
Baca Juga: CPU: Pengertian, Komponen, Fungsi, Cara Kerja, dan Jenisnya
Piranti masukan dan keluaran (I/O devices) adalah alat yang memasukkan data atau program ke dalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya. Contoh piranti masukan antara lain, papan kunci (keyboard), pemindai (scanner), dan cakram (disk). Contoh piranti keluaran adalah, layar peraga (monitor), pencetak (printer), dan cakram.
Mekanisme kerja keempat komponen di atas dapat dijelaskan sebagai berikut,
Mula-mula program dimasukkan ke dalam memori komputer. Ketika program dilaksanakan (execute), setiap instruksi yang telah tersimpan di dalam memori dikirim ke CPU. CPU mengerjakan operasi operasi yang bersesuaian dengan instruksi tersebut. Bila suatu operasi memerlukan data, data dibaca dari piranti masukan, disimpan di dalam memori lalu dikirim ke CPU untuk operasi yang memerlukannya tadi.
Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke dalam memori, lalu memori menuliskan keluaran tadi ke piranti keluaran (misalnya dengan menampilkannya di layar monitor).
Contoh Algoritma Pemrograman
Terdapat 32 algoritma yang paling umum di gunakan di dunia komputer oleh para ilmuwan IT. Berikut 10 dari 32 algoritma pemrograman yang paling umum digunakan di dunia komputer di antaranya,
1. Pencarian Beam. Adalah algoritma yang mengoptimalkan pencarian terbaik pertama. Sebagaimana pencarian terbaik pertama, pencarian ini menggunakan fungsi heuristic untuk mengevaluasi node-node yang diperiksa.
2. Pencarian Binary. Teknik untuk menemukan nilai tertentu di linear array dengan mengesampingkan setengah data setiap langkah.
3. Kompresi Data. Kompresi data atau source coding adalah proses encoding sebuah informasi menggunakan bit yang lebih sedikit ketimbang representasi tanpa kode yang harus menggunakan skema encoding yang spesifik.
4. Branch and Bound. Sebuah metode algoritma umum untuk menemukan solusi optimal dari beragam masalah pada pengoptimalan. Hal tersebut terutama pada masalah optimasi diskrit dan kombinasi.
5. Hashing. Sebuah fungsi untuk merangkum atau mengidentifikasi data secara probabilistik. Biasanya hal ini bermakna satu orang menerapkan rumus matematika ke data, menghasilkan string yang mungkin unik untuk data tersebut.
6. Dynamic Programming. Metode mengurangi runtime algoritma yang menampilkan sub-masalah tumpang tindih dan substruktur optimal.
7. Maximum Flow. Permasalahan maximum flow adalah menemukan hukum melalui alur aliran yang maksimal. Kadang-kadang hal ini didefinisikan sebagai menemukan nilai aliran seperti itu.
8. Metode Newton. Metode Newton adalah algoritma yang efisien untuk menemukan perkiraan ke nol dari fungsi bernilai nyata. Metode Newton juga merupakan algoritma yang dikenal untuk menemukan akar persamaan dalam satu atau lebih dimensi.
9. Karatsuba Multiplication. Untuk sistem yang perlu mengalikan angka dalam kisaran beberapa ribu digit layaknya sistem aljabar komputer dan perpustakaan bignum, perkalian panjang dinilai terlalu lambat. Sistem ini menggunakan perkalian Karatsuba.
10. Q-Learning. Q-Learning adalah teknik pembelajaran penguatan yang bekerja dengan mempelajari fungsi dari nilai tindakan yang memberikan utility yang diharapkan untuk mengambil tindakan pada situasi tertentu.
Dari berbagai sumber
Post a Comment