Anda di halaman 1dari 8

DIKTATKULIAH

ALGORITMAdanSTRUKTURDATAII

MODUL

Pertemuan2

Waktu

:135menit

TujuanPembelajaran

:Mahasiswamampumenjelaskanteknikpemrograman

menggunakanModul.

:Modul

SubstansiMateri

TabulasiKegiatanPerkuliahan

Tahap
Kegiatan

No

KegiatanPengajar

Pendahuluan 1.
2.

Penyajian
Materi

Penutup

1.
2.
3.
4.
5.
6.
1.
2.
3.

Membukapertemuan
Mengulangmateripertemuan
sebelumnya
Definisiprocedure
Kegunaanprocedure
Definisifungsi
Kegunaanfungsi
Contohprogramyangmenggunakan
proceduredanfungsi
Contohsoalproceduredanfungsi
Menyimpulkanmateripertemuan
Memberikantugaskecil
Menutuppertemuan

Kegiatan
Mahasiswa

Media&
Alat

Waktu

Menyimak
Bertanya

PapanTulis

20Menit

Menyimak
Bertanya
Menjawab
Pertanyaan

PapanTulis

80Menit

Menyimak

Papantulis

35Menit

MATERIKULIAH

PROCEDURE
Procedure berguna untuk mengumpulkan statementstatement yang dapat dijalankan
menjadi satu dalam suatu blok dan untuk menjalankannya kembali hanya dengan
menuliskan nama procedure yang menampungnya. Selain itu procedure juga banyak
dipakai untuk menampung barisbaris perintah yang sering dipakai dalam sebuah
program.
Untukmendeklarasikanproceduredapatdilakukandenganduacara,yaitu:

Headerproceduretanpaparameter

Headerproceduredenganparameter
V3/20092010 1

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

Headerproceduretanpaparameter
Bentukumum:

Procedure<NamaProcedure>;

Contoh:

ProcedureBuatKotak;

ProcedureInput;

ProcedureOutput;

Penulisan header procedure tanpa parameter diawali dengan kata baku Procedure dan
diikutidengannamaproceduresertadiakhiridengantandatitikkoma(;).
Berikutdigambarkanstrukturblokprogrambesertaproceduretanpaparameter.

Program<NamaProgram>

Procedure<NamaProcedure>

Gambar1.Strukturblokprogrambesertaproceduretanpaparameter

Contohprogrampemanfaatanproceduretanpaparameter
ProgramHitung;
Varp,q,x,y:byte;

ProcedureTambahKali;

Begin

P:=x+y;
V3/20092010 2

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

Q:=x*y;

Writeln(X+Y=,p);

Writeln(X*Y=,q);

End;

Begin

Write(X=);ReadLn(x);

Write(Y=);ReadLn(y);

TambahKali;{UntukmenjalankanprocedureTambahKali}

End.

DarilistingprogramdiatasdapatdilihatbahwaProcedureTambahKalihanyaberisibaris
barisprogramyangdapatdijalankan,danpadaprocedureitusendiritidakadahasilyang
ditampungnya.

Headerproceduredenganparameter
Bentukumum:

Procedure<NamaProcedure>(<daftarparameter>);

Contoh:

ProcedureHitung(a,b:byte;c:real);

ProcedureLingkaran(x,y,jari:integer);

Penulisan header procedure dengan parameter hamper sama dengan procedure tanpa
parameter yaitu diawali dengan kata baku Procedure lalu nama procedure dan diikuti
dengan parameterparameter (yang berada di dalam kurung) yang masingmasing
V3/20092010 3

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

dipisahkan dengan koma beserta dengan tipe datanya serta diakhiri dengan tanda titik
koma(;).

Berikutdigambarkanstrukturblokprogrambesertaproceduretanpaparameter.

Program<NamaProgram>

Procedure<NamaProcedure>(<daftarparameter>);

Gambar2.Strukturblokprogrambesertaproceduredenganparameter

Contohprogrampemanfaatanproceduredenganparameter
ProgramHitung;
Varp,q,x,y:byte;

ProcedureTambahKali(a,b:byte);

Begin

P:=x+y;

Q:=x*y;

Writeln(X+Y=,p);

Writeln(X*Y=,q);

End;

Begin{ProgramUtama}

Write(X=);ReadLn(x);

Write(Y=);ReadLn(y);

TambahKali(x,y);{UntukmenjalankanprocedureTambahKali}

End.
V3/20092010 4

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

FUNCTION
Function tidak hanya dapat dipakai untuk mengelompokan barisbaris perintah seperti
halnyaprocedure,tetapifunctionitusendiridapatmenampungnilaiyangdisimpanpada
namafunction.Haltersebutmerupakanperbedaanutamaantarafungsidanprosedur.
Sepertiprocedure,penulisanheaderfunctionpundapatdilakukandenganduacara(sesuai
dengankebutuhan),yaitu:

Headerfunctiontanpaparameter
Headerfunctiondenganparameter

HeaderFunctionTanpaParameter
Bentukumum:

Function<NamaFunction>:TipeData;

Contoh:

FunctionHitung:integer;

FunctionNama:string;

FunctionCheck:Boolean;

Header function selalu diawali dengan kata baku Function dan diikuti dengan nama
function serta tipe datanya yang dipisahkan dengan tanda titik dua (:). Berikut
digambarkanstrukturblokprogramsertafunctiontanpaparameter.

Program<NamaProgram>
Function<NamaFunction>:TipeData;

Gambar3.Blokprogramsertafunctiontanpaparameter
V3/20092010 5

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

Contohprogrampemanfaatanfunctiontanpaparameter
ProgramHitung;
Varx,y:byte;

FunctionTambah:byte;

Begin

Tambah:=x+y;

End;

FunctionKali:byte;

Begin

Kali:=x*y;

End;

Begin

Write(X=);ReadLn(x);

Write(Y=);ReadLn(y);

WriteLn(X+Y=,Tambah);

WriteLn(X*Y=,Kali);

End.

Functiontambahdankalipadacontohdiatasdapatmenampunghasildariperkalianantara
xdanysehinggavariablepdanqhanyadipakaisebagaipenampungsementara,sedangkan
pada procedure tidak dapat demikian. Inilah salah satu perbedaan function dengan
proceduresepertiyangtelahdijelaskansebelumnya

HeaderFunctiondenganParameter
Bentukumum:

Function<NamaFunction>(<DaftarParameter>):TipeData;
V3/20092010 6

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

Contoh:

FunctionHitung(a,b:byte):integer;

FunctionCheckPosisi(x,y:integer):Boolean;

Penulisan function dengan parameter tidak jauh berbeda dengan function tanpa
parameter,hanyasajaperluditambahkanparameterparameteryangditulisdidalam().
Berikutdigambarkanstrukturblokprogrambesertafunctiondenganparameter.

Program<NamaProgram>

Function<NamaFunction>(<DaftarParameter>):TipeData;

Gambar4.Strukturblokprogrambesertafunctiondenganparameter

Contohprogrampemanfaatanfunctiondenganparameter
ProgramHitung;
Varx,y:byte;

FunctionTambah(x,y:byte):byte;

Begin

Tambah:=x+y;

End;

FunctionKali(x,y:byte):byte;

Begin

Kali:=x*y;

End;

Begin
V3/20092010 7

DIKTATKULIAH
ALGORITMAdanSTRUKTURDATAII

MODUL

Write(X=);ReadLn(x);

Write(Y=);ReadLn(y);

WriteLn(X+Y=,Tambah(x,y));

WriteLn(X*Y=,Kali(x,y));

End.

PerbedaanantaraFunctiondanProcedure,sebagaiberikut:

Jikamembuatsuatuproceduremakaharusmendeklarasikandenganreservedword
Procedure,sedangkanjikainginmembuatsuatufunctionmakaharus
mendeklarasikandenganreservedwordFunction.

Functionharusdideklarasikandengantipenya,sedangkanproceduretidak.Halini
menunjukkanbahwapadafunctionitusendiridapatmenampungnilai,sedangkan
proceduretidak.

PersamaanantaraFunctiondanProcedure,terletakpadafungsinya,yaitu:

Memecah sebuah program besar menjadi beberapa bagian (modul) sehingga


memudahkanpembagiantugasjikaprogramtersebutdibuatolehlebihdari1orang.
Selainitujugamempermudahpengecekankesalahan/error.

Jikaterdapatperintahperintahyangsamayangakandipakaidalamsuatuprogram,
makasebaiknyaperintahperintahtersebutdipisahkandalamsuatumodulprogram
dengan menggunakan procedure, sehingga jika ingin memakainya hanya tinggal
memanggilnamaproceduretersebut.

Mempermudahprosesdokumentasi.

V3/20092010 8

Anda mungkin juga menyukai