Jumat, 19 Desember 2014

CONTOH SCRIPT DASAR PEMBUATAN PROGRAM PADA DELPHI 7 (Part 7)

  • PASCAL, Passing by value, Passing by reference


saya akan membahas mengenai Passing parameter yang terdapat pada PASCAL.  Pada PASCAL ada dua macam passing parameter, yaitu Pass By Value dan Pass By Reference. Sesuai dengan namanya, kedua passing parameter ini memiliki fungsi yang berbeda. Untuk lebih jelasnya langsung aja kita simak penjelasan berikut ini ..
  • Pass by Value

    Bila parameter dikirim secara value (nilai) , parameter formal di prosedur akan berisi nilai yang akan dikirimkan yang kemudian bersifat lokal di prosedur. Bila nilai parameter formal di prosedur tersebut 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 dikirim balik dari parameter formal ke parameter nyata. Pengiriman parameter secara nilai ini juga dapat dikatakan dengan menyalin (copy) nilai variabel dan nilai itu diberikan ke variabel parameter. Prosedur bekerja pada salinan variabel, sehingga tidak mengubah parameter aktualnya.

    • Karakteristik dari  Pass by Value:

      1. Data yang dikirim dari parameter aktual di blok program utama ke parameter formal  di prosedur adalah nilai dari datanya bukan alamat memori letak dari datanya.
      2. Prosedur/Fungsi yang menerima nilai ini akan menyimpan data tersebut di alamat memori yang berbeda dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi/prosedur tersebut di blok program utama.
      3. Karena terdapat alamat memori yang berbeda, maka perubahan nilai di fungsi tidak akan merubah nilai asli di bagian program yang memanggil prosedur/fungsi tersebut. 

      Berikut adalah contoh Statement Coding Pass by Value

      program prosedur;
      {$APPTYPE CONSOLE}
      uses
        SysUtils;
      var
        x,y:integer;
      Procedure tambah (A,B:integer);
      var
        c:integer;
      begin
        c:=a+b;
        writeln('Hasil Penjumlahan ',c);
      end;
      begin
        write('Masukkan Nilai X = ');readln(x);
        write('Masukkan Nilai Y = ');readln(y);
        tambah(x,y);
        readln;
      end.
       
    • Dan hasilnya sebagai berikut

      •  Pass by Reverence

        Sedangkan bila pengiriman parameter secara reference (acuan), maka perubahan-perubahan yang terjadi pada nilai parameter formal di prosedur akan memperngaruhi nilai parameter nyata. Parameter-parameter ini disebut dengan variabel parameter serta dideklarasikan di deklarasi prosedur dengan menggunakan kata cadangan Var, Berikut format penulisannya:
        Procedure nama_procedure (VAR  identifier1, identifier2,  …., identifier3: tipe data)
        Identifier konstanta dan literal tidak dapat digunakan dalam parameter, karena kedua identifier tersebut tidak dapat berubah nilainya.

        • Karakteristik dari Pass by Reference :
         
      1. Pada saat pengiriman nilai, yang dikirim dari parameter aktual di blok program utama ke parameter formal  di prosedur adalah alamat letak dari nilai datanya bukan.
      2. Prosedur/Fungsi yang menerima nilai ini akan menggunakan alamat memori yang sama dengan nilai aslinya yang digunakan oleh bagian  program yang memanggil fungsi/prosedur tersebut di blok program utama. Karena menggunakan alamat memori yang sama, maka perubahan nilai di prosedur/fungsi akan merubah nilai asli di bagian program yang memanggil prosedur/fungsi tersebut.

      Berikut adalah contoh Statement Coding Pass by Reference

       program prosedur;
      {$APPTYPE CONSOLE}
      uses
        SysUtils;
      var
        x,y,z:integer;
      Procedure tambah (var A,B,C:integer);
      begin
        C:=A+B;
      end;
      begin
        write('Masukkan Nilai X = ');readln(x);
        write('Masukkan Nilai Y = ');readln(y);
        tambah(x,y,z);
        writeln('X + Y = ',z);
        readln;
      end.

      Dan hasil Runninganya sebagai berikut ..


      >> Selamat Mencoba <<

 

Tidak ada komentar:

Posting Komentar