PEMROGRAMAN TERSTRUKTUR Prosedur By Nia Saurina SST M
PEMROGRAMAN TERSTRUKTUR Prosedur By Nia Saurina SST. , M. Kom
Prosedur • Sebuah blok program tersendiri yang merupakan bagian dari program lain yang lebih besar. • Prosedur dapat dipanggil oleh program utamanya ataupun oleh prosedur lain yang juga merupakan bagian dari program utamanya (masih dalam satu kode program) • Sebuah program yang memiliki prosedur biasanya terdiri dari satu atau lebih prosedur dan satu program utama.
Ilustrasi Prosedur pada Kode Program
Keuntungan Prosedur • Memecah-mecah program menjadi lebih sederhana, misalnya jika diperlukan proses pencarian berkali jika hanya terdiri dari satu program utama tanpa prosedur, maka kode program pencarian akan beberapa kali ditulis ulang dan haslnya dapat memperbesar ukuran file. • Blok program yang digunakan jelas jika akan digunakan pada program lain, cukup dengan mengkopi satu prosedur dan meletakkannya pada program lain yang membutuhkannya dan program lain tersebut tinggal memanggil prosedur tersebut.
Perbedaan Penggunaan Prosedur
Deklarasi Prosedur • Pada bahasa pemrograman JAVA tidak mengenal prosedur, karena merupakan bahasa pemrograman berorientasi obyek. • JAVA memiliki konsep yang hampir mirip dengan prosedur yang disebut sebagai metode
Cara Memanggil Prosedur Bahasa Algoritmik nama_prosedur(variable_masukan) cari. Nama(nama) JAVA nama_prosedur(variable_masukan); cari. Nama(nama);
Contoh Mendeklarasikan Prosedur Bahasa Algoritmik JAVA procedure nama_prosedur (input : tipe_data variable_input 1, …. …, tipe_data variable_inputn) {proses} …………………… {end procedure} public void nama_metode(tipe_data variable_input 1, …. , tipe_data variable_inputn) { //proses ………………………… } procedure cari. Nama(input: string nama) {proses} …………………………. . {end procedure} public void cari. Nama(String nama) { //proses …………………………. . }
Cara Mendeklarasikan Prosedur Bahasa Algoritmik procedure nama_procedure (input : tipe_data nama_variabel) procedure nama_procedure (output : tipe_data nama_variabel) Komentar Merupakan prosedur yang hanya memiliki variable sebagai masukan sehingga setelah prosedur dijalankan tidak ada nilai variable masukan manapun yang berubah, misalnya: procedure tampil (input : integer a) write(“nilai a adalah : “, a”) {end procedure} Selesai prosedur dijalankan, nilai a tidak mengalami perubahan Merupakan prosedur yang memiliki variable masukan, tapi nilai dari variabelmasukan mengalami perubahan karena proses dalam prosedur setelah prosedur dijalankan tanpa menggunakan nilai dari bariabel masukan, misalnya: procedure hasil (output : integer a) a <- 2 + 3 {end procedure} Selesai prosedur dijalankan, nilai a mengalami perubahan menjadi 5 hasl dari 2 + 3
Cara Mendeklarasikan Prosedur procedure nama_procedure (input : tipe_data nama_variabel, output: tipe_data nama_variabel) procedure nama_procedure (input / output : tipoe_data nama_variabel Merupakan prosedur yang memiliki variable masukan yang tidak berubah nilainya dan yang berubah nilainya setelah prosedur dijalankan, misalnya: procedure hasil (input : integer a, output: integer b) b <- a + 3 {end procedure} Selesai prosedur dijalankan, nilai a tidak mengalami perubahan sedangkan nilai b mengalami perubahan Merupakan prosedur yang memiliki variable masukan, tapi nilai dari variable masukan mengalami perubahan karena proses dalam prosedur setelah prosedur dijalankan dengan menggunakan nilai dari variable masukan, misalnya: procedure hasil (input / output : integer a) a <- a + 3 {end procedure} Selesai prosedur dijalankan, nilai a mengalami perubahan
Membuat Program Implementasi • Membuat langkah-langkah dengan bahasa manusia dan mengubahnya menjadi bahasa algoritmik Bahasa Manusia Bahasa Algoritmik Mendekklarasikan prosedur tulis procedure tulis (input: string kata) Menuliskan kata masukan ke layar pada prosedur write kata Mendeklarasikan program utama, mendeklarasikan procedure main (input) variable kata, dan memanggil prosedur String kata <- “program utama prosedur tulis” tulis (kata)
Membuat Program Implementasi • Mengubah bahasa algoritmik menjadi bahasa pemrograman JAVA Bahasa Algoritmik procedure tulis (input: string kata) write kata {end procedure} procedure main (input) String kata <- “program utama prosedur tulis” tulis (kata) {end procedure} JAVA class Prosedur { public static void tulis (string kata) { system. out. printin (kata); } public static void main (string[] args) { string kata = “program utama prosedur tulis”; tulis(kata); } } • Lakukan kompilasi dan eksekusi program
Parameter dalam Prosedur • Variabel masukan (input) dari sebuah prosedur procedure hitung. Jumlah (input : integer hasil, integer operan 1, integer operan 2) hasil <- operan 1 + operan 2 {end procedure} • hasil, operan 1 dan operan 2 adalah parameter dalam prosedur hitung. Jumlah • Jumlah parameter tidak terbatas • Masukan prosedur hitung. Jumlah ( 1, 2, , , 3); // prosedur berupa nilai hitung. Jumlah ( a, b, , , c); // prosedur berupa variabel
Parameter pass by value • Pemrosesan di dalam prosedur, bahwa parameter hanya dipakai nilainya saja pada proses yang ada di dalam prosedur sehingga tidak ada nilai dari parameter yang berubah setelah prosedur dijalankan
Parameter pass by reference • Pemrosesan parameter di dalam sebuah prosedur bahwa yang dimasukkan di dalam prosedur adalah tempat dari variabel yang menjadi parameter sehingga dapat terjadi perubahan nilai variabel yang menjadi parameter
Contoh program • Membuat langkah-langkah dengan bahasa manusia dan mengubahnya menjadi bahasa algoritmik Bahasa Manusia Bahasa Algoritmik Mendeklarasikan prosedur hitung yang menghitung procedure hitung (input: integer a, integer b, hasil penjumlahan masukan dan menuliskan output : integer c) { hasilnya ke layar c <- a + b write(“dalam prosedur : hasil penjumlahan : “, c”); {end procedure} Mendekklarasikan variable-variabel algoritma Integer operan 1 <-2 utama sekaligus mengisi nilainya Integer operan 2 <-3 Integer hasil <-0 Memanggil prosedur hitung( operan 1, operan 2, hasil) Menuliskan variable hasil ke layar write (“setelah prosedur : nilai hasil : “, hasil”)
Contoh program • Mengubah bahasa algoritmik menjadi bahasa pemrograman JAVA Bahasa Algoritmik procedure hitung (input: integer a, integer b, output : integer c) { c <- a + b write(“dalam prosedur : hasil penjumlahan : “, c”); {end procedure} {algoritma utama} Integer operan 1 <-2 Integer operan 2 <-3 Integer hasil <-0 hitung( operan 1, operan 2, hasil) write (“setelah prosedur : nilai hasil : “, hasil”) JAVA class Parameter { public static void hitung (int a, int b, int c){ c = a + b; system. out. printin(“dalam prosedur : hasil penjumlahan : “ + c); } public static void main (string[] args){ int operan 1 = 2; int operan 2 = 3; int hasil = 0; htung (operan 1, operan 2, hasil); sustem. out. printin (“setelah prosedur : nilai hasil: “ + hasil”); } }
• Lakukan kompilasi dan ekskusi program maka akan menghasilkan keluaran Dalam prosedur : hasil Penjumlahan : 5 Setelah prosedur : nilai hasil : 0
Prosedur Standar • Prosedur yang dapat langsung dipakai tanpa mendeklarasikannya karena telah ada pustaka (library), yang perlu dilakukan adalah menyertakan pustaka yang berisi prosedur standar yang dibutuhkan pada kode program dengan kata kunci import. • Untuk mengetahui prosedur apa saja yang dapat dipakai, perlu dilakukan eksplorasi terhadap pustaka yang disediakan.
- Slides: 21