BAB II
PENGUJIAN PROGRAM
2. 1 Algoritma Program
|
Berikut ini adalah script lengkap dari aplikasi pembilang angka
Script | Fungsi |
Private Sub txtAngka_KeyPress(KeyAscii As Integer) If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack) Then Beep KeyAscii = 0 End If End Sub | Mengecek inputan apakah berupa angka |
Private Sub Image1_Click() If txtAngka.Text > 999999999 Then pesan = MsgBox("Angka yang dimasukkan terlalu besar" + Chr(13) + "Silahkan masukkan angka lagi", vdCritical, "Informasi") txtAngka.Text = "" Else Label2.Caption = SayN(Val(txtAngka.Text)) End If End Sub | Mengecek digit angka yang akan dikonversi, jika digit angka masih sesuai maka proses konversi akan dijalankan |
Private Function Nama(a As String) As String Select Case a Case "1": Nama = "Satu " Case "2": Nama = "Dua " Case "3": Nama = "Tiga " Case "4": Nama = "Empat " Case "5": Nama = "Lima " Case "6": Nama = "Enam " Case "7": Nama = "Tujuh " Case "8": Nama = "Delapan " Case "9": Nama = "Sembilan " Case "0": Nama = "" End Select End Function | Konversi angka ke bilangan |
Private Function SayN(nNumber As Double) As String Dim z, s, a, c, X Dim ulang As Double Dim i As Byte Dim tampung(5) As String Dim n As String n = LTrim(RTrim(nNumber)) ulang = (Len(n) - 1) \ 3 + 1 For i = 1 To ulang If Len(n) > 3 Then c = Mid(n, Len(n) - 2, 3) n = Mid(n, 1, Len(n) - 3) tampung(i) = c Else tampung(i) = n End If Next i z = "" If n = "0" Then z = "Nol " Else i = ulang Do a = "" X = "" s = tampung(i) 'menggenapkan tiga digit While Len(s) < 3 s = "0" + s Wend 'digit ratusan If Mid(s, 1, 1) <> "0" Then If Mid(s, 1, 1) = "1" Then a = a + "Seratus " Else a = a + Nama(Mid(s, 1, 1)) + "Ratus " End If End If 'digit 11 - 19 If Mid(s, 2, 1) = "1" Then If (Mid(s, 3, 1) <> "1") And _ (Mid(s, 3, 1) <> "0") _ Then a = a + Nama(Mid(s, 3, 1)) + "Belas " If Mid(s, 3, 1) = "1" Then a = a + "Sebelas " If Mid(s, 3, 1) = "0" Then a = a + "Sepuluh " End If 'digit puluhan If (Mid(s, 2, 1) <> "1") _ And (s <> "000") And _ (Mid(s, 2, 1) <> "0") Then a = a + Nama(Mid(s, 2, 1)) + "Puluh " End If If (Mid(s, 3, 1) <> "0") And _ (Mid(s, 2, 1) <> "1") Then a = a + Nama(Mid(s, 3, 1)) End If 'perkecualian untuk seribu If (i = 2) Then If s = "001" Then a = "Se" End If If s <> "000" Then If i = 1 Then X = "" If i = 2 Then X = "Ribu " If i = 3 Then X = "Juta " End If If a = "Se" Then X = LCase(X) z = z + a + X i = i - 1 Loop Until i = 0 End If SayN = z End Function | Pengkonversian dengan memperhatikan digit |
Private Sub Image3_Click() txtAngka.Text = "" Label2.Caption = "" txtAngka.SetFocus End Sub | Membersihkan tampilan layar |
Private Sub Image2_Click() Unload Me End Sub | Keluar dari program |
2. 1.1 Flow Graph
- Diagram Flow Graph
- Pembahasan
Jalur 1 : 1 – 7 – 9
Jalur 2 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 9
Jalur 3 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 1 – 7 – 9
Jalur 4 : 1 – 2 – 8 – 1 – 7 – 9
Jalur 5 : 1 – 2 – 3 – 8 – 1 – 7 – 9
2. 1.2 Cyclomatic Complexity
- Pengertian
Cyclomatic Complexity adalah pengukuran software yang memberikan pengukuran kuantitatif dari kompleksitas logika program.
Pada konteks metode basis path testing, nilai yang dihitung bagi cyclomatic complexity menentukan jumlah jalur- jalur yang independen dalam kumpulan basis suatu program dan memberikan jumlah tes minimal yang harus dilakukan untuk memastikan bahwa semua pernyataan telah dieksekusi sekurangnya satu kali.
b. Pencarian Cyclomatic Complexity
1. Jumlah Region (R) : 5
2. [Region / Complexity] V(G) = E (edges) – N (nodes) + 2
= 12 – 9 + 2 = 5
3. [Complexity]V(G) = P (predicate node) + 1
= 4 + 1 = 5
Sehingga hasil dari Cyclomatic Complexity adalah 5
2. 1.1 Pengujian Jalur
Jalur 1 : 1 – 7 – 9
Hasil yang diharapkan : Keluar dari system
Jalur 2 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 9
Hasil yang diharapkan : Menampilkan hasil konversi kemudian keluar dari system
Jalur 3 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 1 – 7 – 9
Hasil yang diharapkan : Menampilkan hasil konversi kemudian system siap untuk menerima inputan kembali
Jalur 4 : 1 – 2 – 8 – 1 – 7 – 9
Hasil yang diharapkan : system tidak dapat menerima inputan selain angka
Jalur 5 : 1 – 2 – 3 – 8 – 1 – 7 – 9
Hasil yang diharapkan : system tidak dapat menerima inputan melebihi 9 digit (ratusan juta)
0 komentar:
Posting Komentar
Silahkan TInggalkan Komentar Anda di Blog Saya..
No SPAM and No PORN...
Terimakasih Telah meninggalkan Jejak Anda