Loading...
Sunday, 20 March 2011

VARIABEL, OPERATOR DAN EKPRESI PADA VISUAL BASIC

C.1. Variabel

Dalam bekerja dengan kode program, termasuk dengan program Visual Basic, kita tidak akan pernah lepas dari yang namanya Variabel. Variabel adalah nama penyimpanan data di memori komputer yang digunakan selama eksekusi program dan nilainya datanya bisa berubah-rubah.

Dibandingkan dengan type data yang terdapat pada bahasa basic, type data yang disediakan pada Visual Basic lebih banyak, seperti: type Currency, Decimal, Object, dan Variant.. Variant merupakan type variabel yang istimewa, karena dapat berubah dari satu type ke type yang lain, sesuai dengan evaluasi ekspresi oleh Visual Basic. Ketepatan pemilihan type variabel akan sangat menentukan pemakaian resources oleh aplikasi yang dihasilkan, adalah tugas programmer untuk memilih type yang sesuai untuk menghasilkan program yang efisien dan berperfomance tinggi. Nama variabel sebaiknya disesuaikan dengan nilai yang disimpan ke dalamnya, tetapi ada aturan dalam pembuatan nama variabel, yaitu :

  1. Dimulai dengan huruf, setelahnya baru diperbolehkan diikuti angka
  2. Jumlah karakter tidak boleh lebih dari 255 karakter
  3. Tidak boleh disispi dengan karakter-karakter tertentu, seperti karakter . , ? | \ / ” ( ) { } ! @ # $ % ^ & *
  4. Unik, tidak boleh sama dengan yang lain.

Variabel terdiri atas beberapa jenis. Setiap jenis variabel memiliki nilai rentang yang diperbolehkan, selain itu pemilihan jenis variabel dan jumlah variabel akan berpengaruh terhadap jumlah kebutuhan memory komputer (RAM), berikut jenis variabel yang digunakan dalam Visual Basic :

  1. Boolean : menampung nilai biner, True atau False
  2. Byte : Menampung nilai bulat kecil antara 0-256
  3. Integer : Menampung nilai bulat antara -32768 s/d 32768 (15 bit)
  4. Long : Menampung nilai bulat dengan bit yang panjang (31 bit)
  5. Single : Menampung nilai pecahan dari 10-38 sampai dengan 1038 pada bagian positif, dan -10-38 sampai dengan -1038 pada bagian negatif.
  6. Double : Menampung nilai pecahan dari 10-108 sampai dengan 10108 pada bagian positif, dan -10-108 sampai dengan -10108 pada bagian negatif.
  7. String : Menampung nilai non numerik atau string, misalkan untuk menyimpan alamat. Variabel ini tidak bisa dioperasikan secara aritmatika.
  8. Date : Menampung nilai tanggal
  9. Variant : Merupakan variabel bebas, yang menampung nilai tergantung nilai apa yang ditampung pertama kali.

Untuk mendeklarasikan suatu variabel yang bukan jenis variant harus menggunakan perintah Private, Dim, Public, atau Static. Private Digunakan membuat variabel lokal, hanya dapat diakses dalam prosedur atau modul dimana ia dideklarasikan.

Contoh Private hari as Date

Dim Digunakan untuk mendaftarkan variabel tipe tertentu

Contoh : Dim i as integer

Public Digunakan agar variabel tersebut dapat diakes dari prosedur lain

Contoh : Public i as long

Static Digunakan agar isi datanya tidak tetap ada di memory setiap kali digunakan. Contoh : Static i as Integer

C.2. Konstanta

Konstanta adalah variabel yang nilainya tetap, cara penulisannya adalah sebagai berikut :

[Public/Private] Const nama_konstanta [As Type]= Ekspresi

- Ekspresi Nilai yng cara penulisannya tergantung pada type data, misalnya : konstanta numerik (byte, integer, single, double dan lainnya) ditulis apa adanya. Contoh : 250, -75, 567E-2

· Konstanta String ditulis dengan diapit tanda petik (“ “). Contoh : “8888”, “program”, “siapa namamu?”

· Konstanta Date ditulis dengan diapit tanda pagar (# #). Contoh : #30/06/1976#, #4:15 PM#

· Konstanta Boolean, hanya berisi dua nilai, yaitu True atau False.

C.3. Operator

Operator adalah suatu simbol atau tanda untuk menyatakan suatu operasi atau proses. Pada dasarnya komputer dengan ALUnya (Aritmethic Logical Unit), mempunyai dua macam operator yaitu operator Aritmatika dan operator logika (perbandingan). Operator-operator di dalam Visual Basic antara lain:

  1. Aritmatika : + (penjumlahan); - (pengurangan); * (perkalian); / (pembagian); ^ (pangkat); mod (sisa pembagian); \ (hasil bulat pembagian); & (penggabungan string)
  2. Relasi: = (sama dengan); < (lebih kecil); <= lebih kecil atau sama dengan); > (lebih besar); >= (lebih besar atau sama dengan); <> (tidak sama)
  3. Logila: AND (dua kondisi harus dipenuhi); OR (dari dua kondisi, akan benar bila ada salah satu atau lebih kondisi yang dipenuhi); NOT (invers dari kondisi yang diberikan)

Hal yang harus dipahami oleh programmer adalah tata urutan operasi dari masing-masing operator tersebut sehingga mampu membuat ekspresi yang akan menghasilkan nilai yang benar. Urutan dari nilai urutan tertinggi sampai yang terendah, adalah:

  • Untuk operator aritmatika: Pangkat (^) , Negatif (-), Kali dan Bagi (*, /), Pembagian bulat (\), Sisa Bagi (Mod), Tambah dan Kurang (+,-), Pengabungan String (&);
  • komparasi: Sama (=), Tidak sama (<>), Kurang dari (<), Lebih dari (>), Kurang dari atau sama (<=), Lebih dari atau sama (>=), Lebih dari atau sama (>=), Like
  • logika: not, and, or, XOR, Eqv, Imp

Salah satu operator yang menarik untuk dibahas adalah operator like, Operator digunakan untuk operasi pencocokan pola pada string yang akan sangat membantu programmer.

Sintax: result = string Like pattern

Character dalam pencocokan pola pada operator Like, yakni: ? (sembarang karakter tunggal); * (nol atau lebih karakter); # (sembarang digit tunggal 0-9); [charlist] (sembarang karakter yang berada dalam charlist); [!charlist!] (sembarang karakter yang tidak berada dalam charlist.

contoh:

coba = "sKKKa" Like "s*a" ‘hasil True

coba = "F" Like "[A-Z]" ‘hasil True.

coba = "F" Like "[!A-Z]" ' hasil False.

C.4. Ekspresi

Ekspresi adalah suatu cara penulisan untuk memberikan atau memasukkan nilai kedalam variabel. Di dalam Visual Basic ekspresi menggunakan tanda sama dengan (=). Dengan aturan sebelah kiri adalah variabel penampung (hasil) dan sebelah kanan adalah nilai yang dimasukkan ke variabel.

Variabel = Nilai

Sebagai contoh untuk memasukkan nilai 5 ke dalam variabel a dapat dilakukan dengan a=8. Atau memasukkan nama ‘widya’ ke dalam variabel nama dapat dituliskan dengan nama=”Budi” (Pada tipe data string, penulisan diberi tanda petik dua). Atau untuk memasukkan nilai keputusan benar dapat dituliskan dengan keputusan=True, Pada tipe data boolean nilainya hanya True dan False. Sehingga dapat dikatakan bahwa cara memasukkan nilai ini sangat tergantung dari jenis nilai apakah itu boolean, numerik, string atau date. Sedangkan format bilangan dan tanggal secara default menggunakan format yang ada pada sistem operasi, meskipun tidak menutup kemungkinan diubah menggunakan format tersendiri.

Ekspresi merupakan suatu proses yang bersifat sequential, yang artinya bahwa proses dilakukan dari baris paling atas sampai baris terakhir. Sebagai contoh bila dituliskan:

a=10

a=5

Maka artinya pada baris pertama a bernilai 10, dan pada baris kedua a bernilai 5,`sehingga nilai 10 diganti dengan nilai 5. Sehingga hasilnya a bernilai 5.

Ekspresi bukan hanya seperti diatas, tetapi dapat juga merupakan penulisan suatu formula dengan melibatkan variabel-variabel yang sudah ada sebelumnya.

Contoh 1:

a=5

b=10

c=a+b

Hasilnnya variabel a bernilai 5, b bernilai 10 dan c bernilai 15 sebagai hasil dari

a+b=5+10=15.

Ekspresi dapat digunakan untuk melakukan “counting” yaitu perhitungan penjumlahan secara terus menerus terhadapa suatu variabel

Contoh 2:

a=5

a=a+2

Pada baris pertama a bernilai 5, pada baris kedua a bernilai 7, karena a yang sebelumnya bernilai 5 ditambah dengan 2 sehingga nilai akhir a bernilai 7.

Contoh 3:

jumlah=0

jumlah=jumlah+5

jumlah=jumlah-3

jumlah=jumlah+2

Pada baris pertama variabel jumlah bernilai 0, pada baris kedua variabel jumlah bernilai 5, pada baris ketiga variabel jumlah bernilai 2 dan pada baris keempat variabel jumlah bernilai 4.

Contoh 4:

Untuk menuliskan ekspresi dari rumus:

dapat dilakukan dengan:

t=0.5

x=sin(t)

x = sin(t )

dengan t diketahui misalkan t=0.5


D. Fungsi bahasa Visual Basic

Fungsi adalah suatu prosedur yang dapat menerima berbagai nilai untuk kemudian diolah dan memberikan hasil sebagai umpan baliknya. Nilai yang dimasukkan ke dalam suatu fungsi disebut parameter, yang dapat berupa berbagai jenis angka, string, dan sebagainya. Fungsi pada Visual Basic terdiri atas :

i) Fungsi string

Berguna untuk memanipulasi data string, yakni: menggabungkan nilai string (&), mengubah nilai string menjadi nilai ASCII (Asc()), mengubah nilai ASCII menjadi nilai String (Chr()), mengambil n karakter di sebelah kiri string (Left()), mengambil n karakter di sebelah kanan string (Right()), mengambil n karakter string dari suatu posisi yang ditetapkan (Mid()), mendapatkan jumlah karakter yang membentuk string (Len()), mengubah nilai numerik menjadi nilai string (Str()), mengubah nilai string menjadi nilai numerik (Val()), mengubah nilai string menjadi huruf besar (Ucase), mengubah nilai string menjadi huruf kecil (Lcase)

contoh:

- "telepon" & "genggam" -> hasilnya : telepon genggam

- Asc("A") + Asc("B") -> hasilnya : 129

- Chr("64") & Chr("65") & Chr("66") -> hasilnya: ABC

- Left("bagian",4) -> hasilnya: bagi

- Right("bagian",4) -> hasilnya: gian

- Mid("pembagian",4,4) -> hasilnya: bagi

- Len ("pembagian") -> hasilnya: 9

- Ucase ("peMbAgian") -> hasilnya: PEMBAGIAN

- Lcase ("PEmBAGiAN") -> hasilnya: pembagian

ii) Fungsi Matematik

Berguna untuk melakukan perhitungan ataupun manipulasi tertentu terhadap data numerik, contohnya :

· Abs() Berguna menghasilkan nilai absolut, contoh : Abs(-30) = 30

· Atn() Menghasilkan nilai arc tangen dalam radian, contoh : Atn(3.14) = 1.2626

· Cos() Menghasilkan nilai cosinus dalam radian, contoh : Cos(3.14) = -1

· Sin() Menghasilkan nilai sinus dalam radian

· Tan() Menghasilkan nilai tangen dalam radian

· Mod() Menghasilkan nilai sisa pembagian, contoh : 8 mod 3 = 2

· Sqr() Menghasilkan nilai akar bilangan, contoh : Sqr(16) = 4

· Round() Membulatkan bilangan cacah dalam jumlah desimal tertentu, Contoh : Round(33.3457, 2) = 33.34

· Hex() Menghasilkan nilai hexadesimal dari suatu bilangan Contoh : Hex(459) = 1CB

· Oct() Menghasilkan nilai oktal dari suatu bilangan Contoh : Oct(8) = 10

iii) Fungsi Tanggal dan Jam

Beberapa fungsi yang diperuntukkan khusus bagi varibel type Date adalah :

· Now Menghasilkan tanggal dan jam sistem komputer.

- Date Menghasilkan tanggal sistem komputer, contoh : Date menghasilkan tanggal sekarang, misalnya 17/01/2005

· Day() Menghasilkan angka tanggal dari tanggal, contoh : Day(Date) = 13

· Month() Menghasilkan angka bulan dari tanggal, contoh : Month(Date) = 1

· Year() Menghasilkan angka tahun dari tanggal, contoh : Year(#17/01/2005#) = 2005

· Time Menghasilkan jam sistem komputer, contohnya : Time menghasilkan 11:30:56

· Hour() Menghasilkan angka jam, contoh : Hour(#11:30:56#) = 8

· Minute() Menghasilkan angka menit, contoh : Minute(Time) = 30

· Second() Menghasilkan angka detik, contoh : Second(Time) = 56


E. Percabangan dengan If…Then…Else…pada Visual Basic

Percabangan berdasarkan kondisi suatu variabel atau nilai di dalam pemrograman Visual Basic dinyatakan dengan perintah:
If Then
<>
Else
<>
End If

Penulisan percabangan seperti di atas disebut dengan “kondisi dan keputusan”. Dalam pengertian yang umum bisa dikatakan: Jika memenuhi kondisi maka lakukan proses keputusan untuk kondisi benar, jika tidak lakukan proses keputusan untuk kondisi salah.

Contoh 1:
“Jika bilangan habis dibagi dua maka bilangan itu adalah bilangan genap, jika tidak
bilangan itu adalah bilangan ganjil”, yang dituliskan dengan:
If bilangan mod 8 = 0 Then
Ket = "Bilangan genap"
Else
Ket = "Bilangan ganjil"
End If

Contoh 2:
“Jika peminjaman lebih dari 7 hari maka dikenakan denda sebesar 2000”, yang
dituliskan dengan
If peminjaman>8 Then
Denda = 2000
Else
Denda = 0
End if

Penulisan percabangan di dalam Visual Basic mempunyai beberapa format, antara lain:
(1) Jika kondisi dipenuhi maka dilakukan proses yang hanya satu baris perintah
If kondisi Then
(2) Jika kondisi dipenuhi maka dilakukan proses yang lebih dari satu baris perintah
If kondisi Then

End If
(3) Jika kondisi dipenuhi maka dilakukan proses A, jika tidak dilakukan proses B
yang masing-masing hanya satu baris perintah
If kondisi Then Else
(4) Jika kondisi dipenuhi maka dilakukan proses A, jika tidak dilakukan proses B
yang masing-masing hanya satu baris perintah
If kondisi Then

Else

End If

Contoh 3:
“Jika nilai<60 maka tidak lulus, jika tidak lulus” dapat dituliskan dengan:
If Nilai<60 Then Ket="Lulus" Else Ket="Tidak Lulus"
Contoh 4:
“Jika pembelian > 50000 maka mendapat hadiah cangkir”, dapat dituliskan dengan:
If pembelian > 50000 Then Hadiah = "Cangkir"

F. Percabangan dengan If…Then…Else… Berantai

Percabangan tidak harus hanya memiliki satu kondisi, bisa juga percabangan memiliki banyak kondisi dengan banyak proses keputusan, hal ini sering dinamakan dengan percabangan berantai. Percabangan berantai secara umum ada dua macam yang dituliskan dengan:
(1) Jenis percabangan berantai dengan hanya satu kondisi yang bisa terpenuhi
If Then

else
if Then

else
if Then

else
If Then

else
--- Keputusan yang lain ---
end if
end if
end if
end if
(2) Jenis percabangan berantai dengan banyak kondisi yang harus dipenuhi.
If Then

if Then

if Then

Else
tidak dalam kondisi 3>
End If
End If
End If


Pemilihan dengan Select Case Visual Basic

Salah satu model percabangan adalah percabangan index atau yang dikenal dengan pemilihan berindex, dalam visual Basic percabangan index ini menggunakan Select Case dengan format:
Select Case
Case 0:

Case 1:

Case 2:

Case 3:

Case 4:

.......................
End Select

Contoh 1:

Berikut contoh program sederhana yang saya ambil dari sub prosedure program saya (program RKA&DPA, suatu program database untuk perhitungan rencana kerja anggaran dan dokumen pelaksanaan anggaran berdasarkan Permendagri no. 13 tahun 2006). Sub prosedure ini contoh dari model percabangan dengan pemilihan berindex untuk tombol-tombol navigasi, editing, penghapusan dan penambahan record data pada suatu tabel database.

Private Sub tombolDbase1_Klik(Index As Integer)
Select Case Index
Case 0 'menuju record pertama
keAwal
Case 1 'menuju record sebelumnya
keSebelum
Case 2 'menuju record berikutnya
keBerikut
Case 3 'menuju record terakhir
keAkhir
Case 4
tambahData
Case 5
PasifkanTombol
BukaKunciTeks
txtNama.SetFocus
edit = True
Case 7
hapusData
Case 8
simpanData
Case 9
KunciTeks
AktifkanTombol
With TabelOperator
If tambah = True Then
If .RecordCount > 0 Then
.MoveLast
tampilkandata
End If
tambah = False
End If
End With
If edit = True Then
edit = False
End If
End Select
End Sub

Contoh 2:

Prosedure berikut (juga dari program RKA&DPA) merupakan pemilihan berindex untuk mendeteksi apakah cursor mouse berada didalam atau diluar suatu tombol, dan melakukan perubahan gambar ataupun teks keterangan/informasi pada suatu tombol, apabila mouse berada didalam tombol, atau pada saat meninggalkan tombol maupun diluar tombol tertentu.

Private Sub gbr_MouseMove(index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
With gbr(index)
If X >= 0 And Y >= 0 And X <= .Width And Y <= .Height Then
SetCapture .hwnd
Select Case index
Case 0
.Picture = Img2(0).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menuju baris data pertama."
Case 1
.Picture = Img2(1).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menuju baris data sebelumnya."
Case 2
.Picture = Img2(2).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menuju baris data berikutnya."
Case 3
.Picture = Img2(3).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menuju baris data terakhir."
Case 4
.Picture = Img2(4).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Mengisi data baru."
Case 5
.Picture = Img2(5).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Mengubah/mengedit data yang tampil."
Case 6
.Picture = Img2(6).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Mencari data tertentu."
Case 7
.Picture = Img2(7).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menghapus data yang tampil."
Case 8
.Picture = Img2(8).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menyimpan ke databasis."
Case 9
.Picture = Img2(9).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Batal penyimpanan data ke databasis."
Case 10
.Picture = Img2(10).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Mencetak ke kertas."
Case 11
.Picture = Img2(11).Picture
UserControl.ParentControls.Item(0).teks2.Caption = "Menampilkan ke layar lembaran yang akan dicetak."
End Select
Else
ReleaseCapture
Select Case index
Case 0
.Picture = Img1(0).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 1
.Picture = Img1(1).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 2
.Picture = Img1(2).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 3
.Picture = Img1(3).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 4
.Picture = Img1(4).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 5
.Picture = Img1(5).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 6
.Picture = Img1(6).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 7
.Picture = Img1(7).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 8
.Picture = Img1(8).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 9
.Picture = Img1(9).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 10
.Picture = Img1(10).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
Case 11
.Picture = Img1(11).Picture
UserControl.ParentControls.Item(0).teks2.Caption = ""
End Select
End If
End With
End Sub

Private Sub gbr_MouseUp(index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)
With gbr(index)
Select Case index
Case 0
.Picture = Img1(0).Picture
Case 1
.Picture = Img1(1).Picture
Case 2
.Picture = Img1(2).Picture
Case 3
.Picture = Img1(3).Picture
Case 4
.Picture = Img1(4).Picture
Case 5
.Picture = Img1(5).Picture
Case 6
.Picture = Img1(6).Picture
Case 7
.Picture = Img1(7).Picture
Case 8
.Picture = Img1(8).Picture
Case 9
.Picture = Img1(9).Picture
Case 10
.Picture = Img1(10).Picture
Case 11
.Picture = Img1(11).Picture
End Select
End With
End Sub

H. Struktur Pengulangan (Looping)

Dalam pengontrolan jalannya suatu program looping digunakan untuk mengulang suatu blok perintah sampai kondisi tertentu. Proses ini akan terus bekerja selama kondisi yang dibandingkan bernilai benar (True), jika salah maka looping dihentikan dan dilanjutkan oleh perintah selanjutnya.
Struktur pengulangan yang sering digunakan antara lain adalah sebagai berikut :

a) For – Next

Digunakan untuk mengulang blok perintah dalam jumlah yang telah ditentukan, di dalamnya hanya perlu menuliskan nilai awal dan nilai akhir variabel penghitung.
Bentuk penulisannya adalah sebagai berikut :
For (Variabel integer) = (awal) to (akhir) [step (pertambahan)]
(blok perintah)
Next
Keterangan :
[step (pertambahan)] tidak selalu harus ada
Contoh :
Dim ulang as integer
For ulang = 0 to 30
Print ulang
Next
Akan menghasilkan tulisan dari “0” hingga “30” di form.

b) Do While – Loop

Digunakan untuk melakukan pengulangan terus menerus selama kondisi memenuhi syrat. Jika bernilai False akan berhenti.
Cara penulisannya adalah sebagai berikut :
Do While (kondisi)
(Ekspresi)
Loop
Contoh :
Dat = 1
Do while Dat< 20
Print Dat
Dat = Dat + 1
Loop
Jika nilai Dat sudah mencapai 19 maka perulangan akan berhenti.

I. For Each – Next

Digunakan untuk mengulang satu blok perintah bagi tiap elemen pada suatu koleksi objek. Contoh koleksi berupa kumpulan kontrol pada sebuah form, dimana masing-masing kontrol tersebut menjadi komponennya. Pemakaian struktur ini sangat cocok jika kita tidak mengetahui berapa jumlah komponen pada form atau lembar kerja.

Bentuk penulisannya adalah sebagai berikut :
For (komponen) in (group)
(ekspresi)
Next
Contoh penulisannya :
Private Sub Command1_Click
Dim ctrl as Object
For Each ctrl In Form1.Controls
ctrl.Enabled = False
Next
End Sub
Artinya saat event Command1 diklik maka semua kontrol yang berjenis objek di dalam form1, propertis enablednya diset false



0 komentar:

Post a Comment

 
TOP