Masalah
Analisa Masalah
Pemecahan
Program
Komputer
Brainware
Software
Hardware
Manusia
Tinjau sebuah masalah sederhana yakni
mempertukarkan isi dari dua buah gelas. Gelas A
berisi air kopi dan gelas B berisi air susu.
Kita ingin mempertukarkan isi kedua gelas itu
sedemikian hingga gelas A akan berisi air susu dan
gelas B berisi air kopi.
Algoritma
Program dlm Bahasa Tingkat Tinggi
Program dlm Bahasa Mesin
Interpretasi
Kompilasi + lingking
Interpretasi oleh CPU
Operasi (baca, tulis, hitung, perbandingan, dsb)
Program berisi urutan langkah-langkah
penyelesaian masalah.
Program ditulis dengan menggunakan bahasa
pemrograman.
Orang yang membuat program disebut
pemrogram (programmer).
Kegiatan merancang dan menulis program
disebut pemrograman.
Definisi
Urutan langkah-langkah untuk memecahkan
masalah
Kamus Besar Bahasa Indonesia:
Algoritma adalah urutan logis pengambilan putusan
untuk pemecahan masalah
Algoritma diwujudkan dalam bentuk Program
Komputer
1.Finiteness
•Jumlah langkah dalam algoritma harus terbatas
2.Definiteness
•Setiap langkah harus didefinisikan secara tepat, tidak boleh
membingungkan (ambiguous)
3.Input
•Sebuah algoritma memiliki nol atau lebih input yang diberikan
kepada algoritma sebelum dijalankan
4.Output
•Sebuah algoritma memiliki satu atau lebih output, yang
biasanya bergantung kepada input
5.Effectiveness
•Setiap algoritma diharapkan miliki sifat efektif
Dasar penyusunan algoritma :
Secara prinsip tidak ada standar baku untuk
menyusun algoritma.
Tiga cara menyusun algoritma :
Bahasa manusia
Pseudocode
Diagram Alir
Buatlah algoritma untuk menghitung Luas Lingkaran !
1.Menggunakan Bahasa Manusia
1.Inputkan nilai jari-jari lingkaran
2.Hitung luas lingkaran menggunakan rumus :
3,14 x jari-jari x jari-jari
3.Tampilkan nilai luas lingkaran
Buatlah algoritma untuk menghitung Luas Lingkaran !
2.Menggunakan Pseudocode
1.Input jari-jari
2.luas 3,14 x jari-jari x jari-jari
3.Output luas
3.Menggunakan Flowchart
Mulai
Masukkan nilai
Jari-jari
Luas 3,14 x jari-jari x jari-jari
Tampilkan Luas
Selesai
Program komputer adalah realisasi
teknis dari sebuah algoritma.
Belajar memprogram
≠
Belajar bahasa pemrograman
Belajar memprogram berarti belajar tentang
metodologi pemecahan masalah, kemudian
menuangkan algoritma pemecahan masalah
dalam suatu notasi algoritmik
Belajar bahasa pemrograman berarti belajar
memakai suatu bahasa pemrograman,
aturan tata bahasanya, instruksinya, tata
cara pengoperasian kompilernya dan
memanfaatkan istruksi tersebut untuk
membuat program yang ditulis dalam bahasa
tersebut.
Belajar memprogram:
pemahaman persoalan, analisis, dan sintesis
Belajar Bahasa Pemrograman :
Belajar memakai suatu bahasa
aturan sintaks (tata bahasa)
Pemecahan Masalah
-Strategi
-Metodologi
-Sistematika
Notasi yang telah
disepakati
Perwujudan atau implementasi algoritma yang
ditulis dalam bahasa pemrograman tertentu
Berdasarkan aplikasi kegunaannya, bahasa
pemrograman dibagi menjadi 2 :
1.Bhs pemrograman bertujuan khusus.
Contoh : Cobol, Fortran, Prolog, Assembly
2.Bhs pemrograman bertujuan umum.
Contoh : Pascal, Basic, C, C++
Berdasarkan bentuk bahasanya, bahasa
pemrogaman dibagi menjadi 2 :
1.Bahasa Tingkat Rendah
Bahasa ini bersifat primitif, sulit dimengerti oleh
manusia. Contoh : Bahasa mesin
2.Bahasa Tingkat Tinggi
Bahasa ini lebih mudah dipahami, lebih
menyerupai bahasa manusia
Contoh : Pascal, Cobol, Basic, Fortran, C, C++
Prosedural (imperatif)
Program = Struktur + Data
mis : Pascal, C, Basic
Object Oriented
data dan instruksi dibungkus menjadi satu, disebut: kelas,
kelas pada saat run-time disebut objek.
mis : C++, Java
Fungsional
konsep pemetaan dan fungsi pada matematika
mis : Matlab
Deklaratif
pendefinisian relasi antar individu yang dinyatakan sebagai
predikat
mis : Prolog
PENDAHULUAN
Konsep pemrograman terstruktur memegang peranan
penting dalam merancang, menyusun, memelihara, dan
mengembangkan suatu program khususnya program aplikasi
yang besar dan komplek.
Konsep ini dikembangkan pertama kali pada tahun 1960-
an oleh Prof. Edsger Djikstra dari Universitas Eindhoven.
Profesor Djikstra mengungkapkan bahaya dari
penggunaan instruksi loncatan pada program (GOTO)
dalam segala bentuk pemrograman.
a.Program : Kata, ekspresi, pernyataan atau kombinasi
yang disusun dan dirangkai menjadi satu kesatuan
prosedur yang berupa urutan langkah untuk
menyelesaikan masalah yang diimplementasikan dengan
menggunakan bahasa pemrograman sehingga dapat
dieksekusi oleh komputer.
b.Bahasa Pemrograman : Prosedure/tata cara penulisan
program, yang disebut dengan syntax dan semantic.
c. Pemrograman :
Proses mengimplementasikan urutan langkah untuk
menyelesaikan suatu masalah dengan menggunakan
suatu bahasa pemrograman.
d. Pemrograman Terstruktur :
Proses mengimplementasikan urutan langkah untuk
menyelesaikan suatu masalah dalam bentuk program
yang memiliki rancang bangun terstruktur dan tidak
berbelit-belit sehingga mudah ditelusuri, dipahami dan
dikembangkan oleh siapa saja.
a.Teknik pemecahan masalahnya tepat dan benar
b.Algoritma pemecahan masalahnya sederhana, standard an efektif
c.Struktur logikanya benar dan mudah dipahami
d.Memiliki 3 (tiga) struktur dasar yaitu :
Sequence structure (struktur urut)
Selection structure (struktur keputusan/kondisi)
Looping structure (struktur perulangan)
e.Menghindari penggunaan statement GOTO (peralihan proses tanpa
syarat tertentu).
f.Membutuhkan biaya testing yang rendah
g.Memiliki dokumen yang baik
h.Membutuhkan biaya perawatan dan pengembangan yang rendah.
a. Standar Teknik Pemecahan Masalah
- Teknik Top-Down
Suatu masalah yang kompleks dibagi-bagi kedalam beberapa
kelompok masalah yang lebih kecil
- Teknik Buttom-Up
Pemecahan masalah dilakukan dengan menggabungkan
prosedur-prosedur yang ada menjadi satu kesatuan program
guna menyelesaikan masalah tersebut.
b. Standar Penyusunan Program
1.Kebenaran logika dan penulisan
2.Waktu minimum untuk penulisan program
3.Kecepatan Maximum eksekusi program
4.Ekspresi penggunaan memori
5.Kemudahan merawat dan mengembangkan program
6.User Friendly
7.Portability
8.Pemrograman Modular
c. Standar Perawatan Program
1. Dokumentasi
Merupakan catatan dari setiap langkah pekerjaan
membuat program yang dilakukan dari awal hingga akhir.
Dokumentasi yang baik akan memberikan informasi yang
cukup memadai sehingga orang lain akan dapat mengerti
dan memahami alur logika program.
2. Penulisan Instruksi
Agar memudahkan proses perawatan program sebaiknya
penulisan program dilakukan dengan cara sebagai berikut :
a. Tulis satu instruksi pada satu baris program
b. Pisahkan modul-modul atau kelompok instruksi dengan
memberikan spasi beberapa baris untuk mempermudah
pembacaan
c. Bedakan bentuk huruf dalam penulisan program, di mana
instruksi ditulis dengan huruf kapital, sedangkan komentar
atau variabel dalam huruf kecil.
d.Berikan tabulasi yang berbeda untuk penulisan
instruksi-instruksi yang berbeda dalam kalang
(loop) atau struktur kondisional.
e.Hindari penggunaan konstanta dalam penulisan
rumus, jika konstanta tersebut mungkin akan
berubah-rubah.
f. Lakukan pembatasan jumlah baris instruksi
setiap modulnya, misalnya 50-70 baris instruksi
permodul, sehingga tidak terlalu panjang.
d. Standar Prosedur
Penggunaan prosedure yang standar akan
memudahkan bagi pengembang sistem/program
dalam mengembangkan sistem/program tersebut
Pemrogram adalah orang yang bekerja menyusun suatu program.
Pemrogram yang baik akan menghasilkan program yang mampu
memberikan solusi yang tepat dan benar.
Pemrogram dapat digolongkan dalam dua jenjang :
a.Amatir
b.Profesional
Untuk menghasilkan program yang baik dibutuhkan pemrogram
yang baik dan berkualitas.
Kriteria pemrogram yang baik adalah :
a.Mampu menyusun pemecahan masalah yang baik
b.Menguasai bahasa pemrograman dengan baik
c.Mampu menulis program dengan teknik yang baik
d.Mampu menyusun program yang baik
e.Dapat bekerja sama dalam suatu tim kerja
f.Dapat bekerja secara efisien dan tepat waktu