Algoritma & Pemrograman
A. Teori algoritma
• “Suatu himpunan hingga
Intruksi yang secara jelas memperinci langkah-langkah proses pelaksanaan
pemecahan suatu masalah.
• Himpunan intruksi yang
dimaksud harus dapat dilaksanakan secara mekanik (dapat dibuat program
komputernya).
• Pembuatan dan
perancangan algoritma serta penentuan struktur data yang tepat adalah bagian
yang sangat rawan.
• Merupakan jantung ilmu
komputer atau informatika Lebih jauh, terdapat beberapa pengertian dalam
masalah Algoritma :
• PROSEDUR, yaitu Himpunan hingga intruksi yang bersifat diskrit,
jelas serta dapat dijalankan secara mekanik.
• SEMI ALGORITMA, yaitu Prosedur yang mampu menghasilkan solusi,
bila solusinya ada dan berhenti.
• ALGORITMA, yaitu Semi Algoritma yang mampu mendeteksi tidak
adanya solusi, bila solusi memang tidak ada dan mampu pula berhenti
• Contoh :
Penyelesaian komputasi akar bulat positif dari suatu bilangan
bulat
positif A.
Langkah penyelesaianya :
1) Baca A
2) Masukkan X sama dengan 1
3) Hitung Y yang besarnya X.X
4) Jika Y sama dengan A, maka cetak X sebagai akar dari A,
selesai.
5) Tambahkan X dengan 1
6) Pergi ke langkah 3
7)
Bentuk Program dalam BASIC :
INPUT A
X = 1
Y = X*X
IF Y = A THEN PRINT X :
END.
X = X + 1
GOTO 30
Jika A = 4 maka ada
SOLUSI
Jika A= 5 maka tidak
ada solusi & Looping
KESIMPULAN
:
•
Bersifat mekanik
•
Dapat memberikan solusi jika ada dan mampu berhenti.
•
Tidak dapat memberikan keputusan jika solusi tidak ada.
Jadi program diatas
disebut : SEMI ALGORITMA
•
Sebuah semi algoritma selalu dapat berubah menjadi algoritma dengan mengubah
beberapa langkah yang ada.
•
Solusi Program di atas : Tambahkan Intruksi
Jika Y > A cetak “Tidak Ada Akar “ : End
•
Persoalan : Dimana letak intruksi
tambahan tersebut ?????
Sifat – sifat algoritma
yang baik:
1)
Banyak langkah hingga
2)
Tidak ada keragu-raguan dalam setiap langkahnya.
3)
Batasan dari rangkaian proses jelas.
4)
Batasan input dan output jelas.
5)
Batasan ruang lingkupnya jelas.
Belajar
memprogram ≠ belajar bahasa pemrograman
•
Belajar memprogram :
-
belajar tentang strategi pemecahan masalah, metodologi dan
sistematika
pemecahan masalah , Menuangkannya dalam suatu notasi
tertentu
yang mudah dibaca, dipahami dan disepakati bersama.
-
Bersifat pemahaman persoalan, analisis dan sintesis
-Titik berat : designer
program
Produk yang
dihasilkan pemrogram
•
Program dengan rancangan yang baik (metodologis, sistematis)
•
Dapat dieksekusi oleh mesin
•
Berfungsi dengan benar
•
Sanggup melayani segala kemungkinan masukan
•
Disertai dokumentasi
•
Belajar Bahasa Pemrograman
•
Belajar memakai suatu bahasa pemrograman, aturan sintaks, tatacara untuk
memanfaatkan instruksi yang spesifik untuk setiap bahasa
•
Titik berat : coder
Penyajian Algoritma
•
Natural Language
•
Flowchart
•
Pseudo-code
•
Diagram blok struktur program
•
Diagram warnier
•
Tabel keputusan dan pohon keputusan
Tidak ada komentar:
Posting Komentar