Minggu, 26 Agustus 2018

Pembahasan Tentang Prosedur Dalam Algoritma Pemrograman

Sebenarnya Kata prosedur sering kita dengar dalam kehidupan kita sehari – hari. Seorang mahasiswa pada setiap awal semester selalu melakukan pendaftaran ulang ( registrasi ), Langkah – langkah pendaftaran ulang dinyatakan dalam sebuah prosedur yang bisa di namakan prosedur daftar ulang.

 Secara sederhana prosedur daftar ulang bisa dituliskan sebagai berikut :
 Mengambil form KRS di bagian tata usaha akademik dengan menunjukan Kartu Mahasiswa.
 Lakukan pembayaran SPP di loker pembayaran atau melalui bank yang telah di tunjuk.
 Isi form KRS dengan mata kuliah yang akan di ambil pada semester ini.
 Lakukan konsultasi dan meminta pengesahan dari dosen Akademik.
 Jika SPP sudah lunas, maka serahkan KRS yang sudah disahkan oleh dosen akademik ke bagian tata usaha. Namun jika SPP belum di lunasi maka kembali ke langkah 2.
 Serahkan foto ukuran 2 x 3 untuk Kartu Mahasiswa yang baru untuk di cap oleh petugas.
 Selesai.

Ketika sebuah prosedur di eksekusi maka instruksi – instruksi yang ada di dalamnya akan di kerjakan satu per satu. Contoh prosedur registrasi mahasiawa di atas, mahasiswa membaca setiap langkah di dalam prosedur lalu melaksanakan setiap intruksi tersebut. Sebelum mahasiswa melaksanakan prosedur tersebut maka belum masuk dalam daftar semester baru, sedangkan mahasiswa yang sudah melaksanakan prosedur tersebut maka mahasiswa terdaftar dalam semester baru.

Di dalam Pascal, prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Diawali dengan kata cadangan “Procedure” didalam bagian deklarasi prosedur.
Prosedur banyak digunakan pada program yang terstruktur, karena :
 Merupakan penerapan konsep program modular, yaitu memecah - mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur.
 Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.

Berikut ini adalah bentuk umum penulisan program menggunakan prosedur.

Bentuk Umum Prosedure

PROGRAM judul_program ; 
PROCEDURE judul_prosedur ; 
   Begin 
            Statement prosedur ; 
            … 
            … 
   End ; 
   Begin 
   Statement program utama ; 
            … 
            … 
   End.

Parameter Dalam Prosedur

Nilai didalam modul program Pascal sifatnya adalah local, artinya hanya dapat digunakan pada modul atau unit program yang bersangkutan saja, tidak dapat digunakan pada modul atau unit program yang lainnya.

procedure hitung ; 
var 
X, Y : real ; 
begin 
   write (‘Nilai X =’) ; readln (X) ; 
   Y : = X * X ; 
end ; 
begin 
   hitung ; 
   writeln (‘Nilai Y =’, Y : 6 : 2 ) ; 
end.

 Keterangan contoh program : 
 Bila program dikompilasi, akan di deteksi kesalahan oleh compiler, karena variable Y yang sifatnya local di procedure Tanya_hitung digunakan pada program utama.
 Agar nilai-nilai variable dapat digunakan di modul lainnya yang membutuhkan, maka dapat dilakukan dengan beberapa cara, yaitu :
 Dibuat bersifat global.
 Harus di deklarasikan diatas modul yang akan menggunakannya.

Contoh :
Procedure kesatu ; 
Begin 
 … 
End ; 
Var 
 A, B : word ; 
Procedure kedua ; 
Begin 
 … 
End ; 
Procedure ketiga ; 
Begin 
 … 
End ; 
Begin { program utama } 
 … 
End.

Keterangan contoh : 
 Variabel A dan B dapat digunakan untuk modul Procedure kedua dan ketiga serta modul/program utama, tetapi tidak bersifat global untuk procedure kesatu. 
 Dikirimkan sebagai parameter ke modul yang membutuhkannya. Parameter yang dikirmkan dari modul utama ke modul prosedur disebut dengan parameter nyata (actual parameter) dan parameter yang ada dan dituliskan pada judul prosedur disebut dengan parameter formal (formal parameter). Proses pengiriman data lewat parameter nyata ke parameter formal disebut dengan parameter passing. Parameter nyata dan parameter formal harus dengan tipe yang sama. Didalam pascal, parameter dapat dikirimkan secara nilai (by value) atau secara acuan (by reference).

Pengiriman Parameter Secara Nilai

Bila parameter dikirimkan secara nilai nilai, parameter formal di prosedur akan berisi nilai yang dikirmkan yang kemudian bersifat local di prosedur. Bila nilai parameter formal di prosedur berubah, tidak akan mempengaruhi nilai parameter nyata ( nilai parameter nyata tetap, tidak berubah). Pengiriman secara nilai ini merupakan pengiriman searah, yaitu dari parameter nyata ke parameter formal, yang tidak dikirimkan balik dari parameter formal ke parameter nyata. Parameter – parameter yang digunakan dengan pengiriman secara nilai ini disebut dengan parameter nilai (value parameter).

Contoh program : 

Procedure Hitung(A, B : integer ) ; 
Var 
 C : integer ; 
Begin 
 C : = A + B ; 
 Writeln (‘Nilai C =’, C ) ; 
End ; 
Var 
 X, Y : integer ; 
Begin 
 Write ( ‘Nilai X =’ ) ; readln ( X ) ; 
Write ( ‘Nilai Y =’ ) ; readln ( Y ) ; 
Hitung ( X, Y ) ; 
End.

Keterangan 
 prosedur dimulai dengan deklarasi prosedur dengan judul prosedur hitung. Variable A dan B adalah parameter formal dan integer adalah tipe parameternya. 
 Variable local yang hanya dipergunakan di prosedur dan tidak termasuk parameter formal (parameter nilai), harus didefinisikansendiri, yaitu : variable C 
 Hubungan antara parameter formal di prosedur dengan parameter nyata di modul utama adalah : nilai parameter nyata X dan Y di modul utama dikirimkan ke parameter formal A dan B di prosedur. Dengan demikian nilai parameter A dan B diprosedur akan berisi nilai yang sama dengan parameter X dan Y di modul utama.

Pengiriman Parameter Secara Acuan

Bila pengiriman parameter secara acuan, maka perubahan-perubahan yang terjadi pada nilai parameter formal di prosedur akan mempengaruhi nilai parameter nyata. Parameter-parameter ini disebut dengan variable parameter serta dideklarasikan di deklarasi prosedur dengan menggunakan kata cadangan Var, sebagai berikut :

program secara_acuan; 
uses wincrt;

Procedure Hitung ( var A, B, C : integer ) ; 
Begin 
 C := A + B ; 
End ; 
Var 
 X, Y, Z : integer ; 
Begin 
 X := 2; 
 Y := 3; 
 Hitung ( X, Y, Z ) ; 
 Writeln('X = ',X); 
 writeln('Y = ', Y); 
 writeln('Z = ', Z); 
End.

Keterangan : 
 pengiriman parameter secara acuan merupakan pengiriman dua arah, bolak-balik, sehingga perubahan nilai di parameter formal akan mempengaruhi nilai parameter nyata juga. Pada contoh, nilai parameter nyata Z akan mengikuti perubahan nilai dari parameter formal C.

Pengiriman Parameter Sebagian Secara Nilai, Sebagian Acuan

Pengiriman parameter dapat dicampur sebagian secara nilai dan sebagian secara acuan dalam suatu prosedur. Parameter yang hanya dibutuhkan pada prosedur saja dapat dikirimkan secara nilai dan yang ingin dikirimkan balik dapat dilakukan secara acuan, sebagai berikut : 

program acuan_; 
uses wincrt; 
Procedure Hitung ( A, B : integer ; Var 
C : integer ) ; 
Begin 
 C := A + B ; 
End ; 
Var 
 X, Y, Z : integer ; 
Begin 
 X := 2 ; 
 Y := 3 ; 
Hitung ( X, Y, Z ) ; 
 Writeln(' X = ', X); 
 Writeln(' Y = ', Y); 
 Writeln(' Z = ', Z); 
End.

Prosedur Memanggil Prosedur Yang Lain

Prosedur yang memanggil prosedur lain

Procedure Pro1 ( X1 : integer ) ; 
Begin 
 Writeln ( 'Nilai X = ', X1, 'ada di prosedur Pro1' ) ;

End ; 

Procedure Pro2 ( X2 : integer ) ; 
Begin 
 Writeln ( 'Nilai X = ', X2, 'ada diprosedur Pro2' ) ; 
 Pro1 (X2) ; 
End ; 
Var 
 X : integer ; 
Begin 
X := 9 ; 
 Pro2 ( X ) ;

End.

Prosedur Tersarang

Adalah prosedur yang berada didalam prosedur yang lainnya. 

Bentuk Umum :
Program 
 Procedure 
   Procedure 
   Begin 
     … 
     … 
     … 
   End ; 
 Begin 
   … 
   … 
   … 
 End ; 
Begin 
 … 
 … 
 … 
end . 

Tidak ada komentar:

Posting Komentar

Infrastruktur AI Berdaulat di Indonesia yang dikembangkan oleh Indosat dan NVIDIA

www.masizz41.blogspot.com Kamis, 29 Februari 2024 Dalam perkembangan Artificial Inteligence (AI) pada skala global, Indosat Ooredoo Hutchi...