Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami.

Presentasi serupa


Presentasi berjudul: "Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami."— Transcript presentasi:

1 Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami Penghematan kode program

2 Bentuk Subprogram Subrutin Prosedur subrutin (SUB Procedure)
Prosedur fungsi (FUNCTION Procedure)

3 Subrutin Namalabel dapat berupa nomor baris
Pernyataan1 Pernyataan2 RETURN Namalabel dapat berupa nomor baris Untuk menjalankan subrutin, digunakan GOSUB GOSUB NamaLabel

4 Program Utama / Pemanggil Subrutin Subrutin GOSUB NamaLabel PernyataanX NamaLabel : Pernyataan1 Pernyataan2 RETURN 1 2 3

5 CLS GOSUB Garis FOR i = 1 TO 3 Print i NEXT i END Garis : PRINT STRING(80, “=”) RETURN Output : =============================== 1 2 3

6 Prosedur Fungsi (FUNCTION)
Subprogram yang apabila dipanggil dalam suatu pernyataan akan memberikan nilai balik (return value) Fungsi Argumen/ Parameter Nilai Balik

7 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

8 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

9 Parameter Formal & Aktual
FUNCTION Pangkat(a, b) Pangkat = a ^ b END FUNCTION Parameter Formal Parameter Aktual Pangkat(2, 3) Pangkat(x, y)

10 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

11 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

12 Definisi Prosedur Subrutin
SUB NamaProsedur[(DaftarParameter)] BlokPernyataan END SUB Pernyataan untuk memanggil prosedur subrutin menggunakan CALL CALL NamaProsedur[(DaftarArgumen)]

13 Program Utama / Pemanggil Subrutin Prosedur CALL Pros1(2) PernyataanX SUB Pros1(x) Pernyataan1 Pernyataan2 END SUB 1 2 3

14 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

15 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

16 CLS N$ = “Qbasic” PRINT Coba$(N$) PRINT N$ END FUNCTION Coba$(x$) SHARED N$ N$ = X$ + “ Lokal” Coba$ = N$ END FUNCTION Output : QBasic Lokal

17 Melewatkan Parameter By Reference (secara referensi),
parameter dapat diubah dari dalam prosedur By Value (secara nilai), parameter tidak dapat diubah dari dalam prosedur

18 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

19 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

20 EXIT SUB dan EXIT FUNCTION
EXIT SUB, keluar dari prosedur SUB EXIT FUNCTION, keluar dari prosedur FUNCTION

21 Rekursi Proses memanggil diri sendiri
Diterapkan pada prosedur (SUB maupun FUNCTION)

22 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


Download ppt "Subprogram Program kecil yang melakukan tugas tertentu dan merupakan bagian dari program secara keseluruhan Keuntungan : Mudah dikodekan Mudah dipahami."

Presentasi serupa


Iklan oleh Google