Programming Style
1
Outline Materi
Programming Style
Struktur Aplikasi VB
Prefix
Struktur Kendali Program
Angka
String
Date Time
2
3
Struktur Aplikasi VB
4
Prefix
6
Struktur Kendali Program
Contoh penggunaan IF :
•Jika ada sisa gaji maka masukkan sisa gaji ke dalam tabungan
•Jika ada sisa gaji maka masukkan sisa gaji ke dalam tabungan, jika tidak maka
tidak menabung bulan ini
•JIka ada sisa gaji maka masukkan sisa gaji ke dalam tabungan dan anggap
sisa gaji tidak ada, jika tidak maka tidak menabung bulan ini
7
Struktur Kendali Program
Contoh penggunaan IF :
Jika ada sisa gaji maka masukkan sisa gaji ke dalam tabungan dan anggap sisa gaji tidak ada,
jika tidak maka tidak menabung bulan ini
8
Struktur Kendali Program
Contoh penggunaan IF :
Jika ada sisa gaji maka masukkan sisa gaji ke dalam tabungan, jika sisa gaji dibawah nol
(minus) maka ambil kekurangan tsb dari tabungan, selain itu tidak menabung bulan ini
9
Struktur Kendali Program
Contoh Select :
Decision Structures
Select Case Index
Select
Case 0
DoThis
Select Case Opr Case 1
Case Opr1 DoThat
dothis Case Else
Case Opr2 DoOther
dothat Ens Select
Case Opr3
dotheother Select Case Mid(“D4D4R”, 2, 1)
Case Else Case "0" To "9"
do nothing ' Ini angka
End Select Case "A" To "Z", "a" To "z"
' Ini huruf
Case ".", ",", ";", ":", "?"
' Ini tanda baca
Case Else
' Karakter aneh
10 End Select
Struktur Kendali Program
Loop Structures
While & Do
For
For counter = startvalue To endvalue [Step increment]
statements
Next [counter]
11
Struktur Kendali Program
Contoh Penggunaan While-Wend
Selama masih ada barang yang harus dibeli dalam daftar belanjaan, belanjalah untuk barang
tersebut, jika sudah selesai maka bayarlah
While DaftarBelanjaan>0
DoBelanjaItem
DaftarBelanjaan = DaftarBelanjaan – 1
Wend
DoBayar
12
Struktur Kendali Program
Contoh Penggunaan Do Until - Loop
Sampai tidak ada barang yang perlu dibeli dalam daftar belanjaan, maka belanjalah, jika
sudah bayarlah
Do Until DaftarBelanjaan=0
DoBelanjaItem
DaftarBelanjaan = DaftarBelanjaan – 1
Loop
DoBayar
13
Struktur Kendali Program
Contoh Penggunaan Do – Loop Until
Belanjalah barang yang perlu dibeli, sampai tidak ada lagi barang yang perlu dibeli dalam
daftar belanjaan, jika sudah selesai bayarlah
Do
DoBelanjaItem
DaftarBelanjaan = DaftarBelanjaan – 1
Loop Until DaftarBelanjaan=0
DoBayar
14
Struktur Kendali Program
Contoh Penggunaan For – Next
Belanjalah barang satu per satu berdasarkan barang dalam daftar belanjaan, jika sudah
bayarlah
For BarangKe=1 to DaftarBelanjaan
DoBelanjaItem
Next
DoBayar
15
Keluar dari Struktur Kendali
Exit Do
Exit For
Exit Sub
Exit Function
16
Angka
Operator Matematik
Penambahan dan Pengurangan
Operator “+”
Penambahan dua buah bilangan
Y=5+6, akan menghasilkan angka 11
Operator “-”
Pengurangan dua buah bilangan
Y=10-6, akan menghasilkan angka 4
Pembagian
Operator “/”
Pembagian yang menghasilkan nilai double (pecahan)
Y = 5/2, akan menghasilkan Y=2.5
Operator “\”
Pembagian yang menghasilkan nilai integer (bulat)
Y=5\2, akan menghasilkan Y=2
Operator “\” 4 kali lebih cepat dari operator “/” (Mengapa ?)
17
Angka
Perkalian dan Pangkat
Operator “*”
Digunakan untuk mengalikan dua buah bilangan
Y= 5*6, akan menghasilkan Y=30
Operator “^”
Digunakan untuk menghasilkan bilangan pangkat
Selalu menghasilkan tipe bilangan double
Relatif lebih lambat, untuk bilangan berpangkat kecil, pertimbangkan penggunaan
operator perkalian saja
Y=2^3, akan menghasilkan Y=8 (jika menggunakan perintah Y=2*2*2, akan 20 kali
lebih cepat)
18
Angka
Fungsi lainnya :
Mod (modulus atau sisa bagi)
Abs (menentukan nilai absolut suatu angka)
Sgn (nilai -1, 0 atau +1 untuk angka negatif, nol atau positif)
Sqr (menghitung akar suatu angka)
Int (membulatkan angka kebawah menjadi bilangan bulat)
Fix (membulatkan angka dengan membuang angka desimal)
Round (membulatkan angka ke desimal terdekat*)
Val (konversi dari text ke angka, bertipe double)
Pelajari juga fungsi : CInt, CLng, CSng, CDbl, CCur
*Khusus angka dengan desimal tepat 0.5, Round akan membulatkan keatas jika Ganjil, dan membulatkan ke
bawah jika angka tersebut Genap
19
Angka
Contoh penggunaan fungsi bilangan
Contoh :
5 mod 2 , hasilnya 1
4 mod 2 , hasilnya 0
Abs(-100) , hasilnya 100
Abs(100), hasilnya 100
Sgn(-15), hasilnya -1
Sgn(0), hasilnya 0
Sgn(1000), hasilnya +1
Sqr(5), hasilnya 2.23
Int(1.2) hasilnya 1
Int(-1.2) hasilnya 2
Fix(1.2) hasilnya 1
Fix(-1.2) hasilnya -1
Round(1.45) hasilnya 1
Round(1.55) hasilnya 2
Round(1.23456,4)hasilnya 1.2346
Round(1.5) hasilnya 2
Round(2.5) hasilnya 2, juga
20 Val(“11”) hasilnya 11
Angka
Operator Pembanding
Ada 6 operator pembanding :
= < <= > >= <>
Dapat diterapkan pada angka maupun string
Sering digunakan sebagai kondisi dalam seleksi
Menghasilkan nilai False(0) atau True(-1)
If (6>5)= -1 Then
Print “Benar”
End If
Sama artinya dengan,
22
Angka
Angka Random
Rnd , untuk menghasilkan angka random, nilai 0<= Rnd <1,
berkaitan dengan fungsi waktu
Result = Int(Rnd*Akhir)+Awal
(Random angka dari Awal sampai Akhir)
Randomize, untuk mengacak deret random yang dihasilkan oleh
Rnd
Contoh (Random angka dari 1 sampai 6):
Randomize
For i = 1 To 20
Print Int(Rnd * 6) + 1
Next
24
String
Fungsi Lainnya :
Left(s,n), menampilkan string s dari kiri sebanyak n
Right(s,n), menampilkan string s dari kanan sebanyak n
Mid(s,n,m), menampilkan string s mulai dari posisi n sebanyak m
Len(s), menampilkan jumlah karakter di dalam string s
LTrim(s), menghapus spasi di sebelah kiri string s
RTrim(s), menghapus spasi di sebelah kanan string s
Trim(s), menghapus spasi di sebelah kiri dan kanan string s
Asc(c), menghasilkan nilai ASCII dari karakter c
Chr(n), menghasilkan karakter dari sebuah nilai ASCII n
Space(n), menghasilkan deret spasi sebanyak n
String(n,c),menghasilkan deret karakter c sebanyak n
StrComp(s1,s2, vbTextCompare), menghasilkan nilai 0 jika string s1 dan string s2
berisi string yang sama, non case-sensitive
LCase(s) atau UCase(s), mengubah string s menjadi huruf besar atau kecil
StrConv(s,p), mengubah string s menjadi huruf besar, kecil atau proper sesuai
parameter p (vbUpperCase, vbLowerCase,vbProperCase)
25
String
Contoh penggunaan fungsi string
Contoh :
Left(“Morpheus”,4) , hasilnya “Morph”
Right(“Gandalf”,3), hasilnya “alf”
Mid(“Bruce”,2,3), hasilnya “ruc”
Len(“Scream”) hasilnya 6
LTrim(“ ayoo ”) hasilnya (“ayoo ”)
RTrim(“ ayoo ”) hasilnya (“ ayoo”)
Trim(“ ayoo ”) hasilnya (“ayoo”)
Asc(“A”) hasilnya 65
Chr(65) hasilnya “A”
Space(5) hasilnya “ ”
String(5,”.”) hasilnya “.....”
Strcomp(“vb”,”VB”,vbTextCompare)
hasilnya 0 (sama)
UCase(“besar”) hasilnya “BESAR”
LCase(“KECIL”) hasilnya “kecil”
StrConv(“new YORK”) hasilnya “New York”
26
String
Find dan Replace String
Instr([n],s1,s2), mencari posisi string s2 di dalam string s1
mulai dari posisi n (jika n tidak diisi maka secara default nilainya
0). Case-sensitive
s Like ptrn, mencocokkan apakah string s sesuai dengan pattern
ptrn. Tanda “?” mewakili karakter tunggal, tanda “*” mewakili 0
sampai banyak karakter, tanda “#” mewakili angka tunggal
sedangkan tanda “!” menyatakan negasi.
Option Compare Text, perintah ini jika dijalankan sebelum
perintah Like, maka perintah Like non case-sensitive
27
String
Replace(Source, Find, Replace, [Start], [Count],
[CompareMethod])
Mencari string Find di dalam string Source dan diganti dengan string
Replace, string Source diambil dari posisi Start dan penggantian dilakukan
sebanyak Count. (CompareMethod jika berisi “vbTextCompare” maka non
case-sensitive)
StrReverse(s), membalik urutan karakter di dalam string s
Split(s), memecah string s menjadi array string bedasarkan spasi
Join(As), menggabungkan kembali array string menjadi string
28
String
Replace("abc ABC abc", "ab", "123")
hasilnya "123c ABC 123c"
Replace("abc ABC abc", "ab", "123", 5, 1)
hasilnya "ABC 123c" Print
StrReverse(“bolak”) hasilnya “kalob”
Kata=Split(“Rujak Cingur”) hasilnya
kata(0)=“Rujak”, kata(1)=“Cingur”
Join(kata) hasilnya “Rujak Cingur”
29
Date Time
Date Time
Date dan Time dalam Vb bukan berupa fungsi, namun
adalah property dari sistem
30
Date Time
Date & Time Serial
Membentuk angka angka yang dimasukkan menjadi bertipe
Date atau Time
DateSerial (yyyy,mm,dd)
TimeSerial(hh,mm,ss)
31
Date Time
DatePart(interval, Date)
Untuk mengetahui informasi bagian terntentu dari tanggal
Contoh : DatePart(m,Now)
32
Date Time
DateAdd (interval, number,date)
Menambah tanggal date, sesuai setting interval sebanyak number
Contoh : DateAdd(m,3,Now)
33
Date Time
Format (date, ekspresi)
Format(Now,"dd-mm-yyyy")
Format(Now, "hh:mm:ss")
34
TERIMA KASIH....