+--------------------------------------------------+
| APLIKASI ASURANSI |
+--------------------------------------------------+
| Nama Lengkap : [________________] |
| Usia : [________] |
| Jenis Kelamin : (•) Pria ( ) Wanita |
| Jenis Asuransi: [Dropdown Menu ▼] |
| Jumlah Pertanggungan: [________________] |
| |
| Premi per Bulan: [________________] |
| |
| [Hitung Premi] [Reset] [Keluar] |
+--------------------------------------------------+Private Sub Form_Load()
' Mengisi ComboBox dengan jenis asuransi
cboJenis.AddItem "Asuransi Jiwa"
cboJenis.AddItem "Asuransi Kesehatan"
cboJenis.AddItem "Asuransi Kendaraan"
cboJenis.AddItem "Asuransi Pendidikan"
cboJenis.ListIndex = 0 ' Set default pilihan
End SubPrivate Sub cmdHitung_Click()
Dim nama As String
Dim usia As Integer
Dim jenisKelamin As String
Dim jenisAsuransi As String
Dim jumlahPertanggungan As Double
Dim premi As Double
Dim faktorUsia As Double
Dim faktorJenisKelamin As Double
Dim faktorJenisAsuransi As Double
' Validasi input
If txtNama.Text = "" Then
MsgBox "Nama harus diisi!", vbExclamation, "Peringatan"
txtNama.SetFocus
Exit Sub
End If
If txtUsia.Text = "" Or Not IsNumeric(txtUsia.Text) Then
MsgBox "Usia harus diisi dengan angka!", vbExclamation, "Peringatan"
txtUsia.SetFocus
Exit Sub
End If
If txtJumlah.Text = "" Or Not IsNumeric(txtJumlah.Text) Then
MsgBox "Jumlah pertanggungan harus diisi dengan angka!", vbExclamation, "Peringatan"
txtJumlah.SetFocus
Exit Sub
End If
If cboJenis.ListIndex = -1 Then
MsgBox "Pilih jenis asuransi!", vbExclamation, "Peringatan"
cboJenis.SetFocus
Exit Sub
End If
' Ambil nilai input
nama = txtNama.Text
usia = Val(txtUsia.Text)
jumlahPertanggungan = Val(txtJumlah.Text)
jenisAsuransi = cboJenis.Text
' Tentukan jenis kelamin
If optPria.Value = True Then
jenisKelamin = "Pria"
Else
jenisKelamin = "Wanita"
End If
' Hitung faktor berdasarkan usia menggunakan If-Then-Else
If usia <= 25 Then
faktorUsia = 0.01
ElseIf usia <= 35 Then
faktorUsia = 0.015
ElseIf usia <= 45 Then
faktorUsia = 0.02
ElseIf usia <= 55 Then
faktorUsia = 0.025
Else
faktorUsia = 0.03
End If
' Hitung faktor berdasarkan jenis kelamin
If jenisKelamin = "Pria" Then
faktorJenisKelamin = 1.2
Else
faktorJenisKelamin = 1.0
End If
' Hitung faktor berdasarkan jenis asuransi menggunakan Select Case
Select Case jenisAsuransi
Case "Asuransi Jiwa"
faktorJenisAsuransi = 1.0
Case "Asuransi Kesehatan"
faktorJenisAsuransi = 1.5
Case "Asuransi Kendaraan"
faktorJenisAsuransi = 0.8
Case "Asuransi Pendidikan"
faktorJenisAsuransi = 1.2
Case Else
faktorJenisAsuransi = 1.0
End Select
' Hitung premi
premi = (jumlahPertanggungan * faktorUsia * faktorJenisKelamin * faktorJenisAsuransi) / 12
' Tampilkan hasil
txtPremi.Text = Format(premi, "Currency")
' Tampilkan ringkasan dalam MessageBox
MsgBox "Ringkasan Perhitungan:" & vbCrLf & _
"Nama: " & nama & vbCrLf & _
"Usia: " & usia & " tahun" & vbCrLf & _
"Jenis Kelamin: " & jenisKelamin & vbCrLf & _
"Jenis Asuransi: " & jenisAsuransi & vbCrLf & _
"Jumlah Pertanggungan: " & Format(jumlahPertanggungan, "Currency") & vbCrLf & _
"Premi per Bulan: " & Format(premi, "Currency"), _
vbInformation, "Hasil Perhitungan"
End SubPrivate Sub cmdReset_Click()
' Reset semua input
txtNama.Text = ""
txtUsia.Text = ""
txtJumlah.Text = ""
txtPremi.Text = ""
optPria.Value = True
cboJenis.ListIndex = 0
txtNama.SetFocus
End SubPrivate Sub cmdKeluar_Click()
Dim jawab As Integer
jawab = MsgBox("Apakah Anda yakin ingin keluar?", vbYesNo + vbQuestion, "Konfirmasi")
If jawab = vbYes Then
End
End If
End SubString, Integer, DoubleDimVal(): Mengkonversi string ke angkaFormat(): Memformat angka menjadi currencyMsgBox: Menampilkan pesanIsNumeric(): Mengecek apakah input berupa angkaForm_Load: Dijalankan saat form dimuatCommand_Click: Dijalankan saat tombol diklikPremi per Bulan = (Jumlah Pertanggungan × Faktor Usia × Faktor Jenis Kelamin × Faktor Jenis Asuransi) ÷ 12
Faktor Usia:
- ≤ 25 tahun: 1%
- 26-35 tahun: 1.5%
- 36-45 tahun: 2%
- 46-55 tahun: 2.5%
- > 55 tahun: 3%
Faktor Jenis Kelamin:
- Pria: 1.2
- Wanita: 1.0
Faktor Jenis Asuransi:
- Asuransi Jiwa: 1.0
- Asuransi Kesehatan: 1.5
- Asuransi Kendaraan: 0.8
- Asuransi Pendidikan: 1.2Aplikasi ini mengimplementasikan semua konsep dari materi Visual Basic 6.0 yang Anda berikan, termasuk penggunaan kontrol, percabangan, validasi input, dan event handling.