Jawaban Tugas Pertemuan 8 KBP
1. Jelaskan design issue suatu sub program!
2. Jelaskan perbedaan parameter local dan global!
3. Jelaskan jenis-jenis passing parameter!
Jawaban:
1. Design issue suatu subprogram :
a. Metode passing parameter atau metode apa yang digunakan?
b. Apakah jenis dari parameter-parameter actual yang diperiksa berbeda dengan jenis parameter-parameter formal?
c. Apakah variabel local dialokasikan secara statis atau secara dinamis?
d. Jika subprogram dapat di-passing sebagai parameter, apakah lingkungan referensi dari sebuah subprogram?
e. Jika subprogram dapat di-passing sebagai parameter, apakah lingkungan referensi dari sebuah subprogram?
f. Dapatkah definisi subprogram terlihat dalam definisi subprogram lain?
g. Dapatkah subprogram overloaded?
h. Dapatkah subprogram umum?
i. Adakah kemungkinan perpisahan atau kebebasan kompilasi?
2. Perbedaan parameter local dan parameter global adalah parameter local dideklarasikan di dalam sebuah fungsi dan hanya berlaku dalam scope fungsi itu saja, sedangkan parameter global dideklarasikan di atas semua fungsi-fungsi yang ada dan berlaku untuk semua fungsi yang ada.
3. a. Pass by value (in mode)
Kekurangan dari jalur akses :
– Harus menuliskan perlindungan dalam pemanggilan subprogram.
– Pengaksesan menyebabkan biaya bertambah. (pengalamatan langsung).
Kekurangan memindahkan secara langsung :
– Memerlukan lebih banyak tempat menyimpan
– Biaya dari pemindahan
b. Pass by result (out mode)
Kekurangannya : ketergantungan perintah
Contoh :
Procedure sub1 (y: int, z: int);
…
Sub1(x,x);
Nilai pada ‘x’ dalam pemanggil bergantung pada perintah dari tugas dalam pengembalian.
c. Pass by value-result (inout mode)
Kekurangannya :
– Dari pass by result
– Dari pass by value
d. Pass by reference
Keuntungan : proses pemberian yang efisien.
Kekurangan :
a. Akses yang lebih lambat
b. Dapat menggunakan istilah :
– Actual parameter yang saling bertubrukan
– Elemen dalam array berurutan
– Tubrukan antara global dan formal
e. Pass by name (multiple mode)
Keperluan : fleksibilitas dari late binding.
Hasil semantic :
– Jika actual adalah variabel scalar, maka itu adalah pass by reference
– Jika actual adalah ekspresi konstan, maka itu adalah pass by value
– Jika actual adalah elemen array, maka tidak seperti yang lain
– Jika actual adalah ekpresi dengan keterangan untuk sebuah variabel yang juga dapar mengakses program
Kerugian dari pass by name :
– Keterangan yang sangat tidak efektif.
– Terlalu membingungkan, susah dimengeti dan dipahami.

punya yg laen ga??
ampe pert.13
hmm.. KBP ny si baru smpe pertemuan 8. Gw blom ada kerjain yg berikutnya..hehe.. dlu ada si di share ma senior, jwbn lgkp smpe pert 13, hlg pulak.. wkwkwk..