PROCEDURE DAN FUNCTION PADA ALGORITMA

dokumen-dokumen yang mirip
Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

ALGORTIMA DAN PEMROGRAMAN

POKOK BAHASAN - 2 PEMROGRAMAN MODULAR

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan 3 Prosedur dan Fungsi

BAB I TUJUAN DAN LANDASAN TEORI

Algoritma Pemrograman

PERTEMUAN - 3 PEMROGRAMAN MODULAR

PROCEDURE DAN FUNCTION

FUNGSI. Blok fungsi juga diawali dengan kata cadangan Begin dan di akhiri dengan kata cadangan End dan titik koma.

Catatan Kuliah PAM 282 Pemrograman Komputer II

Dasar Komputer & Pemrograman 2A

Sesi/Perkuliahan ke: VI Tujuan Instruksional Khusus : 4. Pokok Bahasan : Deskripsi singkat : Referensi :

BAB V S U B R U T I N STMIK AMIKOM PURWOKERTO

ALGORITMA DAN STRUKTUR DATA 1

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

MATERI 5 Procedure. Pendeklarasian suatu procedure pada program : PROGRAM Judul_Program; PROCEDURE Nama_Prosedur; BEGIN. {Statemen prosedur} END.

Algoritma Pemrograman

STRUKTUR SELEKSI DAN PERULANGAN PADA ALGORITMA

menunjukkan tipe hasil dari fungsi. sqr, succ dan sebagainya. buat sendiri.

Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awa

Fungsi. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

PROCEDURE DAN FUNCTION PROCEDURE. Parameter dalam Prosedur: C/: PROGRAM CONTOH_2; VAR p,l,t,vol,panj : real;

dengan menyebutkan judul prosedurnya. dalam bentuk prosedur-prosedur. diperlukan.

Sesi/Perkuliahan ke: VII

Teori Algoritma. Struktur Algoritma

Konsep Dasar Pemrograman Pascal

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Algoritma Pemrograman

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Procedure. Pertemuan 10 Algoritma Pemrograman

Algoritma dan Struktur Data

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1

Function. Pertemuan 7 Jurusan Sistem Informasi Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Gunadarma 2015

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

Konsep Sorting dalam Pemrograman Saniman dan Muhammad Fathoni

MATERI 4 PENYELEKSIAN KONDISI

Algoritma Pemrograman

Belajar itu, Tidak harus menunggu materi dari guru Inisiatif Mencari itulah BELAJAR.

Brigida Arie Minartiningtyas, M.Kom

Algoritma Pemrograman

PROSEDUR DAN FUNGSI. Altien Jonathan Rindengan, S.Si., M.Kom

Materi ke-4 Praktikum Algoritma dan Pemrograman kelas Matematika PEMROGRAMAN MODULAR

Dasar Komputer & Pemrograman 2A

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

STRUKTUR BAHASA PEMROGRAMAN

Bab 1 Algoritma dan Pemrograman Tersruktur

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

- KONSEP MODULAR Pengertian Konsep Modular memecah program ke dalam modul-modul. Contoh modul yang sering digunakan adalah : Prosedur & Fungsi

Algoritma Pemrograman

Pemrograman Dasar M E T H O D / F U N G S I

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs.

SUBPROGRAM (SUBRUTIN)

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-3 - Hal 1

BAB I ALGORITMA DAN PEMROGRAMAN

PROCEDURE. Bentuk Umum : PROGRAM judul_program ; PROCEDURE judul_prosedur ; Begin Statement prosedur ; End ; Begin Statement program utama ; end.

FUNGSI MINGGU KE: 4 TUJUAN: Mahasiswa dapat memahami definisi fungsi. Mahasiswa dapat mendefinisikan fungsi. Mahasiswa dapat menggunakan fungsi.

OPERASI STRING. Delete(var s:string;index:integer;count:integer);

& PEMROGRAMAN. Alex De Kweldju, S.Kom D3 Teknik Komputer Fakultas Teknik Universitas Negeri Papua

Aturan Penulisan Algoritma Setiap Algoritma akan selalu terdiri dari tiga bagian yaitu : Judul (Header) Kamus Algoritma

Prosedur dan Fungsi. Kenapa Prosedur atau Fungsi?

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

PROSEDUR DAN FUNCTION

Algoritma Pemrograman

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Bab 1 Pengenalan Pascal 1 BAB I PENGENALAN PASCAL, TIPE-TIPE DATA PASCAL DAN STATEMEN DASAR PADA PASCAL TUJUAN PRAKTIKUM TEORI PENUNJANG

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

TIPE, NAMA, DAN NILAI

Array & Program Modular

KONSEP DASAR PEMROGRAMAN PASCAL

Algoritma & Pemrograman FUNGSI. Pengampu : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

PROSEDUR (Lanjutan) Parameter. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.

Pemrograman Prosedural FUNGSI (Subprogram) Tim Pengajar KU1071 Sem

Pengantar dalam Bahasa Pemrograman Turbo Pascal

Subprogram (dalam Bahasa C++ + Flowchart)

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-6 - Hal 21

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan

Prosedur dan Fungsi di Turbo Pascal

Algoritma,Flowchart, Konsep

FUNGSI DAN PROCEDURE

MODUL 3 ALGORITMA PEMROGRAMAN

Bab 2 DASAR-DASAR ALGORITMA

Subprogram. Definisi

Teori Algoritma TIPE DATA

Teori Algoritma. Algoritma Perulangan

Pengenalan Pascal. Tujuan Pembelajaran

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

Pertemuan 4 KONSEP TIPE DATA

Sub Program : Prosedur. Tim Pengajar KU1071 PTI A Semester I 2009/2010

PRAKTIKUM 8 SUB PROGRAM

Universitas Komputer Indonesia

Konsep Pemrograman. Bab 7. Fungsi1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

Pengenalan Pascal/DevPascal

Transkripsi:

PROCEDURE DAN FUNCTION PADA ALGORITMA Saniman dan Muhammad Fathoni ABSTRAK Sebuah program yang besar dapat dipecah-pecah menjadi bagian-bagian program yang lebih kecil. Penggalan program ini disebut modul atau subprogram atau rutin atau prosedur atau fungsi. Teknik pemrograman ini dinamakan teknik pemrograman modular atau teknik pemrograman prosedural. Fungsi merupakan potongan program yang tidak dapat berdiri sendiri, karena fungsi memberikan hasil berupa suatu nilai dan memerlukan suatu tempat untuk menampung nilai tersebut. Ada fungsi standart (fungsi terpasang) dan ada fungsi buatan (defined function). Struktur fungsi sama dengan struktur algoritma yaitu ada header yang berisi nama fungsi dan spesifikasi fungsi, bagian deklarasi, dan badan fungsi. Setiap fungsi mempunyai nama yang unik serta daftar parameter formal jika diperlukan. Kata Kunci: procedure, function, algoritma A. PROCEDURE (PROSEDUR) Sebuah program yang besar dapat dipecah-pecah menjadi bagian-bagian program yang lebih kecil. Penggalan program ini disebut modul atau subprogram atau rutin atau prosedur atau fungsi. Subprogram kadangkala cukup independen dari program utama sehingga programnya dapat dirancang tanpa mempertimbangkan konteks tempat ia digunakan. Subprogram ini dapat dieksekusi berulang-ulang sesuai keperluan. Teknik pemrograman ini dinamakan teknik pemrograman modular atau teknik pemrograman prosedural. Modularisasi program memberikan dua keuntungan yaitu : - Untuk menghindari penulisan teks program yang sama secara berulang. Dapat mengurangi panjangnya program. - Kemudahan menulis dan menemukan kesalahan (debug) program. - Menjadikan program lebih flexible. ** Program Utama...... CALL Proc1 Procedure Proc1 EXIT CALL Proc2 Procedure Proc2...... END EXIT Ada dua macam prosedur yaitu prosedur terpasang (standart) dan prosedur buatan pemakaian. Contoh prosedur Gambar standart 1. Mekanisme adalah ClrScr penggunaan --> membersihkan modul dari layar program utama 366 1

1. Mendefinisikan prosedur Pada dasarnya struktur prosedur sama dengan struktur algoritma yang sudah kita kenal, yaitu ada judul(header), deklarasi (keterangan) dan deskripsi (uraian). Procedure NAMA_PROSEDUR { keterangan spesifikasi singkat tentang prosedur} Deklarasi { semua nama yang dipakai dalam prosedur dan hanya berlaku lokal dalam prosedur} Deskripsi { badan prosedur berisikan kumpulan instruksi } Contoh Algoritma Procedure CETAK_HALO { mencetak string 'Halo' ke piranti keluaran} Deklarasi { tidak ada nama pengenal} Deskripsi write('halo') Gambar 2. Struktur Prosedur 2. Pemanggilan prosedur Prosedur bukan program yang berdiri sendiri, ia tidak dapat dieksekusi secara langsung. Isi prosedur hanya dapat diakses dengan cara memanggil namanya dari program pemanggilanya (program utama atau modul lain). Bentuk umum cara pemanggilan prosedur adalah sbb : NAMA_PROSEDUR; Ketika nama prosedur dipanggil maka kendali program berpindah secara otomatis ke prosedur yang dipanggil tersebut. Setelah isi prosedur selesai dieksekusi, kendali program kembali ke instruksi sesudah pemanggil prosedur. 3. Nama global dan nama lokal Nama-nama indentifier yang dideklarasikan di dalam bagian deklarasi prosedur, hanya dikenal di dalam badan prosedur itu saja. Nama-nama indentifier tersebut dikatakan bersifat "lokal" dan hanya dapat dikenali didalam prosedur itu sendiri, sedangkan nama-nama yang dideklarasikan di program utama bersifat "global" dan dapat dikenali didalam prosedur. 4. Parameter Kebanyakan program memerlukan pertukaran informasi antara prosedur/fungsi dan titik dimana ia dipanggil. Penggunaan parameter menawarkan mekanisme pertukaran informasi tersebut. Tiap item data ditransfer antara parameter aktual dan parameter formal yang bersesuaian. Parameter aktual adalah parameter yang disertakan pada waktu pemanggilan prosedur, sedangkan parameter formal adalah parameter yang dideklarasikan didalam header prosedur itu sendiri. Ketika prosedur itu dipanggil, parameter aktual menggantikan parameter formal. Tiap parameter aktual berpasangan dengan parameter formal yang bersesuaian. contoh : procedure SATU(input x,y : integer) { cth prosedure dgn parameter formal berjenis parameter masukan, 367

K.Awal : nilai x dan nilai y sudah terdefenisi K.Akhir : nilai x dan y masing-masing dinaikkan satu, lalu dicetak ke piranti keluaran } DEKLARASI: { TIDAK ADA} DESKRIPSI: x x + 1 y y + 1 write(x) write(y) 5. Algoritma PQR { cth program utama yg memanggil prosedur SATU } DEKLARASI: a, b : real procedure SATU(input x, y : integer ) {cth prosedur dgn parameter formal berjenis parameter masukan} DESKRIPSI: SATU(4,10) read(a, b) SATU(a, b) SATU(a+2, 20) - Masukan - Keluaran - Masukan / keluaran - Prosedur tanpa parameter - Prosedur dengan parameter - Parameter masukan dan parameter keluaran B. FUNCTION (FUNGSI) Fungsi merupakan potongan program yang tidak dapat berdiri sendiri, karena fungsi memberikan hasil berupa suatu nilai dan memerlukan suatu tempat untuk menampung nilai tersebut. Ada fungsi standart (fungsi terpasang) dan ada fungsi buatan (defined function). Contoh-contoh fungsi dan prosedur standart antara lain : Fungsi Numerik : 1. ABS(n) Memberikan nilai mutlak (harga positif) dari bilangan n. atau Integer; Hasil : sesuai dengan tipe-n 2. FRAC(n) Memperoleh bilangan pecahan dari suatu bilangan pecahan (real). 3. INT(n) Memperoleh bilangan bulat dari suatu bilangan pecahan (real). 368

4. TRUNC(n) Memperoleh bilangan bulat dari suatu bilangan pecahan (real). Hasil : LongInt 5. ROUND(n) Membulatkan bilangan pecahan (real) atau pembulatan. Hasil : LongInt 6. EXP(n) Memperoleh nilai exponential (e x (e=bilangan natural)). 7. LN(n) Memperoleh nilai logaritma natural. atau Integer 8. SQR(n) Memperoleh nilai kwadrat atau Integer Hasil : sesuai tipe argumen - n 9. SQRT(n) Memperoleh nilai akar kwadrat ( n) atau Integer 10. PI Memperoleh nilai konstanta bernilai 3.14 11. SIN(n) Memperoleh nilai sinus - n 360 o = 2Л radian 1 o = Л2/360 o = Л/180 o 12. COS(n) Memperoleh nilai cosinus - n 13. ARCTAN(n) Memperoleh nilai arcus tangen - n 14. ODD(n) Menentukan apakah n bilangan ganjil atau tidak (True/False) N : Word Hasil : Bolean 15. RANDOM(n) Memperoleh bilangan acak N : Word 0 hasil < n 16. RANDOM Menentukan bilangan acak 369

0 hasil < 1 Prosedur dan fungsi Library standart untuk string: 1. CHR(n) Memperoleh karakter dengan nomor ASCII-n N : Byte Hasil : Char 2. ORD(kar) Memperoleh nomor ASCII dari karakter kar kar : Char Hasil : Byte 3. CONCATE(string1, string2, string3,... ) Menggabungkan string1, string2, string3,... string1, string2, string3,... : String Hasil : String 4. LENGTH(st) Memperoleh jumlah karakter dari - st St : String Hasil : Byte 5. POS(st1, st2) Menentukan posisi st1 didalam st2 St1 : Char atau String Hasil : Byte 6. UPCASE(kar) Mengubah karakter huruf kecil menjadi huruf besar (berlaku hanya 1 karakter awal) kar : Char Hasil : Char 7. COPY(st, p, n) Menyalin isi st dimulai posisi p sebanyak n karakter st : String p,n : Byte Hasil : String 8. READKEY Meminta penekanan 1 tombol. Tombol yang diberikan tidak tampil di layar Hasil : Char 9. DELETE(st, p, n) Menghapus isi st dimulai posisi p sebanyak n karakter st : String p,n : Byte Hasil : String 10. INSERT(st1, st2, p) Menyisip st1 kedalam st2 pada posisi p. Hasilnya disimpam di dalam st2. st1, st2 : String p : Byte Hasil : String 11. STR(Bil[:k[:d]],BilSt) Mengubah bilangan numerik Bil menjadi bilangan string dengan format tertentu. Hasil disimpan dalam BilSt. k, d : Byte dimana K=lebar kolom, D=lebar desimal 370

BilSt : String 12. VAL(BilSt, Hasil, ValErr) Mengubah bilangan string menjadi bilangan numerik. BilSt : String (angka) atau Integer ValErr : Word {Program Kon1.Pas} Program Konversi1; Uses Crt; Var a : string; b : real; err: integer; ClrScr; a := '1234.5'; val(a,b,err); if err<>0 then write('salah') else write(b+2:10:2); Hasilnya 1236.5 Readln; End. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {Program Kon2.Pas} Program Konversi2; Uses Crt; Var a : string; b : real; err: integer; ClrScr; a := 'abc'; val(a,b,err); if err<>0 then write('salah') else write(b+2:10:2); Hasilnya : salah Readln; End. C. USER DEFINED FUNCTION Seperti halnya prosedur, struktur fungsi sama dengan struktur algoritma yaitu ada header yang berisi nama fungsi dan spesifikasi fungsi, bagian deklarasi, dan badan fungsi. Setiap fungsi mempunyai nama yang unik serta daftar parameter formal (jika ada). 371

Function Nama_Fungsi(dtr parameter formal) { keterangan spesifikasi singkat tentang fungsi} Deklarasi { semua nama yang dipakai dalam fungsi dan hanya berlaku lokal dalam fungsi} Deskripsi { badan fungsi berisikan kumpulan instruksi } Function F( input x:real) of real; { mengembalikan nilai F(x)=2x 2 +5x- 8} Deklarasi { tidak ada } Deskripsi return 2*x*x+5x-8 Kata cadangan FUNCTION mengawali bagian deklarasi fungsi diikuti oleh identifier yang merupakan nama dari fungsinya dan secara optional dapat diikuti oleh kumpulan parameter, tipe dari fungsinya dan diakhiri dengan titik koma. Contoh deklarasi fungsi : FUNCTION Pangkat(X, Y : real) : Real; Pemanggilan Fungsi Fungsi diakses dengan cara memanggil namanya dari program pemanggil diikuti dengan daftar parameter aktual (bila ada). Contoh pemanggilan fungsi (menggunakan notasi algoritmik): peubah Nama_Fungsi(daftar parameter aktual) atau Write(Nama_Fungsi(daftar parameter aktual)) Contoh dalam program : {Nama Program : Fungsi1.Pas } Program Faktorial; Uses Crt; Var f,x : Integer; Function Fak(x:integer) :integer; Var f:integer; u:byte; f:=1; for u:=1 to x do f:=f*u; fak:=f; End; { -- blok utama program -- } ClrScr; pemangilan fungsi Fak dgn parameter aktual x 372

write('masukan berapa faktorial : '); readln(x); write(x,' faktorial adalah ',Fak(x)); readln; End. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - { Nama Program : Fungsi2.Pas} Program Contoh_Fungsi; Uses Crt; Var X, Y, Z : Integer; { ----------- Bag. Prosedur ----------- } Procedure Inp_Bil(A, B : Integer); Write('Input Bilangan I : ');Readln(X); Write('Input Bilangan II : ');Readln(Y); End; { ----------- Bag. Fungsi ----------- } Function Tam_Bil(A, B : Integer) : Integer; Tam_Bil:=A+B; End; { ----------- Program Utama ----------- } Clrscr; Inp_Bil(X, Y); Write('Hasil dari Readln; End. pemangilan fungsi Tam_Bil dgn parameter aktual x dan y : ',X,' + ',Y,' = ',Tam_Bil(X, Y)); D. DAFTAR PUSTAKA Budi Sutedjo, S.Kom., MM dan Michael AN, S.Kom., 2004, Algoritma dan Teknik Pemrograman Konsep, Implementasi dan Aplikasi, Yogyakarta: ANDI. Fathul Wahid, 2004, Dasar-Dasar Algoritma dan Pemrograman, Yogyakarta: ANDI. Heri Sismoro, 2005, Pengantar Logika Informatika, Algoritma dan Pemrograman Komputer, Yogyakarta: ANDI. Jogiyanto H.M., 1997, Teori dan Aplikasi Program Komputer Bahasa Pascal Jilid 1, Yogyakarta: ANDI Offset. Yulikuspartono, S.Kom., 2004, Pengantar Logika dan Algoritma, Yogyakarta: ANDI. 373