A. Kode Program B

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 12

A.

Kode Program B
Option Compare Database
Option Explicit

Private Sub cmd_hitung_Click()
Call HitungRerata
End Sub

Private Sub Command10_Click()
Call KosongkanData
End Sub

Private Sub Form_Open(Cancel As Integer)
Call KosongkanData
End Sub

Private Sub txt_a_LostFocus()
If Len(txt_a) > 0 Then
Call MasukkanData
txt_a = ""
End If
End Sub

Sub KosongkanData()
txt_a = ""
txt_i = ""
txt_jum = ""
txt_rata = ""
lst_data.RowSource = ""
txt_a.SetFocus
End Sub

Sub MasukkanData()
lst_data.AddItem Val(txt_a)
End Sub

Sub HitungRerata()
Dim a As Integer
Dim i As Integer
Dim jum As Integer
Dim rata As Single
Dim Data As Long

a = Val(txt_a)
'inisialisasi
i = 0
jum = 0

For i = 0 To lst_data.ListCount - 1
Data = Val(lst_data.Column(0, i))
jum = jum + Data
rata = jum / lst_data.ListCount

Debug.Print i & " : " & Data & " -> (" & jum & " / " & i & ")= " & rata
Next i

txt_i = i
txt_jum = jum
txt_rata = rata
End Sub
B. Kode Program C
Option Compare Database
Option Explicit

Private Sub txt_a_LostFocus()

Dim a As Integer
Dim h As Long
Dim hasil As Long

a = Val(txt_a)

h = Faktorial(a) 'ini variabel pengumpul nilai

lbl_hasil.Caption = "faktorial (" & a & "),adalah : " & h

Call hitungFaktorial(a, hasil)
MsgBox "ini hasil dari pemanggilan SUB: " & hasil

End Sub

Function Faktorial(n As Integer) As Long
Dim i As Integer
Dim h As Long

'inisialisasi
h = 1

'perulangan
For i = 1 To n
h = h * i
Debug.Print i & " -- " & h
Next i

Faktorial = h

End Function

Sub hitungFaktorial(n As Integer, h As Long)
Dim i As Integer

'inisialisasi
h = 1

'perulangan
For i = 1 To n
h = h * i
Debug.Print i & " -- " & h
Next i

'faktorial = h

End Sub
C. Kode Program D
Option Compare Database
Option Explicit

Private Sub txt_b_LostFocus()
Dim a, b, c As Integer
Dim sisa As Integer

a = Val(txt_a)
b = Val(txt_b)

sisa = sisabagi(a, b, c)
lbl_hasil.Caption = a & " dibagi " & b & " = " & c & " sisa " & sisa


End Sub
Function sisabagi(a, b, c As Integer) As Integer
'm akan menerima data a dari program utama
'n akan menerima data b dari program utama
'mulailah menulis koding
Dim i, s As Integer

'inisialisasi
i = 0
s = a

Do While s >= b
s = s - b
i = i + 1
c = a / b
Debug.Print i & " - " & s
Loop

sisabagi = s 'ini mengisikan hasil perhitungan ke nama fungsi

End Function

Sub hitungsisabagi(a As Integer, b As Integer)
Dim i As Integer
Dim s As Integer

i = 0
s = a

Do While s >= b
s = s - b
i = i + 1
c = a / b
Debug.Print i & " -- " & s
Loop

End Sub


Gambar form view sisa bagi

D. Kode Program E
Option Compare Database
Option Explicit

Private Sub cmd_hitung_Click()
Call HitungRerata

End Sub

Private Sub cmd_kosongkan_Click()
Call KosongkanData

End Sub

Private Sub Form_Open(Cancel As Integer)
Call KosongkanData

End Sub

Private Sub txt_a_LostFocus()

If Len(txt_a) > 0 Then
Call MasukanData
txt_a = ""
End If

End Sub

Sub KosongkanData()
txt_a = ""
txt_i = ""
txt_jum = ""
txt_rata = ""
txt_sd = ""
lst_data.RowSource = ""
lst_data.SetFocus

End Sub
Sub MasukanData()

lst_data.AddItem Val(txt_a)

End Sub

Sub HitungRerata()
Dim a As Single
Dim rata As Single
Dim jum As Single
Dim i As Single
Dim data As Single

For i = 0 To lst_data.ListCount - 1
data = Val(lst_data.Column(0, i))
jum = jum + data
rata = jum / lst_data.ListCount
Debug.Print i & " : " & data & " -> " & _
"(" & jum & " / " & i & " ) = " & rata
Next i

Call HitungSTDEV

txt_i = i
txt_jum = jum
txt_rata = rata

End Sub

Sub HitungSTDEV()
Dim rata As Single
Dim data As Single
Dim jum As Single
Dim i As Single
Dim selisih As Single
Dim sd As Single

rata = Val(txt_rata)
i = 0
Do While i < lst_data.ListCount
data = Val(lst_data.Column(0, i))
selisih = data - rata
jum = jum + selisih ^ 2
i = i + 1
Debug.Print i & " : " & data & " -> " & _
"(" & jum & " / " & i & " ) = " & rata
Loop

sd = (jum / (lst_data.ListCount - 1)) ^ 0.5
txt_sd = sd

End Sub



Gambar form view standar deviasi



Properti RowSource (bersama dengan properti RowSourceType) berfungsi
untuk memberitahu Microsoft Access bagaimana memberikan data ke objek
tertentu.
Columns, untuk menentukan jumlah kolom dalam list box dengan jumlah
kolom ganda dan tanpa menggunakan scroll bar horisontal. Masing-masing lebar
kolom tergantung pada properti width dan jumlah kolom.
Untuk mendapatkan jumlah item dalam Listbox dapat menggunakan properti
ListCount.
Untuk mendapatkan posisi item yang sedang difokus pada Listbox dapat
digunakan properti ListIndex
AddItem(string, index) Untuk menentukan isi listbox, dimana string adalah
item yang ingin ditambahkan ke ListBox, sedangkan index adalah posisi dimana
item akan disisip, defaultnya adalah posisi terakhir.



Perbedan Sub dan Fungsi
Function Procedure Sub Procedure
Memiliki data dengan Tipe
tertentu seperti variabel
Tidak memiliki tipe data
Nilai yang diberikan pada
prosedure akan diolah dan
dihasilkan nilai baru untuk
dipakai oleh ekspresi diluar
fungsi.
Nilai yang diberikan pada
prosedur akan digunakan
untuk prosedur itu sendiri.
Suatu Fungsi dipanggil
dengan menuliskan pada
sisi kanan operator
penugasan (tanda =).
Sedang pada sisi kiri bisa
dituliskan ekspresi yang
sesuai dengan kode yang
digunakan
Karena pada sub procedure
tidak membawa nilai, tidak
ada parameter yang perlu
dituliskan.

Persamaan Sub dengan Fungsi
Sub merupakan sebuah blok kode yang dieksekusi untuk merespon sebuah event.
Fungsi mirip dengan sub, bedanya fungsi menghasilkan return value/mengembalikan
nilai. Suatu fungsi adalah blok kode yang dapat dipanggil untuk mengerjakan suatu
tugas tertentu dan menghasilkan nilai kembalian.

Parameter ByVal dan ByRef
ByRef = Parameter yang dikirimkan adalah object sehingga perubahan Nilai
dari object tersebut yang diolah/diubah pada sub/function akan berakibat
mengubah juga nilai dari object tersebut secara langsung.
ByVal = Parameter yang dikirimkan adalah Nilai dari sebuah object sehingga
anda tidak dapat mengubah Nilai Object tersebut, anda hanya dapat
mengolah/mengubah nilai object tersebut di dalam sub/function saja, setelah
sub/function tersebut selesai, perubahan nilai object di sub/function tidak akan
mengubah nilai object yang sebenarnya.

Keuntungan Penulisan Program dalam bentuk Sub atau Fungsi
Penelusuran program mudah
Program dapat dikerjakan oleh beberapa orang sehingga program cepat selesai
dengan koordinasi yang mudah.
Mudah dalam mencari kesalahan-kesalahan karena alur logika jelas dan
sederhana.
Kesalahan dapat dilokalisasi dalam suatu modul tertentu saja.
Modifikasi program dapat dilakukan pada suatu modul tertentu saja tanpa
mengganggu program keseluruhan.
Fungsi -fungsi digunakan untuk menghindari penulisan program yang sama
yang ditulis secara berulang ulang.
Mempermudah dokumentasi.
Suatu fungsi dapat digunakan kembali oleh program atau fungsi lain.

You might also like