Array
Kasus 62: Demo Array
Public Class
Form1
Private Sub
tombolMasuk_Click(sender As Object, e As EventArgs)
Handles tombolMasuk.Click
Const intSUBSKRIP_MAKS As
Integer = 4
Dim strNama(intSUBSKRIP_MAKS) As
String ' Array untuk memuat nama-nama
Dim intHitung As Integer
' Kounter loop
' Memberitahu pengguna apa yang perlu
dilakukan
MessageBox.Show("Saya meminta
Anda untuk memasukkan " &
"nama dari lima teman Anda.")
' Membaca nama dan menyimpannya di
dalam array
For intHitung = 0 To
intSUBSKRIP_MAKS
strNama(intHitung) =
InputBox("Masukkan nama teman Anda.")
Next
' Membersihkan kotak list
kotakList.Items.Clear()
' Menampilkan isi array pada kotak
list
For intHitung = 0 To
intSUBSKRIP_MAKS
kotakList.Items.Add(strNama(intHitung))
Next
End Sub
Private Sub
tombolKeluar_Click(sender As Object, e As EventArgs)
Handles tombolKeluar.Click
Me.Close()
End Sub
End Class
|
Kasus 63: Sistem Penggajian Sederhana
Public Class
Form1
Private Sub
tombolHitung_Click(sender As Object, e As EventArgs)
Handles tombolHitung.Click
' Konstanta-konstanta
Const decGAJI_PER_JAM As
Decimal = 70000D
Const intSUBSKRIP_MAKS As
Integer = 5
' Array dan variabel-variabel lain
Dim
dblArrayJam(intSUBSKRIP_MAKS) As Double
Dim intHitung As Integer
= 0 ' Kounter loop
Dim decGaji_Kotor As Decimal
' memuat gaji kotor
' Meminta pengguna untuk memasukkan
jumlah jam kerja tiap karyawan
MessageBox.Show("Saya meminta
Anda untuk memasukkan jumlah" &
"jam kerja dari tiap
karyawan.")
' Membaca jumlah jam kerja dari tiap
karyawan
Do While intHitung <
dblArrayJam.Length
Try
dblArrayJam(intHitung) =
CDbl(InputBox("Nomor
karyawan: " &
(intHitung + 1).ToString()))
intHitung += 1
Catch
' Menampilkan pesan error
MessageBox.Show("Masukkan
jumlah jam kerja " &
"yang valid untuk
karyawan.")
End Try
Loop
' Membersihkan kotak list
kotakList.Items.Clear()
' Menghitung dan menampilkan gaji
kotor tiap karyawan
For intHitung = 0 To
dblArrayJam.Length - 1
decGaji_Kotor =
CDec(dblArrayJam(intHitung) * decGAJI_PER_JAM)
kotakList.Items.Add("Karyawan
" & (intHitung + 1).ToString() &
" mendapatkan gaji
Rp. " &
decGaji_Kotor.ToString("N"))
Next
End Sub
Private Sub
tombolKeluar_Click(sender As Object, e As EventArgs)
Handles tombolKeluar.Click
Me.Close()
End Sub
End Class
|
Kasus 64: Menggunakan Array Paralel
Public Class
Form1
Private Sub
tombolTampil_Click(sender As Object, e As EventArgs)
Handles tombolTampil.Click
Dim strBulan() As String
= {"Januari", "Pebruari", "Maret",
"April", "Mei",
"Juni", "Juli", "Agustus",
"September",
"Oktober",
"Nopember", "Desember"}
' Array dengan jumlah hari pada tiap
bulan
Dim intHari() As Integer
= {31, 28, 31, 30, 31, 30,
31, 31, 30, 31, 30, 31}
' Menampilkan daftar bulan dan jumlah
hari
Dim i As Integer
For i = 0 To strBulan.Length -
1
kotakList.Items.Add(strBulan(i)
& " memiliki " &
intHari(i).ToString() &
" hari.")
Next
End Sub
Private Sub
tombolKeluar_Click(sender As Object, e As EventArgs)
Handles tombolKeluar.Click
Me.Close()
End Sub
End Class
|
Kasus 65: Pelewatan Array Kepada Fungsi
dan Prosedur
Public Class
Form1
Private Sub
tombolHitung_Click(sender As Object, e As EventArgs)
Handles tombolHitung.Click
' Menciptakan sebuah array untuk
memuat jumlah-jumlah penjualan
Const intSubskrip_Maks As
Integer = 4
Dim
decPenjualan(intSubskrip_Maks) As Decimal
' Variabel lokal lainnya
Dim decPenjualanTotal As
Decimal ' untuk memuat penjualan total
Dim decPenjualanRatarata As
Decimal ' untuk memuat penjualan rerata
Dim decPenjualanTertinggi As
Decimal ' untuk memuat penjualan tertinggi
Dim decPenjualanTerendah As
Decimal ' untuk memuat penjualan terendah
' Memabaca jumlah penjualan dari
pengguna
BacaDataPenjualan(decPenjualan)
' Membaca penjualan total, penjualan
rerata, penjualan tertinggi
' dan penjualan terendah
decPenjualanTotal =
ArrayTotal(decPenjualan)
decPenjualanRatarata =
ArrayRerata(decPenjualan)
decPenjualanTertinggi =
Tertinggi(decPenjualan)
decPenjualanTerendah =
Terendah(decPenjualan)
' Menampilkan hasil
teksTotal.Text =
decPenjualanTotal.ToString("N")
teksRata.Text =
decPenjualanRatarata.ToString("N")
teksTertinggi.Text =
decPenjualanTertinggi.ToString("N")
teksTerendah.Text =
decPenjualanTerendah.ToString("N")
End Sub
' Prosedur BacaDataPenjualan menerima
sebuah argumen array Decimal.
Sub BacaDataPenjualan(ByRef
decPenjualan() As Decimal)
Dim intHitung As Integer
= 0 ' kounter loop, ditetapkan 0
' Mengisi array decPenjualan dengan
nilai-nilai
' yang dimasukkan oleh pengguna.
Do While intHitung <
decPenjualan.Length
Try
' Membaca penjualan
decPenjualan(intHitung) =
CDec(InputBox("Masukkan
nilai penjualan hari ke-" &
(intHitung + 1).ToString()))
' menginkremen intHitung
intHitung += 1
Catch
' Menampilkan pesan error
MessageBox.Show("Masukkan
nilai numerik.")
End Try
Loop
End Sub
' Fungsi ArrayTotal meneriman sebuah
array Decimal sebagai
' argumen dan menghasilkan total dari
elemen-elemennya.
Function ArrayTotal(ByVal
decNilai() As Decimal) As Decimal
Dim decTotal As Decimal
= 0 ' akumulator
Dim intHitung As Integer
' kounter loop
' Menghitung total dari tiap elemen
array
For intHitung = 0 To
(decNilai.Length - 1)
decTotal += decNilai(intHitung)
Next
' Menghasilkan total.
Return decTotal
End Function
' Fungsi ArrayRerata menerima sebuah
array Decimal sebagai
' argumen dan menghasilkan rerata dari
elemen-elemennya.
Function ArrayRerata(ByVal
decNilai() As Decimal) As Decimal
Return ArrayTotal(decNilai) /
decNilai.Length
End Function
' Fungsi Tertinggi menerima sebuah array
Decimal array sebagai
' argumen dan menghasilkan elemen
tertinggi.
Function Tertinggi(ByVal
decNilai() As Decimal) As Decimal
Dim intHitung As Integer
' kounter loop
Dim decTertinggi As Decimal
' menampung nilai tertinggi
' Membaca elemen pertama pada array.
decTertinggi = decNilai(0)
' Mencari nilai tertinggi
For intHitung = 1 To
(decNilai.Length - 1)
If decNilai(intHitung)
> decTertinggi Then
decTertinggi =
decNilai(intHitung)
End If
Next
' Menghasilkan nilai tertinggi
Return decTertinggi
End Function
' Fungsi Terendah menerima sebuah array
Decimal array sebagai
' argumen dan menghasilkan elemen
terendah.
Function Terendah(ByVal
decNilai() As Decimal) As Decimal
Dim intHitung As Integer
' kounter loop
Dim decTerendah As Decimal
' memuat nilai terendah
' membaca elemen pertama pada array
decTerendah = decNilai(0)
' Mencari nilai terendah
For intHitung = 1 To
(decNilai.Length - 1)
If decNilai(intHitung)
< decTerendah Then
decTerendah = decNilai(intHitung)
End If
Next
' Menghasilkan nilai terendah
Return decTerendah
End Function
Private Sub
tombolKeluar_Click(sender As Object, e As EventArgs)
Handles tombolKeluar.Click
Me.Close()
End Sub
End Class
|
Kasus 66: Menciptakan Daftar Teman dari
Masukan Pengguna
Public Class
Form1
Private daftarNama As New
List(Of String)
Private Sub
tombolTambah_Click(sender As Object, e As EventArgs)
Handles tombolTambah.Click
' Menambahkan nama pada List
daftarNama.Add(teksNama.Text)
' Membersihkan kotak teks
teksNama.Clear()
teksNama.Focus()
End Sub
Private Sub
tombolTampil_Click(sender As Object, e As EventArgs)
Handles tombolTampil.Click
' Menampilkan semua nama pada kotak
list
Dim strNama As String
kotakList.Items.Clear()
For Each strNama In
daftarNama
kotakList.Items.Add(strNama)
'Tambahkan pada kotak list
Next
End Sub
Private Sub
TombolBersih_Click(sender As Object, e As EventArgs)
Handles TombolBersih.Click
kotakList.Items.Clear()
End Sub
End Class
|
Kasus 67: Pencarian Item Pada Sebuah
List
Public Class
Form1
Private daftarNama As New
List(Of String)
Private Sub
tombolTambah_Click(sender As Object, e As EventArgs)
Handles tombolTambah.Click
' Menambahkan nama pada List
daftarNama.Add(teksNama.Text)
' Membersihkan kotak teks
teksNama.Clear()
teksNama.Focus()
End Sub
Private Sub
tombolTampil_Click(sender As Object, e As EventArgs)
Handles tombolTampil.Click
' Menampilkan semua nama pada kotak
list
Dim strNama As String
kotakList.Items.Clear()
For Each strNama In
daftarNama
kotakList.Items.Add(strNama)
'Tambahkan pada kotak list
Next
End Sub
Private Sub
TombolBersih_Click(sender As Object, e As EventArgs)
Handles TombolBersih.Click
kotakList.Items.Clear()
End Sub
Private Sub tombolCari_Click(sender As Object, e As
EventArgs)
Handles tombolCari.Click
Dim strNama As String
strNama = teksCari.Text
' Melakukan pencarian
Dim intPosisi As Integer
= daftarNama.IndexOf(strNama)
' Apakah nama yang dicari ada pada
List?
If intPosisi <> -1 Then
MessageBox.Show(strNama &
" ditemukan pada indeks " &
intPosisi & ".")
Else
MessageBox.Show(strNama &
"tidak ditemukan pada List.")
End If
End Sub
End Class
|
Kasus 68: Aplikasi Penjualan
Menggunakan Menu
Public Class
Form1
' Aplikasi ini menampilkan laporan
penjualan untuk perusahaan
' Deklarai level-kelas
Const intSUBSKRIP_MAKS As Integer
= 4 ' subksrip maksimum
Dim
strNamaProduk(intSUBSKRIP_MAKS) As String ' nama produk
Dim strDeskripsi(intSUBSKRIP_MAKS)
As String ' deskripsi
Dim
intNomorProduk(intSUBSKRIP_MAKS) As Integer ' nomor produk
Dim decHarga(intSUBSKRIP_MAKS) As
Decimal ' harga per unit
Dim
intUnitTerjual(intSUBSKRIP_MAKS) As Integer ' unit terjual
Private Sub
Form1_Load(sender As Object, e As EventArgs) Handles
MyBase.Load
' Menginisialisasi array dengan data
produk
InisialisasiArray()
End Sub
Private Sub
InisialisasiArray()
' Inisialisasi array
' Produk pertama
strNamaProduk(0) = "Pemrograman
Java"
strDeskripsi(0) = "Buku"
intNomorProduk(0) = 914
decHarga(0) = 99900D
' Produk kedua
strNamaProduk(1) = "Pemrograman
VB.NET"
strDeskripsi(1) = "CD"
intNomorProduk(1) = 915
decHarga(1) = 75500D
' Produk ketiga
strNamaProduk(2) = "Pemrograman
MATLAB"
strDeskripsi(2) = "Video"
intNomorProduk(2) = 916
decHarga(2) = 185500D
' Produk keempat
strNamaProduk(3) = "Pemrograman
C#"
strDeskripsi(3) = "Buku"
intNomorProduk(3) = 917
decHarga(3) = 79900D
' Produk kelimat
strNamaProduk(4) = "Pemrograman
C++"
strDeskripsi(4) = "CD"
intNomorProduk(4) = 918
decHarga(4) = 90500D
End Sub
Private Sub menuFileKeluar_Click(sender
As Object, e As EventArgs)
Handles menuFileKeluar.Click
Me.Close()
End Sub
Private Sub
menuLaporanMasukkan_Click(sender As Object, e As EventArgs)
Handles menuLaporanMasukkan.Click
Dim intHitung As Integer
= 0 ' kounter loop
Do While intHitung
<= intSUBSKRIP_MAKS
Try
' Membaca jumlah unit terjual
atas sebuah produk
intUnitTerjual(intHitung) =
CInt(
InputBox("Masukkan
jumlah unit terjual dari nomor produk " &
intNomorProduk(intHitung)))
' Menginkremen intHitung
intHitung += 1
Catch
' Pesan error karena masukan
tak-valid
MessageBox.Show("Masukkan
integer yang valid")
End Try
Loop
End Sub
Private Sub
menuLaporanTampilkan_Click(sender As Object, e As EventArgs)
Handles menuLaporanTampilkan.Click
' Menghitung dan menampilkan
pendapatan untuk
' tiap produk dan pendapatan total
Dim intHitung As Integer
Dim decPendapatan As Decimal
Dim decPendapatanTotal As
Decimal
' Menampilkan kepala tabel laporan
penjualan.
kotakList.Items.Add("LAPORAN
PENJUALAN")
kotakList.Items.Add("-------------------")
' Menampilkan data penjualan untuk
tiap produk
For intHitung = 0 To
intSUBSKRIP_MAKS
' Menghitung pendapatan produk
decPendapatan =
intUnitTerjual(intHitung) * decHarga(intHitung)
' Menampilkan data produk
kotakList.Items.Add("Nomor
produk: " &
intNomorProduk(intHitung))
kotakList.Items.Add("Nama:
" &
strNamaProduk(intHitung))
kotakList.Items.Add("Deskripsi:
" &
strDeskripsi(intHitung))
kotakList.Items.Add("Harga
Unit: Rp. " &
decHarga(intHitung).ToString("N1"))
kotakList.Items.Add("Jumlah
Unit Terjual: " &
intUnitTerjual(intHitung).ToString())
kotakList.Items.Add("Pendapatan
Produk: Rp. " &
decPendapatan.ToString("N1"))
:
kotakList.Items.Add("")
' Akumulasi pendapatan
decPendapatanTotal =
decPendapatanTotal + decPendapatan
Next
' Menampilkan pendapatan total
teksPendapatan.Text = "Rp.
" & decPendapatanTotal.ToString("N1")
End Sub
Private Sub
TentangToolStripMenuItem_Click(sender As Object, e As
EventArgs)
Handles
TentangToolStripMenuItem.Click
' Menampilkan menu
"Tentang"
MessageBox.Show("Menampilkan
laporan Penjualan Sianipar Corp.", "Tentang")
End Sub
End Class
|
No comments:
Post a Comment