Cara kerja fungsi dalam pemrograman C++

Prototype Fungsi :

Prototype fungsi deklarasi fungsi yang digunakan dalam program.  Sebuah fungsi yang dibuat sendiri harus dideklarasikan pada awal program agar fungsi tersebut dapat dikenali oleh compiler. Jika tidak dideklarasikan, maka akan terjadi kesalahan pada saat kompilasi.

Parameter :

Parameter adalah sarana komunikasi antar fungsi dalam sebuah program. Parameter terdiri dari daftar variable pada header fungsi. Dalam pemograman, diusahakan agar fungsi bersifat independen artinya tidak tergantung pada fungsi lain. Setiap fungsi hanya mengerjakan satu tugas tertentu.

Ada dua macam bentuk parameter dalam fungsi yaitu :
  1. Parameter Formal : daftar variabel yang didefinisikan pada fungsi dan berfungsi untuk menerima nilai  atau alamat nilai pada saat dipanggil.
  2. Parameter Aktual : daftar variabel yang didefinisikan pada saat memanggil fungsi dan berfungsi untuk mengirim nilai atau alamat nilai ke dalam fungsi lewat parameter formal.
Cara Kerja Parameter

Parameter bekerja sebagai jalur komunikasi antar fungsi dengan 2 cara yaitu :

1. Melewatkan  Nilai (Passing by Value)

a) Passing by value akan mengirim nilai dari parameter aktual ke parameter formal.
b) Pengiriman nilai lewat parameter adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.
c) Fungsi yang menerima kiriman nilai akan menyimpannya di alamat terpisah dari nilai aslinya.
d) Perubahan nilai dalam fungsi penerima tidak akan mempengaruhi nilai pada fungsi yang memanggilnya.

Cara kerja fungsi dengan call by value  dapat digambarkan sebagai berikut :



Contoh Program:


Penjelasan :

Ketika fungsi kali dipanggil pertama kali, maka nilai dari variable x dan y dikirim ke fungsi. Nilai yang diterima kemudian dikalikan dan hasilnya dicetak.  Nilai variable a dan b kemudian diubah dimana a=2 dan b = 4.

Proses berikutnya dalam fungsi main adalah memanggil fungsi kali untuk kedua kalinya. Pada pemanggilan kedua, hasil perkalian tetap sama. Artinya bahwa perubahan nilai dalam a dan b dalam fungsi kali tidak mempengaruhi nilai x dan y dalam fungsi main.

Output program :



2. Melewatkan Alamat atau Referensi (Passing  by Reference)

a) Passing by referensi merupakan proses untuk mengirim alamat nilai dari parameter aktual ke dalam fungsi lewat parameter formal.
b) Variabel reference pada parameter formal ditandai dengan tanda & di depannya. Misalnya int &x. Jadi x adalah variable alamat (reference).
c) Yang dikirimkan ke fungsi adalah alamat memori dimana nilai/data itu berada, bukan datanya.
d) Fungsi yang menerima kiriman alamat data akan memiliki alamat data yang sama pada fungsi pengirim.
e) Karena alamatnya sama, maka perubahan nilai dalam fungsi penerima akan mempengaruhi nilai asli di pada  fungsi pemanggil.
f) Pengiriman secara referensi adalah pengiriman dua arah, yaitu dari fungsi pemanggil ke fungsi yang dipanggil dan juga sebaliknya.
g) Pengiriman secara acuan tidak dapat dilakukan untuk suatu ungkapan.

Cara kerja fungsi dengan call by reference dapat digambarkan sebagai berikut :



Contoh program :


Penjelasan :

Ketika fungsi kali dipanggil pertama kali, maka nilai dari variable x dan y dikirim ke fungsi. Nilai yang diterima kemudian dikalikan dan hasilnya dicetak.  Nilai variable a dan b kemudian diubah dimana a=2 dan b = 4.

Proses berikutnya dalam fungsi main adalah memanggil fungsi kali untuk kedua kalinya. Pada pemanggilan kedua, hasil perkalian tidak sama dengan hasil kali pada pemanggilan pertama. Artinya bahwa perubahan nilai a dan b dalam fungsi kali dapat mempengaruhi nilai x dan y dalam fungsi main. Hal ini menunjukkan salah satu perbedaan penggunaan passing by value dengan passing by reference.

Output program :


Langkah selanjutnya adalah bagaimana menggunakan variabel lokal dan global dalam fungsi.

Demikian pembahasan tentang cara kerja fungsi dalam pemrograman bahasa C++. Selamat belajar semoga bermanfaat.

No comments:

Post a Comment

Silakan memberikan komentar dan pertanyaan yang sifatnya positif.