Kata algoritma berasal dari latinisasi nama seorang ahli matematika dari Uzbekistan Al Khawārizmi (hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de numero Indorum". Pada awalnya kata algorisma adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk menyelesaikan persoalan dengan menggunakan bilangan numerik arab (sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad ke-18, istilah ini berkembang menjadi algoritma, yang mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan (http://wikipedia.org)
Algoritma adalah alur pikiran seseorang dalam menyelesakan suatu masalah atau bisa juga di katakan Algoritma adl suatu tehnik dalam menyelesaikan suatu masalah dengan cara yang terstruktur. setiap guru dlm memberikan pelajaran itu memiliki trik yg berbeda dengan tujuan yang sama yaitu memberikan pemahaman pada setiap siswa, begitu juga dengan siswa yang tingkat pemahamannya terhadap suatu materi sangat bervariasi.
BAB I
PENDAHULUAN
Latar Belakang
Dalam matematika tidak jarang kita mengalami kesulitan untuk
menyelesaikan persoalan matematika yang rumit atau membutuhkan
kesabaran. Apabila hal itu terjadi, salah satu solusinya yaitu kita dapat
menggunakan bantuan komputer untuk mempermudah dalam
menyelesaikan masalah tersebut.
Algoritma pemrograman yang dimanfaatkan untuk memecahkan
berbagai macam masalah matematika dapat disebut dengan istilah
algoritma matematika.
Beberapa contoh pemrograman yang dapat diselesaiakan dengan
algoritma matematika antara lain : algoritma bilangan prima, algoritma
Oleh karena tidak sedikit masalah matematika yang dapat diselesaikan
dengan algoritma matematika, maka ada baiknya apabila kita mengetahui
sedikit banyak tentang algritma matematika.
BAB II PEMBAHASAN
A.Sejarah Algoritma
Ahli sejarah matematika menemukan bahwa kata algoritma berasal dari latinisasi nama seorang ahli matematika sekaligus ahli astrologi, astronomi dan geografi dari Uzbekistan bernama Abu Ja’afar Muhammad Ibnu Musa al-Khuwarizmi (hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de numero Indorum". Pada awalnya kata algorisma adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk menyelesaikan persoalan dengan menggunakan bilangan numerik arab (sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad ke-18, istilah ini berkembang menjadi algoritma, yang mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan.
Akhirnya para ahli sejarah matematika menemukan asal mula kata tersebut. Kata algorism berasal dari nama penulis buku arab yang terkenal, yaitu Abu Ja’afar Muhammad Ibnu Musa al-Khuwarizmi (al-Khuwarizmi dibaca orang barat menjadi algorism).
Al-Khuwarizmi menulis buku yang berjudul Kital al jabar wal-muqabala, yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku ini kita juga memperoleh akar kata “aljabar” (algebra). Perubahan dari kata algorism menjadi algoritm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran –sm beubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa/lumrah, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi “algoritma”.
Pada tahun 1950, kata algoritma perama kali digunakan pada “algoritma Euclidean” (Euclid’s algorithm). Euclid, seorang matematikawan Yunani (lahir pada tahun 350 M), dalam bukunya yang berjudul Element menuliskan langkah-langkah untuk menemukan pembagi bersama terbesar (common greatest divisor atau gcd), dari dua buah bilangan bulat, m dan n (tapi Euclid tidak menyebut metodenya itu sebagai algoritma, baru abad modernlah ornag-orang menybut metodenya itu sebagai “algoritma Euclidean”), Pembagi terbesar dari dua buah bilangan bulat tak-negatif adalah bilangan bulat positif terbesar yang habis membagi kedua bilangan tersebut.
Misalnya, m = 80 dan n = 12
Semua faktor pembagi adalah 1, 2, 4, 5, 8, 10, 16, 20, 40, 80 Dan semua faktor pembagi 12 adalah 1, 2, 3, 4, 6, 12
Langkah-langkah mencari gcd(80,12) dengan algoritma Euclidean sebagai berikut :
80 dibagi 12 hasilnya = 6, sisa = 8
(atau: 80 = 6.12 + 12 dibagi 8 hasilnya = 1, sisa = 4 (atau: 12 = 1.8 + 4) 8 dibagi 4 hasilnya = 2, sisa = 0 (atau: 8 = 4.2 + 0)
Karena pembagian yang terakhir menghasilkan 0, maka sisa pembagian terakhir sebelum 0, yaitu 4, menjadi gcd(80,12). Jadi, gcd(80,12) = gcd(12,8) = gcd(4,0) = 4.
Contoh-contoh algoritma yang sudah dijelaskan di atas memberi dua pesan penting. Pertama, sebuah algoritma harus benar. Kedua, algoritma harus berhenti, dan setelah berhenti,algoritma memberi hasil yang benar.
B.Pengertian Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar. Dalam beberapa konteks,
algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu.
Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.
Desain dan analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan performa dari suatu algoritma dalam menyelesaikan masalah, terlepas dari implementasi algoritma tersebut. Dalam cabang disiplin ini algoritma dipelajari secara abstrak, terlepas dari sistem komputer atau bahasa pemrograman yang digunakan. Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan kriteria yang sama.
Kompleksitas dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah. Secara informal, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki kompleksitas yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi.
C.Ciri – Ciri Algoritma
Menurut Donald E. Knuth dalam bukunya yang berjudul The art of Computer Programming, sebuah algoritma harus mempunyai lima ciri penting:
1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
jika langkah tersebut ditulis “bagilah p dengan 10 buah bilangan bulat positif”.
3. Algoritma memiliki nol atau lebih masukan (input). Maukan ialah besaran yang diberikan kepada algoritma untuk diproses. Algoritma Euclidean mempunyai dua buah masukan, m dan n.
4. Algortima mempunyai nol atau lebih keluaran (output). Keluaran dapat berupa pesan atau besaran yang memiliki hubungan dengan masukan.
5. Algoritma harus sangkil (effective). Setiap langkah harus sederhana shingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.
D.Jenis-jenis Algoritma
Terdapat beragam klasifikasi algoritma dan setiap klasifikasi mempunyai alasan tersendiri. Salah satu cara untuk melakukan klasifikasi jenis-jenis algoritma adalah dengan memperhatikan paradigma dan metode yang digunakan untuk mendesain algoritma tersebut. Beberapa paradigma yang digunakan dalam menyusun suatu algoritma akan dipaparkan dibagian ini. Masing-masing paradigma dapat digunakan dalam banyak algoritma yang berbeda.
Divide and Conquer, paradigma untuk membagi suatu permasalahan besar menjadi permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini dilakukan terus menerus sampai ditemukan bagian masalah kecil yang mudah untuk dipecahkan. Singkatnya menyelesaikan keseluruhan masalah dengan membagi masalah besar dan kemudian
memecahkan permasalahan-permasalahan kecil yang terbentuk.
tumpang tindih . Paradigma ini sekilas terlihat mirip dengan paradigma Divide and Conquer, sama-sama mencoba untuk membagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.
Metode serakah. Sebuah algoritma serakah mirip dengan sebuah Pemrograman dinamik, bedanya jawaban dari submasalah tidak perlu diketahui dalam setiap tahap; dan menggunakan pilihan "serakah" apa yang dilihat terbaik pada saat itu.
E. Pertimbangan dalam pemilihan algoritma adalah:
Dalam memilih dan membuat algoritma, kita harus melakukan pertimbangan dan pemilihan, antara lain:
1. Algoritma haruslah benar.
Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik.
2. kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut.
Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.
Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut.
F. Algoritma Merupakan Jantung Ilmu Informatika
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu computer yang diacu dalam terminologi algoritma. Namun, jangan beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari haripun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan langkah-lankah membuat masakan. Bila langkah-langkahnya tidak logis, tidak dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa manusia, komputer, robot atau alatalat elektronik lainnya. Pemroses melakukan suatu proses dengan melaksanakan atau “mengeksekusi” algoritma yang menjabarkan proses tersebut.
not balok. Karena itu suatu Algoritma harus dinyatakan dalam bentuk yang dapat dimengerti oleh pemroses. Jadi suatu pemroses harus :
1. Mengerti setiap langkah dalam Algoritma
2. Mengerjakan operasi yang bersesuaian dengan langkah tersebut.
BAB III
PENUTUP
Ahli sejarah matematika menemukan bahwa kata algoritma berasal dari latinisasi nama seorang ahli matematika sekaligus ahli astrologi, astronomi dan geografi dari Uzbekistan bernama Abu Ja’afar Muhammad Ibnu Musa al-Khuwarizmi (hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de numero Indorum".
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis.
Ciri – ciri algoritma :
1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
2. Setiap langkah harus didefinisikan dengan tepat dan tidak brarti-dua (ambiguous).
3. Algoritma memiliki nol atau lebih masukan (input). 4. Algortima mempunyai nol atau lebih keluaran (output). 5. Algoritma harus sangkil (effective).
DAFTAR PUSTAKA
Anonim. 2011. http://ilmukomputer.org/2007/02/28/algoritma-matematika/
Anonim. 2011. http://id.wikipedia.org/wiki/Algoritma
Anonim. 2011. http://aim07.wordpress.com/2009/06/19/sejarah-algoritma/
Anonim. 2011. http://ndoware.com/sejarah-algoritma.html
Anonim.2011. http://handzmentallist.blogspot.com/2010/04/sejarah-dan-pengertian-algoritma.html
Anonim. 2011. http://blog.uin-malang.ac.id/faisal/2010/09/06/1-dasar-logika-dan-algoritma/
Anonim.2011. http://riasahirin.wordpress.com/2010/10/30/sejarah-algoritma-dan-pemrograman/