Percabangan pada Visual Basic 2010 2


Materi ini adalah lanjutan dari materi sebelumnya 


Ada beberapa jenis percabangan yaitu :
  1. Struktur If - Then
  2. Struktur If - Then - Else
  3. Nested If 
  4. Struktuf IIf  (yang akan di bahas di post ini)
  5. Struktur Select - Case
  • Percabangan (IIF)
Bentuk penulisan dari struktur If - Then - Else adalah tegak atau vertikal.
Bentuk semacam ini tentu banyak memakan baris atau terulang panjang, apalagi jika bentuknya Nested If. Untuk mengatasi kekurangan tersebut, dapat menggunakan struktur IIF yaitu struktur If Then-else yang bentuknya datar atau horisontalBentuk penulisan IIF butuh variabel untuk menampung jawabannyaDari segi kecepatan struktur IIF lebih cepat prosesnya dibandingkan dengan struktur If – Then – Else.

Hasil = IIF(kondisi, jawaban 1, jawaban 2)
kondisi: Berisi perbandingan antara satu variabel/konstanta dengan variabel/konstanta lain dengan menggunakan tanda <, >, =, <> dari suatu keadaan yang akan menghasilkan nilai Benaratau Salah.
Jawaban 1 Jawaban yang diberikan jika kondisi penyeleksian bernilai Benar.
Jawaban 2 Jawaban yang diberikan jika kondisi penyeleksian bernilai Salah

  • Contoh Latihan 3
Buatlah form seperti dibawah ini
Source Code :
Public Class Pertemuan_2_Latihan_3_Praktikum
    Public hari As String

    Private Sub Pertemuan_2_Latihan_3_Praktikum_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Text = "salmantech42.blogspot.com"
    End Sub

    Private Sub btproses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btproses.Click
        Dim hari As String
        Dim cmb As String = cbhari.Text
        hari = IIf(cmb = "1", "Senin", IIf(cmb = "2", "Selasa", IIf(cmb = "3", "Rabu", IIf(cmb = "4", "Kamis", IIf(cmb = "5", "Jumat", IIf(cmb = "6", "Sabtu", "Minggu"))))))
        tbnamahari.Text = hari
    End Sub

    Private Sub btexit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btexit.Click
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbYes Then
            End
        End If
    End Sub

    Private Sub Pertemuan_2_Latihan_3_Praktikum_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbNo Then
            e.Cancel = True
        End If
    End Sub
End Class

Berikut Hasil Akhirnya


  • Kasus 6 (IIF)
Buatlah form seperti dibawah ini
Nim, Nama, Jurusan, Nilai Kehadiran, Tugas, UTS dan UAS diinput.
Gunakan Event Keypress untuk input dengan Keyboard.
Gunakan Validasi untuk huruf dan angka.
Ketika di enter di textbox UAS, Nilai Akhir dan Grade akan muncul.
Nilai Akhir = 20 % dari nilai kehadiran + 25 % dari nilai tugas + 25 % dari nilai UTS + 30 % dari nilai UAS
• Button Clear untuk membersihkan textbox dan combobox.
Button keluar utk keluar aplikasi.
  Nilai           Grade
86 – 100              A
74 – 85                B
60 - 73                 C
46 - 59                 D
< 45                      E

Source Code :
Public Class Pertemuan_2_Kasus_6_Praktikum
    Dim hadir, tugas, uts, uas, akhir As Double

    Private Sub Pertemuan_2_Kasus_6_Praktikum_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Text = "salmantech42.blogspot.com"
        cbjurusan.Items.Add("Teknik Informatika")
        cbjurusan.Items.Add("Sistem Informasi")
        '2017230184
        cbjurusan.Items.Add("Sastra Jepang")
        cbjurusan.Items.Add("Sastra Inggris")
        cbjurusan.Items.Add("Hukum")
    End Sub

    Private Sub tbuas_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbuas.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If (e.KeyChar = Chr(13)) Then
            hadir = tbkehadiran.Text
            tugas = tbtugas.Text
            uts = tbuts.Text
            uas = tbuas.Text
            akhir = (hadir * 0.2) + (tugas * 0.25) + (uts * 0.25) + (uas * 0.3)
            tbnilaiakhir.Text = akhir
            Dim iakhir As Integer = akhir
            Dim igrade As String = tbgrade.Text
            igrade = IIf(iakhir >= 86, "A", IIf(iakhir >= 74, "B", IIf(iakhir >= 60, "C", IIf(iakhir >= 46, "D", "E"))))
            tbgrade.Text = igrade
        End If
    End Sub

    Private Sub tbnoinduk_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbnoinduk.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If e.KeyChar = Chr(13) Then
            tbnama.Focus()
        End If
    End Sub

    Private Sub tbnama_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbnama.KeyPress
        Dim allowedChars As String = "abcdefghijklmnopqrstuvwxyz "
        If Not (Asc(e.KeyChar) = 8) Then
            If e.KeyChar = Chr(13) Then
                cbjurusan.DroppedDown = True
            End If
            If Not allowedChars.Contains(e.KeyChar.ToString.ToLower) Then
                e.KeyChar = ChrW(0)
                e.Handled = True
            End If
        End If
    End Sub

    Private Sub cbjurusan_DropDownClosed(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbjurusan.DropDownClosed
        tbkehadiran.Focus()
    End Sub

    Private Sub tbkehadiran_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbkehadiran.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If e.KeyChar = Chr(13) Then
            tbtugas.Focus()
        End If

    End Sub

    Private Sub tbtugas_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbtugas.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If e.KeyChar = Chr(13) Then
            tbuts.Focus()
        End If
    End Sub

    Private Sub tbuts_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbuts.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If e.KeyChar = Chr(13) Then
            tbuas.Focus()
        End If
    End Sub

   
    Private Sub btclear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btclear.Click
        tbgrade.Clear()
        tbkehadiran.Clear()
        tbnama.Clear()
        tbnilaiakhir.Clear()
        tbnoinduk.Clear()
        'Ahmad Salman Farisi
        tbtugas.Clear()
        tbuas.Clear()
        tbuts.Clear()
        cbjurusan.SelectedIndex = -1
    End Sub

    Private Sub btexit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btexit.Click
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbYes Then
            End
        End If
    End Sub

    Private Sub Pertemuan_2_Kasus_6_Praktikum_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbNo Then
            e.Cancel = True
        End If
    End Sub
End Class

Berikut hasil Programnya

  • Kasus 7 (IIF)
Buatlah form seperti di bawah ini
Nim diinput, jenis kelamin dan jabatan dipilih .
Gunakan Validasi untuk huruf dan angka.
Ketika dipilih jabatan, maka gaji pokok akan muncul sesuai seleksi.
Tunjangan diinput, ketika di enter Total gaji akan muncul.
Potongan diinput, ketika di enter Gaji bersih akan muncul.
Button Clear utk membersihkan textbox dan combobox.
Button keluar untuk keluar aplikasi. 
Jabatan          Gaji Pokok
Manager         5.000.000
Supervisor     2.500.000
Operasional   1.000.000

Source Code :
Public Class Pertemuan_2_Kasus_7_Praktikum
    Dim tunjangan, gajipokok, total, potongan, bersih As Double

    Private Sub Pertemuan_2_Kasus_7_Praktikum_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Text = "salmantech42.blogspot.com"
        cbjabatan.Items.Add("Manager")
        cbjabatan.Items.Add("Supervisor")
        cbjabatan.Items.Add("Operasional")
    End Sub

    Private Sub cbjabatan_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbjabatan.SelectedIndexChanged
        Dim pokok As String
        Dim cjabatan As String = cbjabatan.Text
        pokok = IIf(cjabatan = "Manager", 5000000, IIf(cjabatan = "Supervisor", 2500000, IIf(cjabatan = "Operasional", 1000000, "")))
        tbgajipokok.Text = pokok
    End Sub

    Private Sub tbtunjangan_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbtunjangan.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If (e.KeyChar = Chr(13)) Then
            tunjangan = tbtunjangan.Text
            gajipokok = tbgajipokok.Text
            total = tunjangan + gajipokok
            tbtotalgaji.Text = total
            tbpotongan.Focus()
        End If
    End Sub

    Private Sub tbpotongan_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbpotongan.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If (e.KeyChar = Chr(13)) Then
            potongan = Val(tbpotongan.Text)
            bersih = total - potongan
            tbgajibersih.Text = bersih
        End If
    End Sub

    Private Sub tbpegawai_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbpegawai.KeyPress
        Dim allowedChars As String = "abcdefghijklmnopqrstuvwxyz "
        If Not (Asc(e.KeyChar) = 8) Then
            If Not allowedChars.Contains(e.KeyChar.ToString.ToLower) Then
                e.KeyChar = ChrW(0)
                e.Handled = True
            End If
        End If
    End Sub

    Private Sub rblaki_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles rblaki.Click
        cbjabatan.DroppedDown = True
    End Sub

    Private Sub rbperempuan_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles rbperempuan.Click
        cbjabatan.DroppedDown = True
    End Sub
    Private Sub cbjabatan_DropDownClosed(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbjabatan.DropDownClosed
        tbtunjangan.Focus()
    End Sub

    Private Sub tbgajipokok_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tbgajipokok.KeyPress
        If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled = True
        If e.KeyChar = Chr(13) Then
            tbpotongan.Focus()
        End If
    End Sub

    Private Sub btclear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btclear.Click
        tbgajibersih.Clear()
        tbgajipokok.Clear()
        tbpegawai.Clear()
        tbpotongan.Clear()
        tbtotalgaji.Clear()
        tbtunjangan.Clear()
        cbjabatan.SelectedIndex = -1
        rblaki.Checked = False
        rbperempuan.Checked = False
    End Sub

    Private Sub btexit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btexit.Click
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbYes Then
            End
        End If
    End Sub

    Private Sub Pertemuan_2_Kasus_7_Praktikum_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Dim pesan As String
        pesan = MsgBox("Are you sure want to exit ?", vbYesNo, "salmantech42.blogspot.com")
        If pesan = vbNo Then
            e.Cancel = True
        End If
    End Sub
End Class

Berikut Hasil Akhirnya


Sekian untuk post kali ini semoga bermanfaat untuk kita semua
Untuk Mater ke 5 (Switch - Case) beserta kasus nya ada di post selanjutnya
どうもありがとうございました…!





Share post ini ke :

Facebook WhatsApp Twitter LINE Linkedin


Subscribe to receive free email updates:

0 Response to "Percabangan pada Visual Basic 2010 2"

Post a Comment