pertemuan 02 programming style

35
1 Pertemuan 02 Programming Style Matakuliah : T0063/Pemrograman Visual Tahun : 2005 Versi : 1/0

Upload: golda

Post on 16-Jan-2016

60 views

Category:

Documents


0 download

DESCRIPTION

Pertemuan 02 Programming Style. Matakuliah: T0063/Pemrograman Visual Tahun: 2005 Versi: 1/0. Learning Outcomes. Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Merumuskan programming style di dalam bahasa pemrograman visual (C2). Outline Materi. Programming Style - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Pertemuan 02 Programming Style

1

Pertemuan 02Programming Style

Matakuliah : T0063/Pemrograman Visual

Tahun : 2005

Versi : 1/0

Page 2: Pertemuan 02 Programming Style

2

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa

akan mampu :

• Merumuskan programming style di dalam bahasa pemrograman visual (C2)

Page 3: Pertemuan 02 Programming Style

3

Outline Materi

Programming Style

• Struktur Aplikasi VB

• Prefix

• Struktur Kendali Program

• Angka

• String

• Date Time

Page 4: Pertemuan 02 Programming Style

4

Struktur Aplikasi VB

Struktur Aplikasi terdiri dari :• Form, layar window dimana user interface didesain• Controls, fitur grafikal di dalam form untuk interaksi pengguna (object di dalam

toolbox, contoh label, textbox, command button, dst)• Properties, setiap form atau control mempunyai karakteristik yang bisa diatur• Methods, Built-in procedure yang digunakan untuk menjelaskan aksi suatu object

tertentu• Event procedures, Custom procedure yang digunakan untuk menjelaskan aksi yang

dilakukan oleh object tertentu jika suatu event tertentu aktif. (Misal, jika TombolSimpan di Double Click)

• General procedures, Custom procedure yang menjelaskan aksi secara umum, tidak terikat pada suatu object tertentu.

• Modules, sekumpulan procedure, variable dan konstanta yang digunakan secara umum di dalam aplikasi.

Page 5: Pertemuan 02 Programming Style

5

Prefix

Object Prefix

Form frm

CommandButton cmd

Text box txt

Label lab

List Box lst

Combo Box cmb

Scroll Bar scr

Menu mnu

Option Button opt

Check Box chk

Picture Box pic

Frame fra

Grid grd

Graph gph

Ada aturan tidak tertulis yang digunakan oleh para programmer di seluruh dunia, yaitu penggunaan prefix untuk setiap variable/object yang digunakan dalam VB.

(lihat table disamping)

Contoh penamaan :

frmEntryData

txtNamaKaryawan

lblKodeDosen

Page 6: Pertemuan 02 Programming Style

6

Struktur Kendali Program

Decision Structures IF

If condition Then statement

If condition then     statements End If

If condition then     statements if condition true Else     statements if condition false end if

If condition then     statements if condition true ElseIf condition then    statements if condition true Else statements if condition false end if

Page 7: Pertemuan 02 Programming Style

7

Struktur Kendali Program

' Single line version, without Else clauseIf SisaGaji > 0 Then Tabungan = Tabungan + SisaGaji

' Single line version, with Else clauseIf SisaGaji > 0 Then Tabungan = Tabungan + SisaGaji Else

Tabungan = 0

' Single line, but with multiple statements separated by colons

If SisaGaji > 0 Then Tabungan = Tabungan + SisaGaji: SisaGaji = 0 Else Tabungan = 0

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

Page 8: Pertemuan 02 Programming Style

8

Struktur Kendali Program

' Multiline version of the above code (more readable)If SisaGaji > 0 Then Tabungan = Tabungan + SisaGaji SisaGaji = 0 Else Tabungan = 0 End If

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

Page 9: Pertemuan 02 Programming Style

9

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

' An example of If..ElseIf..Else blockIf SisaGaji > 0 Then Tabungan = Tabungan +SisaGajiElseIf SisaGaji < 0 Then Tabungan = Tabungan - SisaGajiElse Tabungan = 0End If

Page 10: Pertemuan 02 Programming Style

10

Struktur Kendali Program

Decision Structures Select

Contoh Select :

Select Case IndexCase 0

DoThisCase 1

DoThatCase Else

DoOtherEns Select

Select Case Opr         Case Opr1             dothis         Case Opr2             dothat         Case Opr3             dotheother         Case Else             do nothing End Select

Select Case Mid(“D4D4R”, 2, 1) Case "0" To "9" ' Ini angka Case "A" To "Z", "a" To "z" ' Ini huruf Case ".", ",", ";", ":", "?" ' Ini tanda baca Case Else ' Karakter aneh End Select

Page 11: Pertemuan 02 Programming Style

11

Struktur Kendali Program

Loop Structures

While & Do

For

Bentuk 1:While condition

statementsstatements

Wend

Bentuk 2:Do Until condition

statementsstatements

Loop

Bentuk 3:Do

statementsstatements

Loop Until condition

For counter = startvalue To endvalue [Step increment] statements

Next [counter]

Page 12: Pertemuan 02 Programming Style

12

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

Page 13: Pertemuan 02 Programming Style

13

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

Page 14: Pertemuan 02 Programming Style

14

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

Page 15: Pertemuan 02 Programming Style

15

Struktur Kendali Program

Contoh Penggunaan For – Next

Belanjalah barang satu per satu berdasarkan barang dalam daftar belanjaan, jika sudah bayarlah

For digunakan untuk Array

For BarangKe=1 to DaftarBelanjaan

DoBelanjaItem

Next

DoBayar

Dim ctrl As Control For Each ctrl In Controls ctrl.Caption = "OIIIII" Next

Page 16: Pertemuan 02 Programming Style

16

Keluar dari Struktur Kendali

• Exit Do

• Exit For

• Exit Sub

• Exit Function

Page 17: Pertemuan 02 Programming Style

17

Angka

Operator Matematik• Penambahan dan Pengurangan

– Operator “+”• Penambahan dua buah bilanganY=5+6, akan menghasilkan angka 11

– Operator “-”• Pengurangan dua buah bilanganY=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 ?)

Page 18: Pertemuan 02 Programming Style

18

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)

Page 19: Pertemuan 02 Programming Style

19

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

Page 20: Pertemuan 02 Programming Style

20

Angka

• Contoh penggunaan fungsi bilangan

Contoh :5 mod 2 , hasilnya 14 mod 2 , hasilnya 0Abs(-100) , hasilnya 100Abs(100), hasilnya 100Sgn(-15), hasilnya -1Sgn(0), hasilnya 0Sgn(1000), hasilnya +1Sqr(5), hasilnya 2.23Int(1.2) hasilnya 1Int(-1.2) hasilnya 2Fix(1.2) hasilnya 1Fix(-1.2) hasilnya -1Round(1.45) hasilnya 1Round(1.55) hasilnya 2Round(1.23456,4)hasilnya 1.2346Round(1.5) hasilnya 2Round(2.5) hasilnya 2, jugaVal(“11”) hasilnya 11

Page 21: Pertemuan 02 Programming Style

21

Angka

Operator PembandingAda 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,

If (6>5)= True ThenPrint “Benar”

End If

Page 22: Pertemuan 02 Programming Style

22

Angka

Format Angka

Digunakan untuk mengatur tampilan angka, hasilnya

berupa string. Syntax :

Format(Expression, [Format], [FirstDayOfWeek As VbDayOfWeek = vbSunday], [FirstWeekOfYear As VbFirstWeekOfYear = vbFirstJan1])

Format(1234.567, "#,##0.00") hasilnya "1,234.57"Format(0.234, "#.#%") hasilnya "23.4%"Format(12345.67, "#.###E+") hasilnya "1.235E+4"Format(12345.67, "#.###E-") hasilnya "1.235E4“

Page 23: Pertemuan 02 Programming Style

23

Angka

• Angka Random– Rnd , untuk menghasilkan angka random, nilai 0<=

Rnd <1, berkaitan dengan fungsi waktuResult = 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):

RandomizeFor i = 1 To 20 Print Int(Rnd * 6) + 1Next

(Bedakan jika perintah Randomize dihilangkan!)

Page 24: Pertemuan 02 Programming Style

24

String

Operator dan Fungsi Dasar String

• Concatenation– Operator “&”– Untuk menggabungkan beberapa string

“Johny” & ”123”, menjadi “Johny123”

Page 25: Pertemuan 02 Programming Style

25

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)

Page 26: Pertemuan 02 Programming Style

26

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 6LTrim(“ ayoo ”) hasilnya (“ayoo ”)RTrim(“ ayoo ”) hasilnya (“ ayoo”)Trim(“ ayoo ”) hasilnya (“ayoo”)Asc(“A”) hasilnya 65Chr(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”

Page 27: Pertemuan 02 Programming Style

27

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

Page 28: Pertemuan 02 Programming Style

28

String

InStr("abcde ABCDE", "ABC") hasilnya 7InStr(8, "abcde ABCDE", "ABC") hasilnya 0"InStr(1, "abcde ABCDE", "ABC", vbTextCompare)

hasilnya 1"AB123" Like "AB###" hasilnya True"ABCDEFGHI-VWXYZ" Like "ABC*XYZ" hasilnya True"12w4X" Like "1???X" hasilnya True"A123" Like "[A-C]###“ hasilnya True"OOP" Like "[AEIOU][A-Z][A-Z]“ hasilnya True"K12BC" Like "[!0-9]??*" hasilnya True

Page 29: Pertemuan 02 Programming Style

29

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

Page 30: Pertemuan 02 Programming Style

30

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”

Page 31: Pertemuan 02 Programming Style

31

Date Time

• Date Time• Date dan Time dalam Vb bukan berupa fungsi,

namun adalah property dari sistem

Waktu = Date & " " & Time

Date = "10/14/98"

Date = "October 14, 1998"

Page 32: Pertemuan 02 Programming Style

32

Date Time

• Date & Time Serial

Membentuk angka angka yang dimasukkan menjadi bertipe Date atau Time– DateSerial (yyyy,mm,dd)– TimeSerial(hh,mm,ss)

Page 33: Pertemuan 02 Programming Style

33

Date Time

• DatePart(interval, Date)Untuk mengetahui informasi bagian terntentu dari tanggal

Contoh : DatePart(m,Now)

Page 34: Pertemuan 02 Programming Style

34

Date Time

• DateAdd (interval, number,date)Menambah tanggal date, sesuai setting interval sebanyak

number

Contoh : DateAdd(m,3,Now)

• DateDiff(interval, startdate, enddate )Menghitung selisih tanggal startdate dan enddate

berdasarkan setting interval

Contoh : DateDiff(m,”01/01/2000”,Now)

Page 35: Pertemuan 02 Programming Style

35

Date Time

• Format (date, ekspresi)

Format(Now,"dd-mm-yyyy")

Format(Now, "hh:mm:ss")