Tentang parameter

Sekarang kita akan membahas tentang parameter dari sebuah prosedur secara lebih mendalam.

Perhatikan contoh program berikut:

program Parameter;
{$APPTYPE CONSOLE}
var
  n:integer;
  procedure TambahBilangan(bilangan:integer);
  begin
    bilangan:=bilangan+1;
    Writeln('bilangan di dalam prosedur:',bilangan);
  end;
begin
  Write('Masukkan sebuah bilangan: ');
  Readln(n);
  TambahBilangan(n);
  Writeln('bilangan di dalam program:',n);
  Writeln('Tekan Enter');
  Readln;
end.

Prosedur melakukan perubahan terhadap parameternya. Tetapi perhatikan hasilnya jika dijalankan. Ternyata variabel yang dikirimkan sebagai parameter tetap tidak berubah.

Masukkan sebuah bilangan: 5
bilangan di dalam prosedur:6
bilangan di dalam program:5
Tekan Enter

Perhatikan contoh yang lain:

program Parameter2;
{$APPTYPE CONSOLE}
var
  n:integer;
  procedure TambahBilangan(var bilangan:integer);
  begin
    bilangan:=bilangan+1;
    Writeln('bilangan di dalam prosedur:',bilangan);
  end;
begin
  Write('Masukkan sebuah bilangan: ');
  Readln(n);
  TambahBilangan(n);
  Writeln('bilangan di dalam program:',n);
  Writeln('Tekan Enter');
  Readln;
end.

Dengan penambahan kata yang dicadangkan var sebelum parameter, maka perubahan terhadap parameter didalam prosedur akan direfleksikan kepada variabel yang dikirim sebagai parameternya.

Masukkan sebuah bilangan: 5
bilangan di dalam prosedur:6
bilangan di dalam program:6
Tekan Enter

Ada dua buah kata yang dicadangkan yang lain yang bisa digunakan untuk parameter.

  1. Jika Anda tidak ingin sebuah parameter diubah didalam prosedur, tambahkan kata const di depan parameter. Tambahkan kata tersebut jika prosedur memang tidak bermaksud untuk mengubah parameter. Cara ini akan menambah kecepatan pelaksanaan program.
  2. Jika Anda ingin membuat parameter yang hanya berfungsi untuk keluaran, tambahkan kata out di depan parameter.

Jumlah parameter

Anda boleh membuat parameter sebanyak yang Anda butuhkan. Setiap parameter dipisahkan dengan tanda titik koma. Contoh:

procedure Proc1(param1:integer; param2:string);

procedure Proc2(param1:integer; param2:integer);

procedure Proc3(param1,param2:integer);

Contoh pertama adalah prosedur dengan dua parameter yang memiliki tipe data berbeda. Sedangkan contoh kedua dan ketiga adalah prosedur yang memiliki dua parameter dengan tipe data yang sama. Pada contoh ketiga ditunjukkan bahwa untuk parameter dengan tipe data yang sama, maka parameter tersebut dapat dikumpulkan dengan dipisahkan oleh tanda koma. Walaupun demikian, jika kedua parameter tersebut memiliki tipe akses yang berbeda, maka penulisan parameter tetap harus dipisahkan. Contoh:

procedure Proc4(var param1:integer; param2:integer);

tidak boleh diganti menjadi:

procedure Proc4(var param1,param2:integer);

karena cara tersebut memiliki arti:

procedure Proc4(var param1:integer;var param2:integer);

Apakah Anda menyukai post ini? Mengapa tidak memberikan komentar di bawah dan melanjutkan perbincangan, atau berlangganan my feed dan dapatkan artikel semacam ini yang dikirm secara otomatis feed reader Anda.
Harap diperhatikan bahwa komentar atau pertanyaan yang disampaikan haruslah sesuai dengan topik yang sedang dibahas. Komentar atau pertanyaan yang tidak sesuai dengan topik akan kami hapus :!:

Tinggalkan komentar

Sebelum membuat komentar, pastikan Anda telah membaca komentar-komentar sebelumnya. Jangan membuat pertanyaan yang telah ditanyakan. Perhatikan pula link-link dalam artikel. Lihatlah link tersebut sebelum membuat pertanyaan, karena mungkin penjelasan dari pertanyaan Anda telah di jawab dalam link tersebut.

Komentar yang tidak mengikuti aturan ini akan dihapus!

(wajib)

(wajib)


Time limit is exhausted. Please reload the CAPTCHA.