Cara Membuat Fungsi Sederhana di C++

Cara Membuat Fungsi Sederhana di C++

Fungsi adalah blok kode yang dirancang untuk melakukan tugas tertentu dan dapat dipanggil di berbagai bagian program. Penggunaan fungsi membantu membuat kode lebih terorganisir, modular, dan mudah dipahami.

1. Struktur Dasar Fungsi

Fungsi dalam C++ memiliki tiga bagian utama:

  • Deklarasi (Prototype): Menentukan nama, tipe pengembalian, dan parameter fungsi.
  • Definisi: Implementasi fungsi (blok kode yang akan dijalankan).
  • Pemanggilan: Menggunakan fungsi dalam program.

Sintaks Dasar

tipe_pengembalian nama_fungsi(parameter) {
    // Blok kode
    return nilai; // Opsional, tergantung pada tipe pengembalian
}

2. Membuat dan Menggunakan Fungsi

Contoh Sederhana: Fungsi Tanpa Parameter

Fungsi berikut mencetak pesan ke layar.

#include <iostream>

// Definisi fungsi
void sapa() {
    std::cout << "Halo, selamat datang di program C++!" << std::endl;
}

int main() {
    sapa(); // Pemanggilan fungsi
    return 0;
}

Output:
Halo, selamat datang di program C++!

Contoh: Fungsi dengan Parameter

Fungsi berikut menjumlahkan dua angka yang diberikan sebagai parameter.

#include <iostream>

// Definisi fungsi
int jumlah(int a, int b) {
    return a + b;
}

int main() {
    int x = 5, y = 10;

    // Pemanggilan fungsi
    std::cout << "Hasil penjumlahan: " << jumlah(x, y) << std::endl;

    return 0;
}

Output:
Hasil penjumlahan: 15

Contoh: Fungsi dengan Parameter dan Tanpa Pengembalian

Fungsi berikut mencetak hasil penjumlahan tanpa mengembalikan nilai.

#include <iostream>

// Definisi fungsi
void cetakJumlah(int a, int b) {
    std::cout << "Hasil penjumlahan: " << a + b << std::endl;
}

int main() {
    cetakJumlah(7, 3); // Pemanggilan fungsi
    return 0;
}

Output:
Hasil penjumlahan: 10

Contoh: Fungsi dengan Nilai Kembali

Fungsi berikut menghitung luas persegi panjang.

#include <iostream>

// Definisi fungsi
int luasPersegiPanjang(int panjang, int lebar) {
    return panjang * lebar;
}

int main() {
    int panjang = 8, lebar = 4;

    // Pemanggilan fungsi
    int luas = luasPersegiPanjang(panjang, lebar);
    std::cout << "Luas persegi panjang: " << luas << std::endl;

    return 0;
}

Output:
Luas persegi panjang: 32

3. Deklarasi Fungsi (Prototype)

Jika fungsi didefinisikan setelah main(), deklarasi fungsi (prototype) diperlukan agar compiler mengenali fungsi saat dipanggil.

Contoh

#include <iostream>

// Deklarasi fungsi
int kali(int a, int b);

int main() {
    int hasil = kali(4, 5); // Pemanggilan fungsi
    std::cout << "Hasil perkalian: " << hasil << std::endl;
    return 0;
}

// Definisi fungsi
int kali(int a, int b) {
    return a * b;
}

Output:
Hasil perkalian: 20

4. Fungsi dengan Default Parameter

Anda dapat menetapkan nilai default pada parameter, sehingga parameter bersifat opsional.

Contoh

#include <iostream>

// Definisi fungsi dengan default parameter
int hitungVolumeKubus(int sisi = 1) {
    return sisi * sisi * sisi;
}

int main() {
    std::cout << "Volume kubus dengan sisi 3: " << hitungVolumeKubus(3) << std::endl;
    std::cout << "Volume kubus default: " << hitungVolumeKubus() << std::endl;
    return 0;
}

Output:

Volume kubus dengan sisi 3: 27  
Volume kubus default: 1

5. Fungsi Rekursif

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri untuk menyelesaikan masalah.

Contoh: Faktorial

#include <iostream>

// Definisi fungsi rekursif
int faktorial(int n) {
    if (n == 0 || n == 1) {
        return 1;
    }
    return n * faktorial(n - 1);
}

int main() {
    int angka = 5;
    std::cout << "Faktorial dari " << angka << " adalah: " << faktorial(angka) << std::endl;
    return 0;
}

Output:
Faktorial dari 5 adalah: 120

6. Fungsi dengan Referensi

Parameter dapat dilewatkan sebagai referensi untuk mengubah nilai asli.

Contoh

#include <iostream>

// Definisi fungsi dengan referensi
void ubahNilai(int &a) {
    a *= 2; // Menggandakan nilai
}

int main() {
    int angka = 10;

    std::cout << "Sebelum fungsi: " << angka << std::endl;
    ubahNilai(angka);
    std::cout << "Setelah fungsi: " << angka << std::endl;

    return 0;
}

Output:

Sebelum fungsi: 10  
Setelah fungsi: 20

7. Contoh Program Lengkap

Program berikut menghitung nilai maksimum dari dua angka menggunakan fungsi.

#include <iostream>

// Definisi fungsi untuk mencari nilai maksimum
int maksimum(int a, int b) {
    return (a > b) ? a : b;
}

int main() {
    int x = 12, y = 15;

    std::cout << "Nilai maksimum antara " << x << " dan " << y << " adalah: " << maksimum(x, y) << std::endl;

    return 0;
}

Output:
Nilai maksimum antara 12 dan 15 adalah: 15

Dengan memahami fungsi, Anda dapat mengorganisasi kode secara modular dan efisien. Apakah Anda ingin mencoba membuat fungsi khusus? 😊

Leave a Reply

Your email address will not be published. Required fields are marked *