Jelaskan bagaimana fungsi bisa menerima variabel inputan (secara ‘pass by value’ dan ‘pass by reference’)!


1.       Apa yang dimaksud dengan fungsi
2.       Jelaskan bagaimana fungsi bisa menerima variabel inputan (secara ‘pass by value’ dan ‘pass by reference’)!
3.       jelaskan yang dimaksud dengan variabel lokal, variabel eksternal atau global dan variabel statis
4.       Buatlah contoh program sederhana menggunakan fungsi



1.      Fungsi adalah suatu bagian dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya dipisahkan dari bagian program yang dijalankan.
2.      Pemanggilan Secara Nilai (‘Pass by Value’) :
·         Call by value akan menyalin nilai dari parameter aktual ke parameter formal.
·         Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya.
·         Fungsi yang menerima kiriman nilai akan menyimpannya di alamat terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi.
·         Perubahan nilai di fungsi (parameter formal) tidak akan merubah nilai asli di bagian program yang memanggilnya.
·         Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.
·         Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan, tidak hanya untuk sebuah variabel, elemen array atau konstanta saja.
Pemanggilan Secara Referensi (‘Passl by Reference’) :
·         Pemanggilan secara Referensi merupakan upaya untuk melewatkan alamat dari suatu variabel ke dalam fungsi.
·         Yang dikirimkan ke fungsi adalah alamat letak dari nilai datanya, bukan nilai datanya.
·         Fungsi yang menerima kiriman alamat ini makan menggunakan alamat yang sama untuk mendapatkan nilai datanya.
·         Perubahan nilai di fungsi akan merubah nilai asli di bagian program yang memanggil fungsi.
·         Pengiriman parameter secara referensi adalah pengiriman dua arah, yaitu dari fungsi pemanggil ke fungsi yang dipanggil dan juga sebaliknya.
·         Pengiriman secara acuan tidak dapat bdilakukan untuk suatu ungkapan.
3.     Variabel Lokal (Variabel Otomatis)
Variabel yang didefinisikan didalam suatu fungsi dan berlaku sebagai variabel lokal bagi fungsi Variabel hanya dikenal di dalam fungsi dimana variabel itu didefinsikan dan tidak dikenal oleh fungsi lain
Variabel Ekternal (Variabel Global)
·           Variabel yang didefinisikan di luar fungsi manapun sehingga dikenal oleh semua fungsi
·           Variabel eksternal mempunyai lifetime selama program dieksekusi
·           Variabel eksternal sebaiknya digunakan sesedikit mungkin atau bahkan tidak digunakan sama sekali.



Variabel statis
·           Variabel hanya dapat diakses pada fungsi yang mendefinisikannya
·           Variabel tidak hilang setelah eksekusi berakhir. Nilainya akan tetap dipertahankan sehingga akan dikenali pada pemanggilan fungsi untuk tahap berikutnya
·           Inisialisasi oleh pemrogram hanya dilakukan sekali saja selama program dijalankan. Jika tidak ada inisialisasi secara eksplisit, maka variabel diisi dengan nilai nol
4.     #include <iostream>
usingnamespacestd;

inthitung_luas (intpanjang, intlebar){
intluas = panjang*lebar;
returnluas;
}

intmain(){
inta,b,hasil;
cout<<"Program Hitung Luas Persegi Panjang"<<endl;
cout<<"-----------------------------------"<<endl;
cout<<"Masukkan nilai panjang :"; cin>>a;
cout<<"Masukkan nilai lebar :"; cin>>b;
hasil = hitung_luas(a,b);
cout<<"Luas persegi panjang adalah :"<<hasil<<endl;
return0;
}


EmoticonEmoticon