" AC MILAN Il Club Piu Titolato al Mondo - CAMPIONI D'ITALIA 2010-2011 | Ale Ale Ale Milan Ale, Forza Lotta Vincerai Non Ti Lasceremo Mai | Forza Milan, Milan Campione, Forza Milan il Milan ole. Forza Milan, vinci per noi, Forza Milan La Sud e Con Te. Ale Ale Ale Forza Milan Ale Ale | Ed i colori che noi portiamo, sono la gloria, sono la gloria, Ed i colori che noi portiamo, sono la gloria, dei Rossone', forza Milan ole', forza Milan ole', forza Milan ole' ole' ole', Milan ! Milan ! Milan ! | Siamo qui, che cantiam, con il cuore, Diavolo vinci, per noi"

Selasa, 17 Mei 2011

ALGORITMA ? What The Hell Is It ?

ALGORITMA yang baik mutlak dimiliki oleh seorang programmer. Algoritma, bab yang dibahas pada hari pertama saya masuk kuliah. Waktu pertama mendengar kata itu, saya cuma bisa plonga plongo, tengok kiri tengok kanan. Jujur walaupun saya masuk perguruan tinggi jurusan Teknik Informatika (Computer Science), saya benar-benar belum punya background tentang programming.

Ok back to topic. Walaupun agak asing didengar tapi ternyata algoritma sangat dekat dengan kehidupan kita sehari-hari. ALGORITMA itu sendiri artinya adalah urutan / langkah-langkah yang logis untuk menyelesaikan suatu masalah. Kata algoritma diambil dari nama seorang ilmuwan Persia Abu Ja’far Mohammed Ibn Musa Al-Khawarizmi, yang menulis buku Al Jabr w’al-muqabala sekitar tahun 825.

Bagaimana Algoritma menelepon di telepon umum :
1.      Mengangkat gagang telepon
2.      Memasukkan koin
3.      Menekan tombol yang dituju
4.      Berbicara dengan orang yang kita telepon
5.      Meletakkan kembali gagang telepon

Coba kita cermati algoritma di atas. Apakah benar setelah mengangkat gagang telepon kita langsung memasukkan koin? Belum tentu. Kita seharusnya mendengar apakah ada nada sambung pada telepon. Jika telepon tersebut rusak atau kabelnya putus tentu anda tidak akan memasukkan koin bukan? Apakah setelah memasukkan koin kita langsung menekan tombol yang dituju? Bagaimana jika koin bergulir keluar dari kotak telepon?

Apa kesimpulan kita terhadap banyaknya pertanyaan yang timbul? Ternyata algoritma tidak hanya terdiri atas langkah menyelesaikan masalah secara berurutan, melainkan juga melibatkan langkah yang berhubungan dengan pemilihan proses berdasarkan kondisi (misal : Jika ada nada sambung maka kita masukkan koin) dan langkah yang berhubungan dengan perulangan (misal : Ulangi memekan tombol sampai telepon diangkat).

Di dalam buku yang saya pelajari, algoritma dibagi menjadi 3 kelompok proses :
1.      Sequence process : Proses secara berurutan
2.      Selection process : Proses pemilihan
3.      Iteration process : Proses perulangan

Syarat algoritma yang baik :
1.      Finiteness : Algoritma harus berakhir setelah melakukan sejumlah proses.
2.      Definiteness : Tidak ambigu, maknanya harus tepat.
3.      Input : Tiap algoritma punya masukan untuk diolah.
4.      Output : Tiap algoritma memberikan hasil atau output.
5.      Effectiveness : Langkah-langkah algoritma dikerjakan dalam waktu yang wajar.



Tidak ada komentar:

Posting Komentar