Wednesday, 14 December 2016

Definisi, Sejarah, dan Struktur Algoritma

Abu Ja'far Muhammad Ibnu Musa Al-Khuwarizmi
(780M-850M)

1. Sejarah Algoritma

Dilihat dari istilahnya algoritma, berasal dari nama seorang matematikawan muslim bernama Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi (780 M-850), yang oleh orang barat menyebut Al-Khuwarizm sebagai Algorism, yang diartikan proses menghitung dengan angka arab. Salah satu karya beliau yang monumental adalah buku berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction), yang menjadi cikal bakal istilah “Aljabar” (Algebra) yang dipakai hingga sekarang ini. Seiring dengan perkembangan jaman isitilah „Algorism‟ berubah menjadi algorithm yang kemudian diartikan sebagai metode perhitungan (komputasi) secara umum. Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma.

2. Definisi Algoritma

Menurut definisi, algoritma adalah urutan langkah-langkah penyelesaian masalah yang disusun secara sistematis dan logis. Dalam beberapa konteks, algoritma dapat diartikan urutan langkah-langkah yang spesifik (tertentu) untuk melakukan suatu pekerjaan. Jadi algoritma tidak hanya diartikan sebatas pada perhitungan dengan komputer saja tapi dapat diartikan lebih luas dalam kehidupan sehari-hari. Resep masakan adalah contoh algoritma yang ada di kehidupan sehari-hari. petunjuk pemasangan AC, petunjuk perakitan komputer, petunjuk installasi software, panduan pengisian token listrik, Jadwal acara kegiatan adalah berbagai bentuk algoritma yang ada di kehidupan sehari-hari.


Menurut makna yang pertama, algoritma adalah langkah-langkah logis penyelesaian masalah, artinya langkah-langkah dalam suatu algoritma harus logis, sesuai dengan tujuan yang akan dicapai dan dapat ditentukan nilai kebenarannya. Sebagai contoh dalam sebuah resep masakah, ada sebuah langkah “Rebus bahan x selama 30 menit” atau dalam merakit komputer, “sambungkan kabel VGA monitor dengan komputer”. Dua langkah ini adalah langkah yang logis, karena jelas diketahui kebenarannya. Kalau si A merebus selama 15 menit saja maka dapat dikatakan langkahnya tidak sesuai atau salah, atau misalkan kabel VGA tidak tersambung maka jelas bahwa langkahnya tidak sesuai.

Langkah yang logis juga dapat diartikan pula tidak ambigu. Langkah “tambahkan garam secukupnya”, merupakan contoh langkah atau proses yang ambigu atau bermakna ganda. Secukupnya bisa berarti setengah sendok teh, satu sendok teh atau satu sendok makan, tidak ada kriteria yang pasti, maka antara satu orang pengguna dengan yang bisa menghasilkan output yang tidak sama, dalam hal ini rasanya. Demikian juga misalkan dalam suatu algoritma ada perintah “Tambahkan x dengan sebuah bilangan”, juga bermakna ambigu karena bilangan seperti apa yang harus ditambhakan apakah bilangan asli atau real, genap atau ganjil, tidak ada nilai yang pasti.

Selain itu penyusunan langkah-langkah harus sistematis, atau terstruktur menurut aturan/sistem tertentu sesuai denga tujuan yang dicapai. Artinya langkah-langkah yang ada pada algoritma harus dapat diikuti atau ditelusuri dengan baik sehingga mencapai hasil akhir yang diinginkan. Oleh karena itu dalam suatu  algoritma, biasanya setiap langkah diberikan nomer agar pengguna algoritma dapat mengikuti setiap instruksi yang diberikan dengan baik. Selain itu langkah-langkah dalam algoritma juga harus terbatas, artinya ia akan berhenti setelah melakukan sejumlah langkah. Karena tujuan dari algoritma adalah mencari penyelesaian. Jika sebuah algoritma mempunyai langkah yang tidak terbatas, ini berarti usaha mencari penyelesaian yang tidak kunjung berhasil. Maka dapat dikatakan algoritma tersebut sia-sia atau tidak berguna.

3. Struktur Algoritma

Inti dari algoritma adalah menemukan solusi dari suatu permasalahan. Untuk menyelesaikan masalah, algoritma membutuhkan spesifikasi input (masukan) sesuai yang diperlukan, memprosesnya melalui serangkaian langkah-langkah dan menghasilkan output sebagai solusi dari permasalahan.

Stukturya adalah sebagai berikut: 
1.        1. Nama
Nama menjelaskan tentang tujuan algoritma tersebut dibuat, seperti: Algoritma_VolumeBalok, Algoritma_GajiPegawai, Algoritma_Tiket_AirLines, dan algoritma lainnya.
2.       2. Deklarasi
Bagian deklarasi merupakan tahap persiapan dari algoritma. Pada bagian ini dijelaskan kebutuhan agar algoritma dapat berjalan. Istilah lainnya di sinilah alat dan bahan didefinisikan. Dalam algoritma pemrograman, bagian deklarasi menjelaskan input (masukan) apa saja yang akan diproses oleh algoritma termasuk jenis data input (tipe data), juga output apa yang akan dihasilkan serta semua hal yang akan dipakai dalam algoritma. Yang didefiniskan dalam algoritma ini termasuk variabel, tipe data, konstanta, nama prosedur, tipe, dan fungsi.
3.       3. Deskripsi
Pada bagian ini dijelaskan serangkaian langkah-langkah (instruksi) atau pernyataan
(statement) untuk memproses alat dan bahan atau inputan untuk menghasilkan output
sesuai yang diharapkan. Langkah-langkah dalam algoritma dituliskan dari atas ke bawah.
Urutan penulisan menentukan urutan perintah

0 komentar:

Post a Comment

Tinggalkan komentar