Lompat ke konten Lompat ke sidebar Lompat ke footer

Parameter Masukan

Parameter Masukan pada Algoritma


Pada parameter masukan, nilai (value) parameter aktual diisikan (assign) ke dalam parameter formal yang bersesuaian. Nilai ini digunakan di dalam badan prosedur yang bersangkutan. Nilai yang dinyatakan oleh parameter masukan tidak dapat dikirim dalam arah sebaliknya. Itulah alasannya mengapa parameter jenis ini diacu sebagai parameter masukan. Perubahan nilai parameter di dalam badan prosedur tidak mengubah nilai parameter aktual. Karena yang dipentingkan adalah nilainya, maka nama parameter aktual boleh berbeda dengan nama parameter formal yang bersesuaian.
Tinjau kembali prosedur menghitung luas segitiga. Jika program utama ingin mengomunikasikan panjang alas dan tinggi segitiga ke prosedur HitungLuasSegitiga, maka peubah alas dan tinggi harus dideklarasikan sebagai parameter formal di bagia header prosedur;

procedure HitungLuasSegitiga(input alas, tinggi : real)
{ Menghitung luas segitiga dengan rumus Luas= (alas x tinggi) /2 }
{ K.Awal : alas dan tinggi sudah terdefinisi nilainya }
{ K.Akhir : luas segitiga tercetak. }

DEKLARASI
  luas : integer

ALGORITMA
 luas <- (alas * tinggi)/2
write(luas)

--------------------------------------------
Perhatikan algoritma diatas. Kata kunci input pada bagian header menyatakan bahwa alas dan tinggi adalah parameter masukan. Keadaan awal (K.Awal) prosedur adalah kondisi di mana alas dan tinggi sudah terdefinisi nilainya. Ini berarti bahwa alas dan tinggi sudah harus sudah berisi nilai sebelum pelaksanaan prosedur. Keadaan akhir (K.Akhir) prosedur adalah kondisi dimana luas segitiga tercetak (misalkan ke layar). Program utama yang memanggil prosedur HitungLuasSegitiga harus mendeklarasikan prosedur ini dan memanggilnya dengan parameter aktual yang bersesuaian:

PROGRAM Segitiga
{ Menghitung luas N buah segitiga. }

DEKLARASI
   i, N : integer
  alas,tinggi : real
  prosedure HitungLuasSegitiga(input alas, tinggi : real)
 {Menghitung luas segitiga dengan rumus L=(alas x tinggi) /2 }

ALGORITMA
read(N) { tentukan banyaknya segitiga }
for i <- 1 to N do
    read(alas,tinggi)
    HitungLuasSegitiga(alas,tinggi) 
endfor

--------------------------------------------