WoW dotA Allstars

This is Description

Selasa, 01 Mei 2012

Sub Routine dan Fungsi


Sub Routine
Sub routine merupakan kumpulan baris program yang dipanggil dengan statement GO SUB.

Sub routine digunakan untuk memanggil baris program yang sering dipanggil. Hal ini lebih

baik daripada menuliskan baris program yang sama berkali-kali.
Bentuk umum GO SUB :
GO SUB no_baris
Pemangggilan sub routine juga dapat menggunakan statement ON GO SUB. Bedanya
dengan ON GO SUB pemanggilan sub routine terjadi tergantung urutan nomor baris.
Bentuk umumnya :
ON ekspresi_integer GOSUB daftar_no_baris
Contoh :
ON 3 GO SUB 15, 12, 20
Sub routine yang dipanggil adalah subroutine baris 20 sesuai urutan daftar nomor baris.
Sub routine diakhiri dengan statement RETURN dan kemudian kembali ke baris program
berikut dari baris program yang memanggilnya. Bagian awal sub routine harus dituliskan
nomor baris atau labenya.
Contohnya :
CLS
DIM I AS INTEGER
PRINT "Broto", "1IB03", "Jakarta"
GO SUB 15
PRINT "Seno ", "1IB03", "Depok"
GO SUB 15
Page 55
END
15 PRINT STRING$(35 ,"-")
RETURN
Output program :
Broto 1IB03 Jakarta
---------------------------------
Seno 1IB03  Depok
---------------------------------
Setelah pemanggilan GO SUB pertama pada baris ke-3 untuk mencetak garis, kemudian
program mengerjakan baris ke-4 di bawah baris pemanggilan sub routine pertama untuk
mencetak data. Kemudian sub routine dipanggil kembali untuk mencetak garis. Setelah
RETURN mengerjakan statement END.

Fungsi
Fungsi adalah bagian dari program yang memberikan nilai keluaran. Nilai keluaran ini dapat
disimpan pada sebuah variabel, dicetak atau dimanipulasi. Sebuah fungsi dapat dikatakan
sebagai ekspresi karena mengandung nilai. Jenis nilai keluaran berbeda-beda tergantung tipe
datanya.
Fungsi dibagi menjadi dua yaitu fungsi yang sudah disediakan BASIC dan fungsi yang
sengaja diciptakan user (user defined). Kita tidak perlu mendeklarasikan atau
mendefinisikan fungsi yang telah ada pada BASIC kita tinggal memanggil dan mendapatkan
nilai keluarannya. Fungsi yang telah disediakan jumlahnya cukup banyak (untuk melihat
fungsi pada QBASIC pilih menu Help>Index. Lihat daftar kata reserved word yang diakhiri
kata 'Function'), contoh beberapa fungsi misalnya lihat tabel berikut :
Fungsi Sintaks Kegunaan
ABS ABS(ekspresi_numerik) Mengembalikan nilai absolut ekspresi numerik
COS COS(sudut) Mencari nilai kosinus sudut (dalam radian)
ASC ASC(ekspresi _karakter) Mencari kode ASCII suatu karakter
SQR SQR(ekspersi_numerik) Mencari akar suatu bilangan
Page 56
CINT CINT(ekspresi_numerik) Mengkonversi bilangan ke bentuk integer(bulat)
CSNG CSNG(ekspresi_numerik) Mengkonversi bilangan ke bentuk floating point Single
UCASE$ UCASE$(ekspresi_string) Mengubah tiap huruf dalam kata dengan huruf besar
Dsb
Bentuk umum untuk membuat suatu fungsi :
FUNCTION nama_fungsi [(parameter)]
[blok_statement]
nama_fungsi = ekspresi
[blok_statement]
END FUNCTION
Dalam QBASIC penulisan fungsi dilakukan dengan jendela terpisah dari modul utama. Untuk
berpindah-pindah dari modul utama ke jendela fungsi tekan tombol F2, lalau pilih pilihan
modul yang ada.
Bentuk lain selain fungsi diatas ada fungsi yang dideklarasikan dan ditulis bersama modul
utama. Biasanya digunakan untuk fungsi aritmatik. Sebelum dipanggil fungsi ini harus
didefinisikan di bagian deklarasi.
Bentuk umumnya:
DEF FNnama_fungsi [(paramenter)] = ekspresi
Atau
DEF FNnama_fungsi [(parameter)]
[Blok statement]
FNnama_fungsi = ekspresi
[Blok statement]
END DEF
Pemanggilan fungsi memberikan nilai kembalian yang bisa disimpan pada variabel,
dimanipulasi atau ditampilkan.
Page 57
Contoh program :
DIM a AS SINGLE, kal AS STRING
DEF FNkuadrat (x) = x^2
DEF FNfaktorial (n)
DIM Hasil AS DOUBLE
Hasil=1
For I%=1 to n
Hasil = Hasil * I%
NEXT I%
FNfaktorial = Hasil
END DEF
CLS
INPUT "Masukan Angka Positif > "; a
PRINT a; "! = "; FNfaktorial(a)
PRINT a; "^2 = "; FNkuadrat (a)
PRINT
INPUT "Masukan Kalimat > "; kal
PRINT kal; " >> "; besar(kal)
END
FUNCTION besar$ (kata$)
Besar$ = UCASE$ (kata$)
END FUNCTION
Output program :
Masukan Angka Positif > 5
5 ! = 120
5 ^2= 25
Masukan Kalimat > Seno Ganteng Loochh
Seno Ganteng Loochh >> Seno GANTENG LOOCHH

0 komentar:

Poskan Komentar