Senin, 29 Oktober 2012

Tugas visual basic2


TUGAS VISUAL BASIC 2


Nama   : DWI SUSANTI
NIM    : 11.11.2495

Pada tugas Visual Basic kali ini, saya akan membasa tentang Analisis program yang telah disediakan oleh Dosen Visual Basic.

SOAL 1. VARIABEL CONSTANTA TYPE DATA
      A.  Apa yang menyebabkan program error pada btalamat1_Click baris program alamat = “Kuningan”
 
Ketika program dijalankan maka terjadi error, dikarenakan nilai konstanta tidak bisa dirubah nilainya dengan cara pemberian nilai layaknya kita memberi nilai pada variabel biasa.
Bisa dilihat pada tanda merah dalam listing program, 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. Kenapa saat ditekan tombol nama1 dan nama2 nama yang ditampilkan pada textbox nama berbeda sedangkan saat ditekan tombol alamat1 dan alamat2 alamat yang ditampilkan pada tetxbox alamat sama?


Karena pada btnama1_Click dideklarasikan variable “nama” bertipe String dan bernilai “Nandang” tetapi variabel nama bersifat lokal (Dim) sehingga hanya bisa dikenali oleh btnama_Click saja.  Dan untuk btnama2_Click justru menggunakan variabel nama yang ada di dalam module (Publik) bersifat global, karena di dalam Btnama2_Click ataupun di dalam deklarasi Class frmsatu(Form Satu) tidak dideklarasikan variabel nama. Di sisi lain di dalam module, nama bernilai“Nandang Hermanto”.

Dan untuk alamat mengapa pada tombol alamat1 dan alamat2 mengeluarkan alamat yang sama, karena pada pendeklarasian variabel alamat untuk form satu yang ada pada module belum terdeklarasikan dan dalam satu form tersebut masih menggunakan konstanta yang berarti hanya dan diharuskan pemanggilan (Const alamat = "Kuningan" ) jika ingin alamat 2 muncul alamat yang berbeda seperti nama 2 maka alamat harus dikenal pada modul dan dideklarasikan pada form satu.

Private Sub btalamat2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btalamat2.Click
        Dim alamat As String
        alamat = " Purwokerto”
        txtalamat.Text = alamat

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.
Dan pada btalamat2_Click, variabe umur bersifat statis dimana static nilainya tidak akan berubah-ubah sehingga ketika tombol Tambah Umur 2 ditekan maka nilai umur tidak akan kembali lagi ke awal melainkan akan bertambah.




Dan pada btalamat2_Click, variabe umur bersifat statis dimana static nilainya tidak akan berubah-ubah sehingga ketika tombol Tambah Umur 2 ditekan maka nilai umur tidak akan kembali lagi ke awal melainkan akan bertambah.


Dalam listing program di atas umur +=1, maka artinya bila tekan tombol Tambah umur2 maka nilai umur akan bertambah 1 dari angka sebelumnya. Bila umur +=1, angka 1nya diganti 2 maka nilai pada umur akan dilipatkan dari angka sebelumnya dan bila diganti angka 3 maka angka sebelumnya dikalikan 3.

D.           Analisi Form 2



Terlihat jelas dalam form 2 ini ada baris perintah Option Explicit off yaitu mengharuskan dipesan dulu baru digunakan, dan pemesanannya adalah variabel-variabel Public yang ada pada module1.


Dengan demikian form2 tidak perlu didefinisikan, dan program akan langsung mengambil definisi variabel-variabel itu dari variabel Public yang terdapat dimanapun. Pada program ini variabel-variable tersebtu terdapat pada Module1. Sehingga pada saat kita menekan tombol Nama atau Alamat atau Umur, nilai yang keluar adalah nilai yang terdapat pada Module1.

SOAL 2. IF dan CASE













Dalam listing program di atas masih ada kesalahan pada pengkodean kode “TAS”, ketika kita pilih kode TAS yang akan muncul pada nama barang “-“ dan harganya 0. Karena kode “TAS” tidak diinputkan atau dimasukan dalam listing program di atas seperti kode barang yang lain. Mengapa nama barang bernilai “-“ dan harga barang bernilai 0, karena didalam listing programnya (lihat tanda merah di atas)  menunjukan bahwa selain kode barang selain yang disebut di atas maka nilai nama barang “-“ dan harga barang 0.
Untuk listing program yang benar dan tepat untuk kode “TAS” sebagai berikut :
Tanda merah di gambar tersebut adalah penambahan pengkodean untuk kode “TAS”