C++ | #17 Parameter dan Argumen

 


Halo teman-teman! 👋

Di part sebelumnya kita sudah belajar tentang apa itu fungsi. Kita tahu bahwa fungsi bisa membantu kita membuat program yang lebih rapi, lebih terstruktur, dan bisa dipanggil berkali-kali tanpa harus menulis ulang kode.

Sekarang kita akan melangkah lebih jauh ke bagian penting dalam fungsi, yaitu parameter dan argumen.


🔹 Apa itu Parameter?

Parameter adalah variabel yang ditulis di dalam tanda kurung fungsi, dan berfungsi untuk menerima data dari luar saat fungsi dipanggil.

Bisa dibilang parameter ini seperti “pintu masuk” untuk data yang ingin kita proses di dalam fungsi.


🔹 Apa itu Argumen?

Argumen adalah nilai yang kita masukkan saat memanggil fungsi. Nilai inilah yang nantinya akan diterima oleh parameter.

👉 Jadi gampangnya:

  • Parameter = “penampung” di fungsi.

  • Argumen = “isi data” yang kita masukkan ketika memanggil fungsi.


🔹 Contoh Program Fungsi dengan Parameter

Mari kita lihat contoh sederhana:

#include <iostream> using namespace std; // fungsi dengan parameter void sapa(string nama) { cout << "Halo " << nama << ", selamat datang di C++!" << endl; } int main() { // memanggil fungsi dengan argumen sapa("Naufal"); sapa("Budi"); sapa("Siti"); return 0; }

Output:

Halo Naufal, selamat datang di C++! Halo Budi, selamat datang di C++! Halo Siti, selamat datang di C++!

👉 Di sini, string nama adalah parameter, sedangkan "Naufal", "Budi", dan "Siti" adalah argumen.


🔹 Fungsi dengan Lebih dari Satu Parameter

Sebuah fungsi bisa memiliki lebih dari satu parameter. Contohnya fungsi untuk menjumlahkan dua bilangan:

#include <iostream> using namespace std; int tambah(int a, int b) { return a + b; } int main() { cout << "3 + 5 = " << tambah(3, 5) << endl; cout << "10 + 20 = " << tambah(10, 20) << endl; return 0; }

Output:

3 + 5 = 8 10 + 20 = 30

👉 Di sini fungsi tambah() punya dua parameter (a dan b), dan kita memberikan dua argumen saat memanggil fungsi.


🔹 Default Parameter

C++ juga memungkinkan kita memberikan nilai default pada parameter. Artinya, kalau kita tidak memberikan argumen, maka parameter akan menggunakan nilai default tersebut.

Contoh:

#include <iostream> using namespace std; void salam(string nama = "Teman") { cout << "Halo " << nama << "!" << endl; } int main() { salam(); // tanpa argumen salam("Naufal"); // dengan argumen return 0; }

Output:

Halo Teman! Halo Naufal!

👉 Parameter nama punya nilai default "Teman". Jadi ketika kita tidak memberikan argumen, program otomatis menggunakan nilai tersebut.


🔹 Passing by Value vs Passing by Reference

Ada hal penting yang juga perlu kamu tahu. Saat kita mengirim argumen ke fungsi, ada dua cara:

  1. Passing by Value → hanya menyalin nilai dari argumen ke parameter.
    Artinya, perubahan di dalam fungsi tidak memengaruhi variabel aslinya.

  2. Passing by Reference → mengirim langsung alamat memori variabel.
    Jadi kalau ada perubahan di dalam fungsi, variabel aslinya juga ikut berubah.

Contoh Passing by Value:

#include <iostream> using namespace std; void ubah(int x) { x = 100; // hanya mengubah salinan } int main() { int angka = 50; ubah(angka); cout << "Nilai angka: " << angka << endl; return 0; }

Output:

Nilai angka: 50

👉 Variabel angka tetap 50, karena yang diubah hanyalah salinan nilainya.


Contoh Passing by Reference:

#include <iostream> using namespace std; void ubah(int &x) { x = 100; // mengubah langsung variabel asli } int main() { int angka = 50; ubah(angka); cout << "Nilai angka: " << angka << endl; return 0; }

Output:

Nilai angka: 100

👉 Karena kita pakai & (reference), maka nilai asli dari variabel angka ikut berubah.


🔑 Kesimpulan

  • Parameter = variabel di fungsi, untuk menerima data.

  • Argumen = data nyata yang kita masukkan saat memanggil fungsi.

  • Fungsi bisa punya banyak parameter.

  • Kita bisa menggunakan default parameter jika diperlukan.

  • Ada dua cara mengirim data ke fungsi: by value (nilai tidak berubah) dan by reference (nilai asli ikut berubah).

Dengan memahami parameter dan argumen, kita bisa membuat fungsi yang lebih fleksibel dan powerful ✨.

Selanjutnya, kita akan masuk ke fungsi dengan nilai balik (return) untuk lebih dalam lagi. 🚀

Posting Komentar

0 Komentar