Selasa, 15 Februari 2011

ALGORITMA DAN PEMPROGRAMAN

ALGORITMA DAN PEMPROGRAMAN

PENGERTIAN ALGORITMA
Algoritma adalah kumpulan urutan perintah yang menentukan operasi-operasi tertentu yang diperlukan untuk menyelesaikan suatu masalah ataupun mengerjakan suatu tugas tertentu. Algoritma merupakan urutan langkah instruksi yang logis. Setiap langkah instruksi mengerjakan suatu tindakan aksi. Apabila suatu aksi dilaksanakan, maka operasi atau sejumlah operasi yang bersesuaian dengan aksi itu dikerjakan oleh pemroses. Bila data yang digunakan benar, maka algoritma akan selalu berhenti dengan memberikan hasil yang benar pula.
Pembuatan algoritma harus selalu dikaitkan dengan :
a. kebenaran algoritma, yakni bila program selesai maka hasilnya juga benar
b. kompleksitas, lama dan jumlah waktu proses dan penggunaan memori.
ciri algoritma
1. tepat sasaran
2. fleksibel dan portable
3. bersih dari kesalahan system ataupun logika
4. murah dan efisien
5. cepat waktu
6. didokumentasikan

Diagram Alur sering digunakan untuk menggambarkan sebuah algoritma.
Dalam matematika dan komputasi, algoritma merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap dari awal hingga akhir. Masalah tersebut dapat berupa apa saja, dengan catatan untuk setiap masalah, ada kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, dalam hal ini berbeda dengan heuristik. 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.
Sejarah istilah "algoritma"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.

PENGERTIAN PEMPROGRAMAN

•Function:Bahasa pemrograman adalah bahasa yang digunakan untuk menulis program komputer, dimana dapat menginstruksikan komputer untuk melakukan seperti komputasi dan mengorganisasikan aliran kontrol antar perangkat yang ada.
•Target:Bahasa pemrograman berbeda dengan bahasa alami. Bahasa alami digunakan untuk berinteraksi antar manusia, sedangkan bahasa pemrograman digunakan untuk berkomunikasi antara manusia dengan komputer. Target bahasa pemrograman berbeda-beda. Misalnya Postscript adalah bahasa yang ditargetkan untuk mengkontrol printer dan tampilan.
•Constructs:Bahasa pemrograman berisi susunan definisi dan manipulasi struktur data dan pengkontrolan alir eksekusi program.
•Expressive power:Bahasa pemrograman adalah bahasa yang mengekspresikan kemampuan komputasinya berdasarkan suatu algoritma tertentu.


Kriteria Bahasa Pemrograman yang baik

•Clarity, simplicity, dan unity
•Sesuai dengan tujuan pembuatannya
•Mendukung abstraksi
•Dukungan IDE
•Portabilitas
•Biaya minimum: biaya eksekusi, biaya translasi, biaya penciptaan, testing, biaya pemeliharaan

Dasar Pengelompokkan Bahasa Pemrograman
•Jika sumber berasal dari bahasa alamimaka konstruksi bahasanya akan mirip dengan arti sebenarnya.
•Hal itu tentu akan mempermudah pemrogram untuk memprogram, khususnya bagi yang belum berpengalaman.
•Kadang dapat menjadi ambigu, karena kadang banyak bahasa alami yang memiliki arti banyak.
•Contoh: SQL.
•Jika sumber berasal dari matematika maka bahasa akan menjadi sangat logis, matematis, dan penuh dengan konsep-konsep.
•Contoh: MATLAB, SciLab, MathCad
•Jika sumber berasal dari bahasa pemrograman yang sudah ada, maka pemrogram akan lebih mudah menggunakannya, terutama bila bahasa yang dibentuk berasal dari bahasa yang sudah sangat terkenal.
•Perlu juga hati-hati karena bahasa yang sudah adapun kadang masih memiliki kekurangan/kesalahan yang serius.
•Contoh: Java mengadopsi beberapa bahasa, seperti C, C++.
Biasanya bahasa yang lebih baru harus menambah fitur baru yang lebih bagus dan mengeliminasi kesalahan/kekurangan.



REFERENSI :
id.shvoong.com › Ilmu Sosial › Studi Komunikasi/Media
arisalgoritma.blogspot.com/2008/.../pengertian-algoritma.html
http://lecturer.ukdw.ac.id/anton/download/KOMPILER-Modul2.pdf

Tidak ada komentar:

Posting Komentar