Nama :
Faizin Nurdiansyah
Assalamu’alaikum Wr. Wb
Pada kesempatan kali ini, saya akan membahas
permasalahan pada tugas kedua visual basic yang diberikan pada oleh Dosen yang
mengampu mata kuliah ini.
SOAL 1 : Analisa Constanta
a) Dalam
listing dibawah ini menyatakan output dari
“Form Satu” yang salah dalam pendeklarasian. Penyebab erornya program
terletak pada pengeksekusian alamat :
Ketika program
berjalan maka akan error,karena nilai konstanta tidak bisa dirubah nilainya
dengan cara pemberian nilai seperti kita memberi nilai pada variabel biasa.
Coba lihat pada dalam listing program
yang ditandai dengan warna kuning, pada btalamat1_Click pada “alamat” diberi
assignment(=). Hal inilah yang membuat program salah atau error saat dijalankan
karena konstanta tidak dapat diubah-ubah nilainya.
Maka untuk mengatasi hal tersebut
(alamat = “Kuningan”) diganti dengan (txtalamat.text=
Kuningan).
b) Mengapa
tombol nama 1 dan nama 2 mengeluarkan nama yang berbeda
sedangkan alamat 1 dan alamat 2 mengerluarkan alamat yang
sama?
Karena
pada cara pendeklarasian variablenya (alamat) untuk form satu yang ada pada
module belum terdeklarasikan dan dalam satu form tersebut masih menggunakan
constanta yang berarti hanya dan diharuskan pemanggilan (Const alamat = "Purwokerto"
) jika ingin alamat 2 muncul alamat yang berbeda seperti nama 2 maka
alamat harus dikenal pada modul dan dideklarasikan pada form satu dengan
listing :
Public Class frmsatu
Const
alamat = "Purwokerto"
Private Sub btnama1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
btnama1.Click
Dim
nama As String
nama = "faizin" Nama
telah dipanggil melalui Module dengan Dim yang bersifat Lokal.
txtnama.Text = nama
End
Sub
Private Sub btnama2_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
btnama2.Click
txtnama.Text = nama
End Sub
Private Sub btalamat1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
btalamat1.Click
txtalamat.Text = alamat
End Sub
Private Sub btalamat2_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
btalamat2.Click
Dim
alamat As String
alamat = "
Purwokerto Selatan " pemanggilan
alamat 2
txtalamat.Text = alamat
End Sub
Private Sub bttambahumur1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
bttambahumur1.Click
Dim
umur As Integer
umur += 1
txtumur.Text = umur
End Sub
Private Sub bttambahumur2_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
bttambahumur2.Click
Static
umur As Integer
umur += 1
txtumur.Text = umur
End Sub
Private Sub btshowform2_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
btshowform2.Click
frmdua.ShowDialog()
End Sub
End Class
c)
Kenapa saat tekan tombal tambah umur1
umur selalu keluar angka 1 sedangkan saat tekan tombol tambah umur2 umur selalu
bertambah 1 dari umur sebelumnya?
Pada
btambahumur1_Click, variabel umur bersifat tidak statis (nilainya akan berubah)
sehingga ketika tombol Tambah Umur 1 ditekan
maka nilai umur pun selalu diulangi dari awal yaitu 0, tetapi karena perintah
umur+=1 maka umur akan bernilai 1.
Jika pada :
Static
umur As Integer
umur += 1
diganti dengan angka 2 maka akan menjadi
kelipatannya.
Static umur As Integer
umur += 2
karena static
adalah nilai yang tidak dapat berubah.
d) Analisis
From Dua
untuk Form Dua, saat
kita melihat coding pada FrmDua kita melihat ada baris perintah :
Option Explicit Off
Artinya bahwa variabel pada FrmDua tidak perlu kita definisikan dan program akan langsung mengambil definisi variabel-variabel itu dari variabel Public yang terdapat dimanapun. Pada program ini variabel-variable tersebtu terdapat pada Module1. Maka pada saat kita menekan tombol Nama atau Alamat atau Umur, nilai yang keluar adalah nilai yang ada pada Module1.
Option Explicit Off
Artinya bahwa variabel pada FrmDua tidak perlu kita definisikan dan program akan langsung mengambil definisi variabel-variabel itu dari variabel Public yang terdapat dimanapun. Pada program ini variabel-variable tersebtu terdapat pada Module1. Maka pada saat kita menekan tombol Nama atau Alamat atau Umur, nilai yang keluar adalah nilai yang ada pada Module1.
Analisa Kelemahan Program pada Latihan 2 If
an Case
Ketika kita memilih kode
“TAS” pada ComboBox Kode Barang terjadi error, karena listing programnya
kurang. Dan untuk harga
T-Shirt dan Topi mungkin ada kesalahan karena terlalu mahal, mungkin harga yang
tepat adalah 150.000 untuk T-Shirt dan 50.000 untuk TOPI dan TAS.
Berikut ini penambahan listing program yang benar
:
Case
"TAS"
namabarang = "Tas"
harga = 50000
namabarang = "Tas"
harga = 50000
Makasih,,,,, J