pertemuan8 pemrograman -...
TRANSCRIPT
Pertemuan 8Pemrograman
Dokumentasi
• Flowchart:– Lambang, simbol, gambar– Arah panah
• Pseudo code– Uraian sistematis dengan bahasa biasa
Program Control Structure
• Sequence structure• Branch structure• Loop structure
Sequence
• Instruksi dikerjakan secara berurutan.– dari atas ke bawah
step Instruksi
1 Input jmlBrg, hrgSat
2 harga ← jmlBrg x hrgSat
3 Print harga
Contoh Sequence (1)
• Program akan dikerjakan dengan input:– 2, 1500
step Variabel OutputjmlBrg hrgSat harga
step Instruksi
1 Input jmlBrg, hrgSat
2 harga← jmlBrg x hrgSat
3 Print harga
Contoh Sequence (2)
• Mulai dengan langkah-1:– Input 2, 1500
step Instruksi
1 Input jmlBrg, hrgSat
2 harga← jmlBrg x hrgSat
3 Print harga
step Variabel OutputjmlBrg hrgSat harga
1 2 1500
Contoh Sequence (3)
• Langkah-2:– Hitung perkalian, simpan
hasilnya di variabel harga
step Instruksi
1 Input jmlBrg, hrgSat
2 harga← jmlBrg x hrgSat
3 Print harga
step Variabel OutputjmlBrg hrgSat harga
1 2 15002 2 1500 3000
Contoh Sequence (4)
• Langkah-3:– Tampilkan isi
variabel harga
step Instruksi
1 Input jmlBrg, hrgSat
2 harga← jmlBrg x hrgSat
3 Print harga
step Variabel OutputjmlBrg hrgSat harga
1 2 15002 2 1500 30003 2 1500 3000 3000
Contoh Branch (0)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga <= 90% x jmlBrg x hrgSat
4 ELSE
5 harga <= jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step
OutputjmlBrg hrgSat harga
Contoh Branch (1)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga← 90% x jmlBrg x hrgSat
4 ELSE
5 harga ← jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step
OutputjmlBrg hrgSat harga
1 2 1500 2
Contoh Branch (2)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga← 90% x jmlBrg x hrgSat
4 ELSE
5 harga ← jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step
OutputjmlBrg hrgSat harga
1 2 1500 22 2 1500 5
Contoh Branch (3)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga ← 90% x jmlBrg x hrgSat
4 ELSE
5 harga ← jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step OutputjmlBrg hrgSat harga
1 2 1500 2
2 2 1500 5
5 2 1500 3000 6
Contoh Branch (4)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga ← 90% x jmlBrg x hrgSat
4 ELSE
5 harga ← jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step OutputjmlBrg hrgSat harga
1 2 1500 2
2 2 1500 5
5 2 1500 3000 6
6 2 1500 3000 7
Contoh Branch (5)
step Instruksi
1 Input jmlBrg, hrgSat
2 IF jmlBrg lebih besar dari 100 THEN
3 harga ← 90% x jmlBrg x hrgSat
4 ELSE
5 harga ← jmlBrg x hrgSat
6 ENDIF
7 Print harga
step Variabel Next step OutputjmlBrg hrgSat harga
1 2 1500 2
2 2 1500 5
5 2 1500 3000 6
6 2 1500 3000 7
7 2 1500 3000 selesai 3000
Contoh Loop (0)
• Akan dijalankan dengan input– 2, 1500– 6, 100– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step Output
jmlBrg hrgSat harga
Contoh Loop (1)
• Input pertama– 2, 1500
• Input berikutnya– 6, 100– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step Output
jmlBrg hrgSat harga
1 2 1500 2
Contoh Loop (2)
• Input berikutnya– 6, 100– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
Contoh Loop (3)
• Input berikutnya– 6, 100– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step
Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
Contoh Loop (4)
• Input sekarang– 6, 100
• Input berikutnya– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step
Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
Contoh Loop (5)
• Input berikutnya– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step
Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2
Contoh Loop (6)
• Input berikutnya– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step
OutputjmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2 Tidak boleh kurang dari 10
2 6 100 3 Tidak boleh kurang dari 10
Contoh Loop (7)
• Input berikutnya– 11, 2000
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2 Tidak boleh kurang dari 10
2 6 100 3 Tidak boleh kurang dari 10
3 6 100 4 Tidak boleh kurang dari 10
Contoh Loop (8)
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
step Variabel Next step Output
jmlBrg hrgSat harga
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2 Tidak boleh kurang dari 10
2 6 100 3 Tidak boleh kurang dari 10
3 6 100 4 Tidak boleh kurang dari 10
4 11 2000 5 Tidak boleh kurang dari 10
Contoh Loop (9)
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
Step jmlBrg hrgSat harga Next step Output
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2 Tidak boleh kurang dari 10
2 6 100 3 Tidak boleh kurang dari 10
3 6 100 4 Tidak boleh kurang dari 10
4 11 2000 5 Tidak boleh kurang dari 10
5 11 2000 2 Tidak boleh kurang dari 10
Contoh Loop (10)
step Instruksi
1 Input jmlBrg, hrgSat
2 WHILE jmlBrg lebih kecil dari 10
3 Print ‘Tidak boleh kurang dari 10’
4 Input jmlBrg, hrgSat
5 END REPEAT
Step jmlBrg hrgSat harga Next step Output
1 2 1500 2
2 2 1500 3
3 2 1500 4 Tidak boleh kurang dari 10
4 6 100 5 Tidak boleh kurang dari 10
5 6 100 2 Tidak boleh kurang dari 10
2 6 100 3 Tidak boleh kurang dari 10
3 6 100 4 Tidak boleh kurang dari 10
4 11 2000 5 Tidak boleh kurang dari 10
5 11 2000 2 Tidak boleh kurang dari 10
2 11 2000 6
Kesalahan
• Syntax : tata bahasa– Diinginkan: IF a > b THEN– Tertulis : IF a -> b THEN
• Logical : algoritma– Diinginkan: INPUT harga– Tertulis : INPUT jumlah
• Numerical : perhitungan– Original data– Truncation– Round off– Propagated
Kesalahan
• Syntax : tata bahasa• Logical : algoritma• Numerical : perhitungan
– Original data• Misal, input harga, seharusnya 5000• Terrekam: 3999
– Truncation• Misal, pi = 3,1415926535897932384626433832795• Kapasitas memory hanya merekam pi=3,1415
– Round off• Misal, pembulatan pi=3,14159 ... menjadi pi=3,1416
– Propagated
Bahasa Pemrograman
• Procedure oriented– Procedure : sekumpulan langkah– Function, routine, subroutine– Contoh: pascal, C, basic– Tools sofware: Tubo pascal, Tubo C, Visual
C, Turbo basic, visual basic• Object oriented programming (OOP)
– Contoh: java, C++– Tools software: netbean, Turbo J, Vj/c++
Bahasa Pemrograman
• Procedure oriented• Object oriented programming (OOP), konsep:
– Class : user-defined type, object template, meta-object, package, module, concept
• Komponen class– (class) Properties / Attributes– (class) Method / behaviour
• Inheritance : menuliskan class baru berdasarkan class yang sudah ada.
– subclass– superclass
– Object : class instance• encapsulation
– polymorphism
Bahasa Pemrograman
• Procedure oriented• Object oriented programming (OOP), konsep:
– Class : user-defined type, object template, meta-object, package, module, concept – Object : class instance – (object) Properties / Attributes : field, slot, instance variable, data member – (object) Method : selector, handler, message handler, feature, member function, operation,
package operation – (object) Event : object method that is activated by event. – superclass : parent class – subclass : child class, derived class – Objects memiliki sifat umum:– inheritance : subclassing, class specialization, derivation, semua karakteristik sebuah class
akan dimiliki oleh class lain yang dibuat-berdasarkan (diturunkan) class tersebut. – encapsulation: sebuah object merupakan unit yang berdiri sendiri; object mencakup data
dan instruksi yang terkait; property, attribute, data dalam object memiliki privacy. – polymorphism: setiap object memahami dan melaksanakan perintah-perintah yang
diterimanya, sesuai dengan method dan property object itu sendiri.
Catatan: