Meilita Rahayu
TI 11 C
11.11.2486
FUNCTION
DENGAN RETURN VALUE BERUPA ARRAY
Terdapat form design seperti dibawah ini dengan
listing programnya
Public Class Form1
Private Function
fstat(ByVal ParamArray
args() As Object)
As Single()
Dim hasil(3) As Single
Dim i As Integer
For i = 0 To
UBound(args)
hasil(0) = hasil(0) + args(i)
If i = 0 Then
hasil(1) = args(i)
hasil(2) = args(i)
End If
If hasil(1) < args(i) Then
hasil(1) = args(i)
If
hasil(2) > args(i) Then hasil(2) = args(i)
Next i
Return hasil
End Function
Private Sub
Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button1.Click
Dim statistik As Single() = fstat(4, 5, 2, 7, 3, 10)
TextBox1.Text = statistik(0)
TextBox2.Text = statistik(1)
TextBox3.Text = statistik(2)
End Sub
End Class
Penjelasan dari program diatas
Ketentuannya
jika kita mengklik button, maka akan muncul total angka terbesar dan angka
terkecil. Disitu terdapat fungsi dengan nama fstat dengan menggunakan paramater ByVal
ParramArray, yang artinya melewatkan secara nilai dan berupa array yang bisa
menampung banyak elemen. Nama
parameternya yaitu args() dan bertipe data object sedang fstat nya single.
Private Function fstat(ByVal ParamArray
args() As Object)
As Single()
Dim hasil(3) As
Single
Dim
i As Integer
Pendeklarasian variabel secara lokal dengan nama variabel
“hasil (3)” berarti menampung 3 elemen yaitu hasil(0), hasil(1), dan hasil(2)
bertipe single dan variabel ”i” bertipe integer.
For i = 0 To UBound(args)
hasil(0) = hasil(0) + args(i)
Perulangan for berfungsi untuk melakukan
perulangan sebanyak Ubound (args) yaitu sampai batas atas array args.
If i = 0 Then
hasil(1) = args(i)
hasil(2) = args(i)
Jika i=0 maka hasil(1)=array args jumlah indeksnya,
begitu juga dengan hasil(2)
If hasil(1) < args(i) Then
hasil(1) = args(i)
If hasil(2) > args(i) Then
hasil(2) = args(i)
Jika hasil(1) <
args(i), args(i) elemen dari array fstat maka nilai hasil(1) diganti args(i),
dan jika hasil(2) > args(i) maka nilai hasil(2) diganti dengan args(i) yang
tadi. Sebagai contoh, hasil (1) sebelumnya nilainya 4, berarti dia memenuhi
syarat yang pertama yaitu 4 < 5 (args(i)) lalu nilai 4 diganti 5, begitupun
seterusnya. Dan hasil(2) yang nilainya 4 tidak lebih besar dari 6 tidak
memenuhi syarat yang kedua jadi hasil(2) nilainya tetap 4. Disitu ada fungsi
return, yang artinya akan mengembalikan nilai. Jadi si pemanggil meminta ke
fungsi tersebut dan langsung mengembalikan ke pemanggil yaitu hasil.
Private Sub Button1_Click(ByVal sender As
System.Object, ByVal
e As System.EventArgs)
Handles Button1.Click
Dim statistik As Single() = fstat(4, 5, 2, 7, 3, 10)
TextBox1.Text = statistik(0)
TextBox2.Text = statistik(1)
TextBox3.Text = statistik(2)
Perintah diatas untuk memanggil fungsi fstat yang disamakan
dengan statistik.
Textbox1 akan
dimunculkan total atau jumlah dari bilangan yang berada didalam kurung
Textbox2 akan dimunculkan nilai yang paling besar dari
bilangan tersebut
Textbox3 akan memuat nilai yang terkecil dari bilangan
tersebut
OVERLOADING
FUNCTION
Overloading function adalah function yang
mempunyai nama yang sama tetapi mempunyai parameter yang berbeda..
Contohnya ada pada program dibawah ini
Terdapat form design dengan 1 textbox dan 1 button
dengan listing program :
Public Class Form1
Function hitung(ByVal
bil1 As Integer,
ByVal bil2 As Integer) As Integer
hitung = bil1 + bil2
End Function
Function hitung(ByVal
bil1 As Integer,
ByVal bil2 As Integer, ByVal bil3 As Integer) As Integer
hitung = bil1 + bil2 + bil3
End Function
Private Sub
Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Button1.Click
TextBox1.Text
= hitung(1,2)
End Sub
End Class
Penjelasan
dari program diatas sebagai berikut
Program
diatas memiliki nama fungsi “hitung” tetapi memiliki jumlah parameter yang
berbeda, fungsi pertama terdapat 2 parameter dengan nama bil1,bil2 sedangkan
fungsi kedua mempunyai parameter 3 yaitu bil1,bil2,bil3

hitung = bil1 + bil2
End Function
Function
hitung(ByVal bil1 As
Integer, ByVal
bil2 As Integer,
ByVal bil3 As Integer) As Integer
hitung = bil1 + bil2 + bil3
End Function
Pemanggilan fungsi tersebut ditempatkan pada
button1
Private Sub Button1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button1.Click
TextBox1.Text = hitung(1,2)
Angka 1 dalam kurung menyatakan bil1 pada
parameter yang telah dideklarasikan sedangkan angka 2 mewakili bil2. Jika di
Run, hasilnya akan muncul seperti ini
Dalam texbox langsung muncul angka 3, karena hasil
penjumlahan bil1 dengan bil2 1+2=3. Lalu mengapa terdapat parameter
bil1,bil2,bil3? Coba kita tambahkan program dalam button1 seperti dibawah ini
Private
Sub Button1_Click(ByVal
sender As System.Object,
ByVal e As
System.EventArgs) Handles
Button1.Click
TextBox1.Text = hitung(1,2)
TextBox1.Text = hitung(1,2,3)
Terdapat 3 bilangan yang masing-masing mewakili
bil1,bil2,bil3..Setelah program di Run akan muncul
Terdapat angka 6 dalam textbox,itu karena
hasil penjumlahan 1+2+3 pada program yang kita tambahkan tadi.
Secara
singkat,walaupun 2 fungsi diatas mempunyai nama yang sama,
tetapi compiler tahu fungsi manakah yang harus dipanggil.
MACAM-MACAM FUNGSI BAWAAN
Dalam Visual Basic, fungsi bawaan
adalah suatu fungsi yang sudah ada dalam Visual Basic dan dapat digunakan
secara langsung. Ada sejumlah fungsi-fungsi bawaan dalam VB diantaranya adalah
fungsi untuk mengubah suatu tipe data String dari suatu TextBox menjadi tipe
data numerik agar dapat digunakan untuk melakukan operasi perhitungan, fungsi
yang berkaitan dengan matematika, dll.
1. Fungsi untuk mengkonversi ke integer
Ada tiga macam fungsi yang melakukan konversi ke tipe
integer,antara lain
- Int()
Yaitu pembulatan kebawah suatu nilai decimal
- Fix()
Yaitu pemotongan suatu nilai desimal menjadi integer
- Cint()
Yaitu pembulatan nilai desimal 0.5 atau lebih ke integer yang lebih dekat
2.
Fungsi untuk konversi tipe data
- Ccur()
Mengkonversi argumen menjadi tipe data currency
- CDbl()
Mengkonversi argumen menjadi tipe data Double(Presisi ganda)
- CLng()
Mengkonversi argumen menjadi tipe data long integer
- CSng()
Mengkonversi argumen menjadi tipe data single
- CStr()
Mengkonversi argumen menjadi tipe data string
- Ivar()
Mengkonversi argumen menjadi tipe data variant
3.
Fungsi-fungsi matematika
- Abs()
Mengembalikan nilai Absolut dari argumen
- Atn()
Mengembalikan nilai arc tangen dari argumen dalam bentuk radian
- Cos()
Mengembalikan nilai cosinus dari argumen dalam radian
- Exp()
Mengembalikan nilai Eksponensial dari argumen
- Log()
Mengembalikan nilai logaritma dari argumen
- Sin()
Mengembalikan nilai sinus dari argumen dalam radian
- Sqr()
Mengembalikan nilai akar dari argumen
- Tan()
Mengembalikan nilai tangen dari argumen dalam radian
4.
Fungsi Tanggal dan Waktu
Time : mencari tahu waktu saat ini atau
menetapkan waktu, tergantung format
pemakaiannya ( lihat contoh di bawah ini)
A$ = Time ‘hasil 18:16:35 AM
MyTime = #4:35:17 PM# ‘assign a time
Time = MyTime ‘set system time to MyTime
Now : merekam tanggal dan waktu sekarang
A$ = Now ‘hasil 10/8/02 18:16:35 AM
pemakaiannya ( lihat contoh di bawah ini)
A$ = Time ‘hasil 18:16:35 AM
MyTime = #4:35:17 PM# ‘assign a time
Time = MyTime ‘set system time to MyTime
Now : merekam tanggal dan waktu sekarang
A$ = Now ‘hasil 10/8/02 18:16:35 AM
Timer :
menghitung jumlah detik sejak tengah malam
Start = Timer ‘hasilnya 29991
Start = Timer ‘hasilnya 29991
Date :
menetapkan hari pada sistem komputer
Dim MyDate
MyDate = #February 12, 1985 # ‘Assign a date
Date = MyDate ‘Change system date
DateAdd : menghasilkan Varian(Date) yang berisi tanggal baru setelah suatu interval waktu yang ditetapkan dari tanggal lama.
Dim MyDate
MyDate = #February 12, 1985 # ‘Assign a date
Date = MyDate ‘Change system date
DateAdd : menghasilkan Varian(Date) yang berisi tanggal baru setelah suatu interval waktu yang ditetapkan dari tanggal lama.
Contoh pemakaiannya :
Dim FirstDate As_Date ‘Declare variables
Dim IntervalType As String
Dim Number As Integer
Dim Msg
FirstDate = InputBox(“Enter a date”)
Bynber = InputBox(“Enter number of months to add”)
Msg = “New date : “ & DateAdd(“m”, Number, FirstDate)
MsgBox Msg
Dim FirstDate As_Date ‘Declare variables
Dim IntervalType As String
Dim Number As Integer
Dim Msg
FirstDate = InputBox(“Enter a date”)
Bynber = InputBox(“Enter number of months to add”)
Msg = “New date : “ & DateAdd(“m”, Number, FirstDate)
MsgBox Msg
DateDiff : mencari interval waktu antara dua
tanggal
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]]) Dim TheDate As Date ‘declare variables
TheDate = InputBox(“Enter a date”) Msg = “Day from today : “ & DateDiff(“d”, Now, TheDate)
MsgBox Msg
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]]) Dim TheDate As Date ‘declare variables
TheDate = InputBox(“Enter a date”) Msg = “Day from today : “ & DateDiff(“d”, Now, TheDate)
MsgBox Msg
DateSerial : menghasilkan tanggal dengan
bulan/hari/tahun
MyDate = DateSerial(1969, 2, 12) ‘Hasil 2/12/69
MyDate = DateSerial(1969, 2, 12) ‘Hasil 2/12/69
DateValue : menghasilkan tanggal
MyDate = DateValue(“February 12, 1969”) ‘Hasil 2/12/69
MyDate = DateValue(“February 12, 1969”) ‘Hasil 2/12/69
Year : menghasilkan tahun sekarang
MyYear = Year(#2/12/1969#) ‘Hasil 1969
MyYear = Year(#2/12/1969#) ‘Hasil 1969
Month : menghasilkan bilangan integer yang
menunjukkan bulan
MyDate = #February 12, 1969# ‘Assign a date
MyMonth = Month(MyDate) ‘MyMonth = 2
MyDate = #February 12, 1969# ‘Assign a date
MyMonth = Month(MyDate) ‘MyMonth = 2
MonthName : menghasilkan teks yang
menunjukkan nama bulan
a$ = MonthName(1, True) ‘a$ = Jan
b$ = MonthName(1, False) ‘b$ = January
c$ = MonthName(1) ‘c$ = January
a$ = MonthName(1, True) ‘a$ = Jan
b$ = MonthName(1, False) ‘b$ = January
c$ = MonthName(1) ‘c$ = January
Day : menghasilkan integer yang
menunjukkan tanggal dari data date
MyDate = #February 12, 1969# ‘Assign a date
MyDay = Day(MyDate) ‘MyDay berisi 12
MyDate = #February 12, 1969# ‘Assign a date
MyDay = Day(MyDate) ‘MyDay berisi 12
Hour : menghasilkan integer yang
menunjukkan jam dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MyHour = Hour(MyTime) ‘MyHour berisi 16
MyTime = #4:35:17 PM# ‘Assign a time
MyHour = Hour(MyTime) ‘MyHour berisi 16
Minute : menghasilkan integer yang
menunjukkan menit dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MyMinute = Minute(MyTime) ‘MyMinute berisi 35
MyTime = #4:35:17 PM# ‘Assign a time
MyMinute = Minute(MyTime) ‘MyMinute berisi 35
Second : menghasilkan integer yang
menunjukkan detik dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MySecond = Second(MyTime) ‘MySecond berisi 17
MyTime = #4:35:17 PM# ‘Assign a time
MySecond = Second(MyTime) ‘MySecond berisi 17
TimeSerial : menghasilkan waktu dengan
jam/menit/detik
MyTime = TimeSerial(16, 35, 17) ‘Isinya 4:35:17 PM
MyTime = TimeSerial(16, 35, 17) ‘Isinya 4:35:17 PM
TimeValue : mengubah string waktu dari
pukul 0:00:00 (12:00:00 AM) sampai 23:59:59 (11:59:59 PM) menjadi data waktu
MyTime = TimeValue(“4:35:17 PM”) ‘Isinya 4:35:17 PM
MyTime = TimeValue(“0:00:00”) ‘Isinya 12:00:00 AM
MyTime = TimeValue(“4:35:17 PM”) ‘Isinya 4:35:17 PM
MyTime = TimeValue(“0:00:00”) ‘Isinya 12:00:00 AM
WeekDay : menghasilkan bilangan petunjuk
hari dari suatu tanggal
Hari = #February 12, 1969# ‘Hari Rabu
MyweekDay = Weekday(Hari) ‘MyweekDay isinya 4
Hari = #February 12, 1969# ‘Hari Rabu
MyweekDay = Weekday(Hari) ‘MyweekDay isinya 4
WeekDayName : menghasilkan teks nama
hari dalam satu minggu
WeekDayName(weekday, abbreviate,
firstdayofweek)
Hari = #2/12/1969# ‘Assign a date
MyWeekDay = Weekday(Hari) ‘MyWeekDay isinya 4
MyTime = WeekdayName(MyWeekDay) ‘Isinya Wednesday
Hari = #2/12/1969# ‘Assign a date
MyWeekDay = Weekday(Hari) ‘MyWeekDay isinya 4
MyTime = WeekdayName(MyWeekDay) ‘Isinya Wednesday
Tidak ada komentar:
Posting Komentar