Modul 5
FUNGSI BANTU BAWAAN
Fungsi bantu adalah fasilitas yang disediakan untuk membantu
programmer dalam mengembangkan program. Dengan adanya fungsi
bantu bawaan programmer tidak perlu mengembangkan program untuk
melakukan hal yang sama.
Contoh :
Pada Qbasic telah tersedia fungsi bantu Sinus yang dapat
digunakan untuk mendapatkan nilai sinus dari suatu sudut dalam
radian.
Dim B As Double
B = Sin(30 * 3.14/180)
Akan mengisi nilai sinus sudut 30 derajat ke variabel B
Tanpa mengunakan fungsi bantu Sinus, programmer dapat
mengembangkan program sendiri untuk melakukan hal yang sama,
tetapi hal ini tentu saja menuntut pengetahuan yang lebih
mendalam.
Contoh :
Dengan menggunakan Ekspansi Trigonometris, suatu nilai Sinus
dapat diturunkan.
DIM S AS DOUBLE
DIM Sinus AS DOUBLE
S = 30 * 3.14 / 180 ' Sudut 30 derajat dalam radian
F = 1
Tanda = 1
Sinus = S
FOR I = 2 TO 11
F = F * I ' Menghitung nilai faktorial
IF I MOD 2 = 1 THEN ' Suku 3, 5, 7, 9, 11
Tanda = -Tanda ' Tanda -1, 1, -1, 1, dst
Sinus = Sinus + (S ^ I / F * Tanda)
END IF
NEXT I
B = Sinus
Potongan program diatas akan menghasilkan nilai Sinus 30 derajat
ke variabel B.
Dengan menggunakan fungsi bantu bawaan yang telah tersedia
pekerjaan programmer akan lebih terfokus pada program yang akan
dikembangkan.
FUNGSI BANTU STRING
LEFT$ (stringexpression,n)
Mengembalikan sejumlah karakter string dari suatu data string
dari sebelah kiri.
Contoh :
Print Left$("IndoProg",4) ' Akan mencetak Indo
RIGHT$ (stringexpression,n)
Mengembalikan sejumlah karakter string dari suatu data string
dari sebelah kanan.
Contoh :
Print Right$("IndoProg",4) ' Akan mencetak Prog
MID$(stringexpression,start[,length])
Mengembalikan sejumlah karakter string dari suatu string mulai
posisi tertentu.
Contoh :
Print Mid$("1234567890",3,4) ' Akan mencetak 3456
Print Mid$("1234567890",3) ' Akan mencetak 34567890
LTRIM$(stringexpression)
Mengembalikan string dengan menghilangkan spasi sebelah kiri.
Contoh :
A$ = " 100"
B$ = LTRIM$(A$)
Print A$ 'Akan mencetak 100
Print B$ 'Akan mencetak 100
RTRIM$(stringexpression)
Mengembalikan string dengan menghilangkan spasi sebelah kanan.
INSTR([start,]stringexpression1,stringexpression2)
Mencari posisi suatu string pada string lain (0 jika tidak
ditemukan).
Contoh :
Print INSTR("ABCD","B") 'Akan mencetak 2
Print INSTR(4,"ABCDABCD","A") 'Akan mencetak 5
Print INSTR("ABCD","a") 'Akan mencetak 0
LCASE$(stringexpression)
Mengembalikan suatu string yang telah diubah ke huruf kecil.
Contoh :
Print LCase$("IndoProg") 'Akan mencetak indoprog
UCASE$(stringexpression)
Mengembalikan string yang telah dibuat huruf besar.
Contoh :
Print UCase$("IndoProg") 'Akan mencetak INDOPROG
SPACE$(n)
Mengembalikan string yang berisi sejumlah spasi.
Contoh :
Print Space$(30), "IndoProg"
STRING$(m,n) atau STRING$(m,stringexpression)
Mengembalikan string yang mengandung sejumlah character yang
berulang.
Contoh :
Print String$(10,65) ' Akan mencetak AAAAAAAAAA
Print String$(10,"A") ' Akan mencetak AAAAAAAAAA
LEN(stringexpression)
Mengembalikan jumlah huruf suatu data string.
Contoh :
Print Len("Indonesia Programmer") ' Akan mencetak 20
FUNGSI BANTU KONVERSI
STR$(numeric-expression)
Mengembalikan string dari suatu expresi numeric
Contoh :
A = 100
B$ = Str$(A) 'B berisi "100"
VAL(stringexpression)
Mengembalikan numeric dari suatu expresi string
Contoh :
B$ = "100"
A = Val(B) 'A berisi 100
C = "IndoProg"
D = Val(C) 'D berisi 0
ASC(stringexpression)
Mengembalikan nilai ASCII dari suatu character.
Contoh :
Print Asc("A") 'Akan mencetak 65
CHR$(n)
Mengembalikan character ASCII n.
Contoh :
Print Chr$(65) 'Akan mencetak "A"
FUNGSI BANTU ARITMATIKA
SIN(numeric-expression)
COS(numeric-expression)
TAN(numeric-expression)
ATN(numeric-expression)
Mengembalikan nilai trigonometri.
numeric-expression dinyatakan dalam radian (sudut*3.14/180).
Cukup jelas
EXP(numeric-expression)
Mengembalikan nilai exponential.
Cukup jelas
LOG(numeric-expression)
Mengembalikan nilai logaritma natural.
Cukup jelas
SQR(numeric-expression)
Mengembalikan nilai akar pangkat dua.
Contoh :
Print Sqr(9) 'Akan mencetak 3
INT(numeric-expression)
Mengembalikan nilai bulat dari suatu desimal.
Contoh :
Print Int(3.5) 'Akan mencetak 3
FUNGSI BANTU RANDOM
RANDOMIZE [integer-expression]
RANDOMIZE TIMER
Memberikan bibit kepada nilai random.
RND
Mengembalikan nilai pseudo random antara 0 s/d < 1
Contoh :
Randomize Timer
Print Int(RND*100) 'Akan mencetak suatu bilangan
'random 0 s/d 99
FUNGSI BANTU WAKTU
DATE$
Mengembalikan tanggal system dalam string dengan format mm-dd-
yyyy.
TIME$
Mengembalikan waktu komputer dalam string dengan format hh:mm:ss.
TIMER
Mengembalikan jumlah detik sejak pukul 00:00:00
TIMER dapat digunakan pada perintah RANDOMIZE TIMER.
Contoh :
'PROGRAM TEBAK ANGKA
CLS
RANDOMIZE TIMER :HASIL = INT(RND*100)+1
N = 0
DO
N = N + 1
INPUT "MASUKKAN TEBAKAN ANDA (1-100)";TEBAK
IF TEBAK > HASIL THEN PRINT "TERLALU BESAR"
IF TEBAK < HASIL THEN PRINT "TERLALU KECIL"
LOOP UNTIL HASIL=TEBAK
PRINT "TEBAKAN ANDA SEBANYAK ";N;" KALI"
END
Latihan :
1. Bandingkan hasil Sinus dengan fungsi bantu Sin dan Ekspansi
Trigonometris.
2. Buatlah program putar String "Indonesia Programmer" dari kiri
ke kanan.
3. Bagaimana kalau putar dari kanan ke kiri.
4. Cobalah program tebak angka, berapa kali anda mampu
selesai menebaknya?