Tuesday, February 24, 2015

ALGORITMA DAN PEMROGRAMAN

ALGORITMA DAN PEMROGRAMAN

A. Sejarah Algoritma
 Algoritma diambil dari nama penulis buku, yakni Abu Ja’far Muhammad bin Musa Al-Khwarizmi (780-846 M) yang berasal dari Uzbekistan, yang banyak menghasilkan karya dalam bidang matematika,dan juga dalam bidang lainnya seperti musik dan geografi.

B. Definisi Algoritma
Algoritma adalah urutan langkah-langkah yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah (jika ada pemecahannya) dalam rentang waktu tertentu. 
C. Secara Umum Karakteristik atau Syarat Algoritma:
1. Algoritma harus tidak ambigu (unambiguous)
Deskripsi langkah-langkah dalam algoritma harus dan hanya mempunyai tafsiran tunggal. Oleh sebab itu, sebuah bahasa pemrograman seperti Pascal biasa digunakan untuk menuliskan algoritma, sehingga langkah-langkah yang dituliskan hanya mempunyai tafsiran tunggal, terutama menurut komputer.
2. Tingkat kepercayaannya tinggi (realibility) 
Proses yang dihasilkan harus berakurasi tinggi dan benar.
3. Pemrosesan yang efisien (cost rendah)
Proses harus diselesaikan secepat mungkin dan frekuensi kalkulasi yang sependek mungkin.
4. Sifatnya general
Tidak hanya untuk menyelesaikan satu kasus saja, tapi juga untuk kasus lain yang lebih general.
5. Bisa dikembangkan (expandable)
Sesuatu yang dapat kita kembangkan harus lebih jauh berdasarkan perubahan requirement yang ada.
6. Mudah dimengerti 
Siapapun yang melihat, dia pasti bisa memahami algoritma yang kita buat. Susah dimengertinya suatu program akan membuat susah di-maintenance (kelola).
7. Portabilitas yang tinggi (portability) 
Bisa dengan mudah diterapkan di berbagai platform komputer.
8. Precise (tepat, betul, teliti)
Algoritma harus menyatakan urutan langkah-langkahnya . Kapan sebuah langkah atau langkah x itu dilakukan, apakah sebelum langkah y atau sesudahnya, itu harus dinyatakan dengan jelas. Algoritma harus menyatakan dengan jelas kapan berhenti dari sebuah langkah untuk meneruskan ke langkah berikutnya.
9. Algoritma harus pasti (definite)
Apabila serangkaian langkah yang sama dilakukan dua kali maka hasilnya harus selalu sama.
10. Algoritma harus berhingga (finite)
Serangkaian langkah-langkah dalam algoritma harus dapat dilaksanakan pada rentang waktu tertentu.
11. Efektif
Tidak boleh ada perintah yang tidak mungkin dikerjakan oleh pemroses yang akan menjalankannya.
12. Harus terminate
Jalannya suatu algoritma harus ada kriteria berhenti.
13. Output yang dihasilkan tepat.

D. Cara Penulisan Algoritma
Algoritma dapat di tuliskan dengan tiga cara, yaitu :
1. Menggunakan bahasa natural (uraian deskriptif) 
Cara yang digunakan yaitu dengan mendeskripsikan langkah-langkah yang akan dilakukan dalam mencapai suatu tujuan, dengan menggunakan bahasa yang biasa digunakan sehari-hari.
2. Menggunakan Flow Chart (diagram alir)
Flowchart merupakan sebuah gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan symbol, sehingga setiap simbol menggambarkan suatu proses tertentu. Sedangkan antara proses digambarkan dengan garis penghubung. 
Flowchart juga berfungsi dalam mendesain dan menggambarkan suatu program
Terdapat beberapa notasi dasar penggambaran diagram alir seperti:
a) Simbol terminal  
Digunakan untuk menggambarkan awal (mulai) dan akhir (selesai) sebuah diagram alir. 
b) Simbol input/output
Digunakan untuk menggambarkan pembacaan data (input) dan untuk menampilkan daya (output).
c) Simbol process
Digunakan untuk menggambarkan proses dalam diagram alir.
d) Simbol decision
 
Mempunyai dua panah keluar (dua nilai keluaran) yang masih bernilai true (ya, benar) dan false (tidak, salah) digunakan untuk pengujian sebuah kondisi.
3. Menggunakan  Pseudocode
Algoritma dapat dituliskan dalam kode-kode yang disepakati dan mempunyai arti tertentu. Kode-kode ini dapat dikembangkan sendiri , asalkan arti dari setiap kode disepakati bersama. Kode-kode seperti ini disebut dengan pseudocode.

E. Struktur Penulisan Algoritma
Setiap Algoritma terdiri atas tiga bagian yaitu :
1. Judul (Header)
Judul merupakan bagian teks algoritma yang digunakan sebagai tempat mendefinisikan nama dengan menentukan apakah teks tersebut adalah program, prosedur, fungsi. 
2. Kamus (deklarasi)
Kamus merupakan bagian teks algoritma sebagai tempat untuk mendefinisikan:
a. Nama type
b. Nama konstanta
c. Nama variable
d. Nama fungsi
e. Nama prosedur. 
3. Algoritma (deskripsi)
Deskripsi merupakan inti dari program untuk menyelesaikan masalah, yang berisi instruksi-instruksi untuk pemecahan masalah dengan menggunakan notasi pseudocode.

F. Perbedaan Algoritma dan Program
Program adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program), sedangkan algoritma adalah metode dan tahapan Sistematis dalam program.
Program merupakan realisasi dari algoritma. 
Program = Algoritma + Bahasa (Struktur Data).
Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa dikatakan bahwa program merupakan suatu implementasi dari bahasa pemrograman. Dalam sebuah program, struktur data dan algoritma berhubungan sangat erat. Algoritma tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, begitu juga sebaliknya. Agar dapat menyelesaikan persoalan programmer maka :
1. Bisa mendesain algoritma dengan menjelaskan bagaimana persoalan tersebut diselesaikan.
2. Menggunakan suatu Bahasa Pemrograman yang sesuai untuk menulis atau merubah algoritma menjadi suatu program.
3. Menjalankan program dengan menggunakan komputer.

G. Langkah-langkah pemrograman
1. Mendefinisikan masalah
Apabila masalah yang ada tidak dinyatakan dengan baik dan jelas ,maka kemungkinan tidak ditemukan solusinya. Masukan dan keluaran juga harus dinyatakan dengan jelas.
2. Memilih garis besar (outline) pemecahan
Cara pemecahan ini menggunakan top-down design. Mungkin garis besar pemecahan pertama yang di temukan adalah yang paling baik. Namun apabila ditemukan cara pemecahan yang lebih baik, maka seharusnya cara itulah yang dipilih.
3. Menerjemahkan garis besar tersebut menjadi langkah-langkah yang lebih rinci atau algoritma. Langkah ini dilakukan dengan memperinci langkah-langkah yang telah ditentukan dalam garis besar pemecahan yang didapatkan dari langkah sebelumnya.
4. Setelah algoritma dipilih , langkah selanjutnya adalah menerjemahkan algoritma ke dalam bahasa pemrograman. Proses penerjemahan algoritma ke dalam bahasa pemrograman disebut dengan pengkodean (coding), sedangkan statemen-statemen yang dituliskan dalam bahasa pemrograman disebut dengan kode (code) atau program. Pengkodean tidak sama dengan pemrograman (programming): pengkodean hanya salah satu langkah dalam pemrograman.
5. Setelah algoritma dikodekan atau program sudah ditulis, program tersebut dapat diuji untuk menemukan kesalahan yang mungkin terjadi. Pengujian dilakukan dengan memeriksa kemungkinan kasus yang mungkin terjadi pada program tersebut. Proses ini disebut dengan debugging.
6. Program yang baik adalah program yang benar (correct), jelas (clear), dan efisien (efficient)


SUMBER : https://andikafisma.wordpress.com/algoritma-dan-pemrograman/

RAMADHANIATI SARI
NIM : D1041141016

No comments:

Post a Comment