PROSEDUR & PARAMETER
PROSEDUR
Prosedur -
-
-
Merupakan sekumpulan statement yang dibungkus menjadi satu untuk melakukan suatu tugas tertentu Merupakan sebuah blok program yang didalamnya, dapat dituliskan kode program Pada procedure tidak ada nilai yang dikembalikan.
Prosedur Kegunaan yang diperoleh dari pemakai: Mengelompokkan
statement yang sering
dijalankan Memudahkan perawatan dan pengembangan program Program terbagi-bagi menjadi komponenkomponen yang mandiri. Dengan demikian program menjadi lebih terstruktur sehingga pencarian kesalahan dapat lebih mudah dilakukan Prosedur yang terletak dalam suatu program dapat dipakai berulang-ulang sesuai dengan kebutuhan
Prosedur Macam : 1. User Defined Procedure Prosedur yang dideklarasikan oleh user
2. Event Procedure Prosedur yang akan dijalankan bila suatu kontrol atau komponen dikenakan suatu event tertentu
PROCEDURE Macam-macam procedure yang dikenal VB6, adalah : • Sub procedure, yaitu prosedur yang tidak dapat menghasilkan nilai • Function procedure, yang bisa menghasilkan nilai • Property procedure yang bisa menghasilkan nilai dan penugasan nilai tertentu serta mengatur objek
Cara Kerja suatu procedure Procedure A Sub A ……….. ……….. Call B() ……….. ……….. End Sub
Procedure B Sub B ……….. ……….. ……….. ……….. ……….. End Sub
Prosedur 1. User Defined Procedure Ada dua macam : a. Sub Procedure - Prosedur yang tidak memilki return value - Deklarasi : Public/Private sub namaprosedur[(parameter)] ……… end sub
- Contoh : private sub halo() msgbox “Halo Teman-Teman !!!!!!” end sub
Contoh : Sub Prosedur 1
Contoh : Sub Prosedur
Prosedur
Prosedur yang dideklarasikan dengan keyword private hanya bisa dipanggil oleh prosedur lain dalam modul tersebut
Prosedur yang dideklarasikan dengan keyword public bisa dipanggil oleh prosedur lain yang berada diluar modul tersebut Contoh : di form1: public sub hallo(Halo2 as string) msgbox Halo2 end sub di form2: private sub command1_click() form1.hallo(“helloworld”) end sub
Contoh : Sub Prosedur 1
Contoh : Sub Prosedur
Contoh : Sub Prosedur 2
Contoh : Sub Prosedur 2
Prosedur Memanggil prosedur : a. Menyebut nama prosedur b. Menggunakan perintah CALL
Untuk keluar dari prosedur gunakan keyword “exit sub”
Prosedur Menunjukkan letak Procedure pada Code Editor
Contoh :
TextBox
Comman dButton
Output
View Code 'General procedure Sub kuadrat(nilai As Integer) Dim kuadrat As Integer kuadrat = nilai * nilai MsgBox "Hasil Kuadrat = " & kuadrat, vbOKOnly, " Kuadrat"
End Sub Private Sub Command1_Click() Dim angka As Integer angka = Text1.Text 'Memanggil general procedure Call kuadrat(angka) End Sub
Function Procedure Contoh
Desig n
Output
View Code Option Explicit Private Sub Form_Click() Dim Panjang, Lebar Panjang = InputBox("Panjang Segiempat")
Lebar = InputBox("Lebar Segiempat") Print " Panjang Segiempat : " & Panjang Print " Lebar Segiempat : " & Lebar Print " Luas Segiempat : "; Print Luas(Panjang, Lebar) End Sub Function Luas(P, L) Luas = P * L End Function
Prosedur b. Function Procedure - Prosedur yang dapat mengembalikan nilai - Deklarasi : [private/public] function namafungsi[(parameter as type)] …………….. end function
- Contoh : private function jumlah(x as integer, y as integer) jumlah = x + y end function Catatan: supaya bisa mengembalikan nilai, nama variabel = nama fungsi
Prosedur
Memanggil function a. Menggunakan nama fungsi diikuti parameter Contoh : x = jumlah(3,7) b. Menggunakan statement CALL atau PRINT diikuti nama fungsi dan parameternya Contoh : Print jumlah(3,7) Untuk keluar dari function gunakan keyword “exit function” Function Prosedur yang dideklarasikan dengan keyword private hanya bisa dipanggil oleh prosedur lain dalam modul tersebut Function Prosedur yang dideklarasikan dengan keyword public bida dipanggil oleh prosedur lain yang berada diluar modul tersebut
Function Procedure Contoh
Desig n
View Code Option Explicit Private Sub Form_Click() Dim Panjang, Lebar Panjang = InputBox("Panjang Segiempat") Lebar = InputBox("Lebar Segiempat") Print " Panjang Segiempat : "& Panjang Print " Lebar Segiempat : " & Lebar Print " Luas Segiempat : "; Print Luas(Panjang, Lebar) End Sub Function Luas(P, L) Luas = P * L End Function
Output
Prosedur 2. Event Procedure - Prosedur yang dijalankan berdasarkan event-event tertentu - Contoh : private sub cmdsave_click() ……… end sub
Event Procedure Contoh :
Design
View Code Option Explicit Private Sub Command1_Click() Static I As Single For I = 1 To 8 Step 0.5 Print " Perulangan For ke "; I If I = 4.5 Then MsgBox "Perulangan dihentikan pada I = 4.5 ", vbExclamation, "Harap Maklum" Exit For End If Next I
Cls End Sub Output
Parameter -
-
Disebut juga argument Merupakan variabel yang dibutuhkan oleh suatu fungsi Dua cara mengirimkan parameter : a. By Value b. By Reference
Parameter -
-
Disebut juga argument Merupakan variabel yang dibutuhkan oleh suatu fungsi Dua cara mengirimkan parameter : a. By Value b. By Reference
Parameter a. Passing Parameter by value Merupakan passing parameter dimana yang dikirim adalah nilainya - Contoh : Private sub tes(byval x as integer) x = 10 --------- parameter formal End sub Private sub panggil() Dim a as integer a = 1 --------- parameter aktual tes a text1.text = a End sub
Parameter b. Passing parameter by reference
Merupakan passing parameter dimana yang dikirimkan adalah alamat dari variabel Parameter aktual akan berubah jika nilai parameter formal diubah Menggunakan keyword “byref” atau tidak menuliskan apapun (karena defaultnya adalah byref) - Contoh : Seperti contoh didepan hanya diganti dengan “byref”
Kerjakan Praktikum 07 Ada 7 Form hasilnya ada 12 Form 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Fachmi (7) 1 , 3, 5, 9 Risza (18) 2 , 4, 6, 10 Basyar (6) 1, 5 , 7, 9 Ageng (4) 2, 6 , 8, 10 Rufianus (15) 1, 5 , 8, 9 Jeffry (12) 2, 6 , 7, 10 Achmad F (8) 1 , 4, 5, 9 Asep (9) 2 , 3, 6, 10 Een (6/10) 1 , 4, 5, 9 Ibnu (16) 2, 6 , 7, 10 Gery (13) 1, 5, 8, 9 Nina (14) 2 , 3, 6, 10 Fify (11) 1, 5, 8, 9 Aldo (17) 2, 6, 7, 10 Setiabudi (19) 1 , 4, 5, 9 Riesty (2) 2, 3, 6, 10 Tiara (20) 1, 5, 8, 9 Ardiansyah (5) 2, 6, 7, 10 Izzah (21) 1, 3, 5, 9 Tierza (1) 2, 4, 6, 10 Soraya (3) 1, 5, 7, 9