Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Subprogram QBasic Ihsan Jatnika
2
Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami Penghematan kode program
3
Bentuk Subprogram Subrutin Prosedur subrutin (SUB Procedure)
Prosedur fungsi (FUNCTION Procedure)
4
Subrutin Namalabel dapat berupa nomor baris
Pernyataan1 Pernyataan2 … RETURN Namalabel dapat berupa nomor baris Untuk menjalankan subrutin, digunakan GOSUB GOSUB NamaLabel
5
Program Utama / Pemanggil Subrutin Subrutin … GOSUB NamaLabel PernyataanX NamaLabel : Pernyataan1 Pernyataan2 … RETURN 1 2 3
6
CLS GOSUB Garis FOR i = 1 TO 3 Print i NEXT i END Garis : PRINT STRING(80, “=”) RETURN Output : =============================== 1 2 3
7
Prosedur Fungsi (FUNCTION)
Subprogram yang apabila dipanggil dalam suatu pernyataan akan memberikan nilai balik (return value) Fungsi Argumen/ Parameter Nilai Balik
8
Definisi Fungsi (FUNCTION)
FUNCTION NamaFungsi[(DaftarParameter)] [BlokPernyataan] NamaFungsi = Ungkapan END FUNCTION NamaFungsi juga menentukan tipe nilai baliknya DaftarParameter bersifat optional Nilai balik dari fungsi sesuai dengan nilai Ungkapan
9
CLS Hasil = Pangkat(2, 3) PRINT “2 pangkat 3 = “; Hasil PRINT “2 pangkat 4 = “; Pangkat(2, 4) END FUNCTION Pangkat(a, b) Pangkat = a ^ b END FUNCTION Output : 2 pangkat 3 = 8 2 pangkat 4 = 16
10
Parameter Formal & Aktual
FUNCTION Pangkat(a, b) Pangkat = a ^ b END FUNCTION Parameter Formal Parameter Aktual Pangkat(2, 3) Pangkat(x, y)
11
CLS INPUT a, b PRINT Maks(a, b) PRINT Maks(b, a) END FUNCTION Maks(x, y) IF x > y then Maks = x Else Maks = y END IF END FUNCTION
12
Prosedur Subrutin (SUB)
Bisa memiliki parameter seperti pada fungsi (function) Tidak memerlukan perintah RETURN Setiap definisi prosedur subrutin akan diletakkan terpisah terhadap program utama pada saat diedit
13
Definisi Prosedur Subrutin
SUB NamaProsedur[(DaftarParameter)] BlokPernyataan END SUB Pernyataan untuk memanggil prosedur subrutin menggunakan CALL CALL NamaProsedur[(DaftarArgumen)]
14
Program Utama / Pemanggil Subrutin Prosedur … CALL Pros1(2) PernyataanX SUB Pros1(x) Pernyataan1 Pernyataan2 … END SUB 1 2 3
15
Variabel Lokal, Statis dan Global
Lokal, hanya berlaku dalam suatu prosedur Statis, hanya berlaku dalam suatu prosedur tetapi nilai yang tersimpan di dalamnya tetap dipertahankan seusai prosedur tersebut dipanggil Global, berlaku baik di program utama maupun di dalam suatu prosedur
16
CLS N$ = “Qbasic” PRINT Coba$(N$) PRINT N$ END FUNCTION Coba$(x$) N$ = X$ + “ Lokal” Coba$ = N$ END FUNCTION Output : QBasic Lokal Qbasic CLS PRINT Statis, N END FUNCTION Statis STATIC N N = N + 1 Statis = N END FUNCTION Output : 1 0 2 0 3 0
17
CLS N$ = “Qbasic” PRINT Coba$(N$) PRINT N$ END FUNCTION Coba$(x$) SHARED N$ N$ = X$ + “ Lokal” Coba$ = N$ END FUNCTION Output : QBasic Lokal
18
Melewatkan Parameter By Reference (secara referensi),
parameter dapat diubah dari dalam prosedur By Value (secara nilai), parameter tidak dapat diubah dari dalam prosedur
19
By Reference CLS Nilai% = 256 PRINT “Nilai = “; Nilai%
PRINT “Nilai + 1 = “; PlusSatu(Nilai%) FUNCTION PlusSatu(X%) X% = X% + 1 PlusSatu = X% END FUNCTION Nilai = 256 Nilai + 1 = 257 Nilai = 257 Nilai berubah
20
By Value CLS Nilai% = 256 PRINT “Nilai = “; Nilai%
PRINT “Nilai + 1 = “; PlusSatu((Nilai%)) FUNCTION PlusSatu(X%) X% = X% + 1 PlusSatu = X% END FUNCTION Nilai = 256 Nilai + 1 = 257 Nilai tidak berubah
21
EXIT SUB dan EXIT FUNCTION
EXIT SUB, keluar dari prosedur SUB EXIT FUNCTION, keluar dari prosedur FUNCTION
22
Rekursi Proses memanggil diri sendiri
Diterapkan pada prosedur (SUB maupun FUNCTION)
23
CLS INPUT “Masukkan bilangan N = “, N% PRINT N%;”! = “; Faktorial(N%) END FUNCTION Faktorial(X%) IF X% = 0 THEN Faktorial = 1 ELSE Faktorial = X% * Faktorial(X% - 1) END IF END FUNCTION Masukkan bilangan N = 3 3! = 6
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.