PENGERTIAN DASAR ALGORITMA

Senin, Desember 15, 2008 | | Comments

Dalam kehidupan nyata banyak masalah yang timbul, terhadap masalah tersebut perlu dicarikan pemecahan masalah, sehingga memberikan solusi yang benar. Bila masalah tersebut dpecahkan dengan komputer maka disebut Algoritma. Secara umum algoritma adalah sejumlah langkah komputasi yang mengubah masukkan (input) menjadi keluaran (output) yang benar.

Algoritma yang masih berupa logika pemecahn selanjutnya diubah menjadi program computer (source code) menurut bahasa pemogarman tertentu, selanjutnya source code ini perlu di kompilasi oleh penejemah (compiler, interpreter), menjadi kode – kode yang dapat di mengerti dan dijalankan oleh computer. Kode ini disebut executable. Kata algoritma berasal dari nama Abu Ja’far Mohammed Ibn Musa al-Khowarizmi seorang ilmuwan Persia yang menulis buku bejudul kitab al jabr a’al-muqabala (rules of restoration and reduction). Pada Merriam-Webster’s Collegiate Dictionary isilah algorithm diartikan sebagai prosedur atau langkah demi langkah untuk memecahkan masalah atau menyelesaikan suatu tugas khususnya dalam menggunakan computer, dalam kamus besar bahasa Indonesia mendefinisikan algoritma sebagai urutan logis pengambilan keputusan untuk pemecahan masalah.

Syarat algoritma menurut Donal E.Knuth sebuah algoritma harus memenuhi syarat,
Finiteness, Algoritma harus berakhir (terminate) setelah mlakukan sejumlah langkah proses.

Definitenes, Setiap langkah algotritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda (ambigious). Karena itu cara yang paling tepat dalam menuliskan algoritma adalah dengan menggunakan formal language (bahasa pemograman computer.

Input, setiap algoritma memerlukan data sebagai masukkan untuk diolah Output, setiap algoritma memberikan satu atau beberapa hasil keluaran. Effectiveness, langkah-langkah algoritma dikerjakan dalam waktu yang wajar.

Jenis Proses Algoritma
Langkah yang membentuk algoritma dibagi menjadi tiga kelompok proses
Sequence proses, instruksi kedua dikerjakan setelah instruksi pertama , setelah itu instruksi ketiga baru dikerjakan, instruksi dikerjakan mulai dari instruksi pertama sampai instruksi terakhir.
Selection process, suatu instruksi adakalnya baru boleh dikerjakan apabila memenuhi persyaratan tertetu.
Iteration process, suatu instruksi adakalanya perlu dikerjakan berulang-ulang selama sekian kali, atau selama kondisi masih terpenuhi.
Selain ketiga proses algoritma pada parallel programming terdapat Concurrent Process yang memungkinkan beberapa instruksi dikerjakan secara bersamaan

Tahapan Algoritma, dan penulisan program
Proses pemecahan masalah dengan algoritma tertentu hingga menjadi program dapat dibagi sembilan tahap.

Mendefinisikan masalah. Masalah yang ingin depacahkan harus jelas lingkupnya.
membuat model, yang disebut membuat model adalah bentuk matematis yang dapat digunakan untuk memecahkan masalah, apakah harus dilakukan pengurutan data, apakah menggunakan perhitungan kambinatorik, dan sebagainya.
merancang algoritma, apa masukkanya, bagaimana rincian prosessnya, apa keluaranya.
menulis program, ubah algoritma menjadi program (source code) sesuai dengan bahasa pemograman.
mengubah source code menjadi executable code melalui proses compiling.
memeriksa hasil compiling jika salah kembali ke tahap menulis program.
menjalankan program (run) untuk diuji kebenarannya menggunakan berbagai data.
memperbaiki kesalahan.
mendokumentasikan program bila sudah benar.

PRINSIP PEMOGRAMAN
Tentukan masalah sebenarnya, kesulitan terbesar dalam menuliskan program yang besar bukan dalam menentukan tujuan pemograman, atau dalam mencari cara menetukan metode yang tepat untuk memenuhi tujuan tersebut. Masalah pertama dalam menyelesaikan program besar adalah apa masalah yang sesungguhnya, tujuan yang samara, pertanyaan yang saling bertentangan, harus diterjemahkan dalam formulasi yang tepat.

Source : andri-run.blogspot.com