Rabu, 09 Desember 2015

Sejarah dan Pengertian Algoritma

Sejarah Algoritma

       Istilah algoritma, mungkin bukan sesuatu yang asing bagi kita. Teman-teman ada yang tahu arti kata ‘algoritma’? Ditinjau dari asal-usul katanya, kata ‘Algoritma’ mempunyai sejarah yang agak aneh. Orang hanya menemukan kata Algorism yang berarti proses menghitung dengan angka Arab. Seseorang dikatakan ‘Algorist’ jika menghitung menggunakan angka Arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku Arab terkenal, yaitu Abu Abdullah Muhammad Ibnu Musa Al-Khuwarizmi dibaca orang barat menjadi Algorism.
Penemunya adalah seorang ahli matematika dari Uzbekistan yang bernama Abu Abdullah Muhammad Ibn Musa al-Khwarizmi. Di literatur barat, beliau lebih terkenal dengan sebutan Algorism. Panggilan inilah yang kemudian dipakai untuk menyebut konsep algoritma yang ditemukannya. Abu Abdullah Muhammad Ibn Musa al-Khwarizmi (770-840) lahir di Khwarizm (Kheva), kota di selatan sungai Oxus (sekarang Uzbekistan) tahun 770 masehi. Kedua orangtuanya kemudian pindah ke sebuah tempat di selatan kota Baghdad (Irak), ketika ia masih kecil. Khwarizm dikenal sebagai orang yang memperkenalkan konsep algoritma dalam matematika, konsep yang diambil dari nama belakangnya.
Al khwarizmi juga adalah penemu dari beberapa cabang ilmu matematika yang dikenal sebagai astronom dan geografer. Ia adalah salah satu ilmuwan matematika terbesar yang pernah hidup, dan tulisan-tulisannya sangat berpengaruh pada jamannya. Teori aljabar juga adalah penemuan dan buah pikiran Al khwarizmi. Nama aljabar diambil dari bukunya yang terkenal dengan judul “Al Jabr Wa Al Muqabilah”. Ia mengembangkan tabel rincian trigonometri yang memuat fungsi sinus, kosinus dan kotangen serta konsep diferensiasi.

 Pengertian Algoritma

Abu Ja’far Mohammad Ibnu Musa Al Khawarizmi, pertama dan pelopor logika algoritma. Logika berasal dari kata Yunani Kuno. Pengertiannya yaitu hasil pertimbangan akal pikiran yang diutarakan lewat kata dan dinyatakan dalam bahasa.
Definisi Algoritma
1. Langkah-langkah yang dilakukan agar solusi masalah dapat diperoleh.
2. Suatu prosedur yang merupakan urutan langkah-langkah yang berintegrasi
3. Suatu motode khusus yang digunakan untuk menyelesaikan suatu masalah yang nyata (Webster dictionary).

Jadi, intinya Algoritma merupakan langkah-langkah yang disusun secara tertulis dan berurutan untuk menyelesaikan suatu masalah. Dalam menuliskan algoritma,  dapat  digunakan  bahasa  natural  atau menggunakan notasi matematika, sehingga masih belum dapat dijalankan pada komputer. Dalam  kehidupan  sehari-hari,  kita  sudah  melakukan  penyusunan algoritma untuk menyelesaikan permasalahan atau tantangan  yang  dihadapi.  Sebagai  contoh,  pada  saat  diminta untuk  membuat  telur  dadar.  Sebelum  membuat  algoritmanya, kita  perlu  mendefinisikan  masukan  (input)  dan  luaran  (output) terlebih  dahulu, dimana  input  berupa telur  mentah, dan  output berupa telur dadar yang sudah matang.
Susunan algoritmanya sebagai berikut:
1.     Nyalakan api kompor
2.     Tuangkan minyak ke dalam wajan
3.     Pecahkan telur ayam ke dalam mangkok
4.     Tambahkan garam secukupnya
5.     Aduk campuran telur dan garam
6.     Tuang adonan telur ke dalam wajan
7.     Masak telur hingga matang
Algoritma  akan  lebih  baik  jika  ditulis  secara  sistematis menggunakan  beberapa  skema.
Program/Pemrograman adalah formulasi sebuah algoritma dalam bentuk bahasa  pemrograman, sehingga  siap  untuk dijalankan pada mesin  komputer.  Membuat  program  seperti  memberitahukan apa  yang  harus  dilakukan  kepada  orang  lain.  Sebagai  contoh, pada  saat  kita  memberitahukan  algoritma  membuat  telur dadar kepada orang lain, kita sudah melakukan pemrograman. Pemrograman  membuat  telur  dadar  kepada  orang  lain akan  lebih  mudah  karena  orang  tersebut  sudah  mengetahui apa  itu  telur  dadar.  Pada  langkah  yang  ke-3  diminta  untuk memecahkan  telur,  bagaimana  cara  orang  tersebut memecahkan  telur, dan seterusnya.
  • Karakteristik Algoritma
1.     Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. Sebagai contoh, dalam algoritma Euclidean, pada langkah 1, jika n = 0, algoritma berhenti, jika n tidak = 0 maka nilai n selalu berkurang sebagai akibat dari langkah 2 dan 3, dan pada akhirnya nilai n = 0. Program yang tidak pernah berhenti mengindikasikan bahwa program tersebut berisi algoritma yang salah.
2.     Setiap langkah harus di defenisikan dengan tepat dan tidak berarti dua (ambiguous). Pembaca harus mengerti apa yang di maksud dengan “m” dan “n” adalah bilangan bulat tak negatif (-). Contoh lainnya pernyataan ” bagilah p dengan beberapa sejumlah bilangan bulat positif” dapat bermakna ganda. Berapakah yang di maksud dengan “berapa” ? Algoritma menjadi jelas jika langkah tersebut di tulis “bagilah p dengan 10 buah bilangan bulat positif”
3.     Algoritma memiliki nol atau lebih masukan (input). Masukan ialah besaran yang diberikan kepada algoritma untuk di proses. Algoritma Euclidean mempunyai dua buah masukan, yaitu m dan n.
4.     Algoritma mempunya nol atau lebih keluaran (output). Keluaran dapat berupa pesan atau besaran yang memiliki hubungan dengan masukan. Algoritma Euclidean mempunyai 1 keluaran, yaitu m pada langkah 1, yang merupakan pembagi bersama terbesar dari kedua bilangan.
5.     Algoritma harus sangkil (effective). Setiap langkah harus sederhana sehingga dapat di kerjakan dalam sejumlah waktu yang masuk akal.

Algoritma dapat dituliskan ke dalam berbagai bentuk, namun struktur yang rapi dan mengikuti aturan tertentu akan membuat algoritma lebih mudah untuk dibaca dan dipahami. Selanjutnya, algoritma yang telah tersusun rapi akan diimplementasikan ke bahasa pemrograman. Algoritma dapat dituliskan ke dalam berbagai bentuk, namun dan mengikuti aturan tertentu akan membuat algoritma lebih mudah untuk dibaca dan dipahami. Sekian dari saya, semoga bermanfaat J

Tidak ada komentar:

Posting Komentar