Senin, 05 November 2012

Tugas 2 Pemrograman Visual


Jawaban Praktikum 2 (Latihan Pertama)

1.a. Ketika program dijalankan akan muncul “Constant tidak bisa ditarget untuk penugasan”.  Kita memanggil alamat sebagai event pada btalamat1 tetapi const alamat sudah dideklarasikan di baris awal sehingga akan dibaca pemesanan yang nilainya tetap (Constant). Dan sebenarnya yang dipanggil adalah pemesanan Const bukan pemesanan ” alamat=”Kuningan” “.

b. Penyebab munculnya nama berbeda karena ada pemesanan pada modul, dengan ruang lingkup variabel Public Static artinya pemesanan variabel ini akan dikenali di seluruh project dengan nama variabel sama baik di form1 dan form2. Btnama1 akan memanggil “Nandang” karena pemesanan lokal dan hanya dikenali oleh btnama1, namun ketika btnama2 diklik akan muncul nama “Nandang Hermanto” karena memanggil pemesanan dengan ruang lingkup “Public” yang tersimpan pada modul.

c. btumur1 tidak menyimpan nilai / value variabel “umur” karena tidak diberikan ruang lingkup variabel “Static” namun “Dim” sehingga ketika dipanggil hanya akan menampilkan nilai 1 saja dan diulang berapa kali pun tetap sama.
Btumur2 mengalami pertambahan nilai / value secara teratur karena diberi pemesanan ruang lingkup variabel “static” artinya tetap. Pertambahan akan sesuai dengan kode yang diberikan, misal :
Static umur as Integer
umur+=1
txtumur.Text = umur
Artinya akan menambahkan nilai 1 pada umur secara teratur.

d. Pada awal kode terdapat “Option Explicit Off” sehingga tidak mengizinkan penggunaan pemesanan variabel tanpa ruang lingkup. Karena untuk melakukan pemanggilan nama, alamat, dan umur semuanya tidak menggunakan ruang lingkup maka pemanggilan akan menggunakan pendekarasian variabel pada Module1 yang semua variabelnya menggunakan pemesanan dengan ruang lingkup variabel “Public”.






Jawaban Praktikum 2 (Analisis latihan if case)
àKetika kita mencoba menjalankan program dan menginput semua isian maka akan dihitung sesuai dengan masukan kita, semisal kita menggunkan kode barang “SND” seperti di bawah ini :

àNamun ketika kita mengubah kode barangnya menjadi “SPT” dan tidak mengubah jumlah barangnya maka tidak akan terjadi perubahan perhitungan sesuai harga tiap kode barang, sehingga kita harus berkali-kali menekan Clear untuk mengulang perhitungan.


Lalu saya menambahkan button “perbaiki” dengan rumus :
Private Sub btperbarui_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btperbarui.Click
txttotal.Text = Val(txtharga.Text) * Val(txtjumlah.Text)
txtdiskon.Text = Val(txttotal.Text) * 10 / 100

If radiotunai.Checked = True Then
txtbayar.Text = Val(txttotal.Text) - Val(txtdiskon.Text)

ElseIf radiokredit.Checked = True Then
 txtdiskon.Text = 0
txtbayar.Text = Val(txttotal.Text)
End If

Maka Tampilan Formnya :


Pada “radiokredit”. Terdapat penulisan rumus “ txtbayar.Text = Val(txttotal.Text) - Val(txtdiskon.Text)” . Karena pada ketentuannya jika dibayar kredit pasti tidak diberi diskon, maka penghitungan total bayar sama dengan total harga.

Hasil perbaikan keseluruhan :

Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
cmbkode.Items.Add(“SPT”)
cmbkode.Items.Add(“SND”)
cmbkode.Items.Add(“TST”)
cmbkode.Items.Add(“TOP”)
cmbkode.Items.Add(“TAS”)

End Sub
Private Sub cmbkode_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbkode.SelectedIndexChanged
Dim kdbarang, nmbarang As String
Dim harga As Single
kdbarang = cmbkode.Text

Select Case kdbarang
Case “SPT”
nmbarang = “Sepatu”
harga = 200000

Case “SND”
nmbarang = “Sandal”
harga = 100000

Case “TST”
nmbarang = “T-Shirt”
harga = 1500000

Case “TOP”
nmbarang = “Top”
harga = 500000

Case Else
nmbarang = “-”
harga = 0

End Select
txtnama.Text = nmbarang
txtharga.Text = harga
End Sub

Private Sub txtjumlah_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtjumlah.TextChanged
txttotal.Text = Val(txtharga.Text) * Val(txtjumlah.Text)
txtbayar.Text = Val(txttotal.Text) – Val(txtdiskon.Text)

End Sub
Private Sub radiotunai_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles radiotunai.CheckedChanged
txtdiskon.Text = Val(txttotal.Text) * 10 / 100
txtbayar.Text = Val(txttotal.Text) – Val(txtdiskon.Text)
End Sub

Private Sub radiokredit_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles radiokredit.CheckedChanged
txtdiskon.Text = 0
txtbayar.Text = Val(txttotal.Text)
End Sub

Private Sub btclear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btclear.Click
txtbayar.Clear()
txtharga.Clear()
txtjumlah.Clear()
txtnama.Clear()
txttotal.Clear()
txtdiskon.Clear()
Me.radiotunai.Checked = False
Me.radiokredit.Checked = False
cmbkode.Text = ” “
End Sub

Private Sub bttutup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bttutup.Click
If MsgBox(“Apakah yakin akan keluar ?”, vbQuestion + vbYesNo + vbDefaultButton2, “Konfirmasi”) = vbYes Then
Me.Close()

End If
End Sub

Private Sub btperbarui_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btperbarui.Click
txttotal.Text = Val(txtharga.Text) * Val(txtjumlah.Text)
txtdiskon.Text = Val(txttotal.Text) * 10 / 100

If radiotunai.Checked = True Then
txtbayar.Text = Val(txttotal.Text) – Val(txtdiskon.Text)

ElseIf radiokredit.Checked = True Then
txtdiskon.Text = 0
txtbayar.Text = Val(txttotal.Text)
End If

 End Sub
End Class



Tidak ada komentar:

Posting Komentar