0Pricing
C Academy · Pelajaran

Rekursi dalam C

Jelajahi fungsi rekursif, pahami kasus penggunaannya, dan analisis rekursi dibandingkan iterasi.

Rekursi dalam C adalah pelajaran C Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C Academy mencakup 3 pelajaran total.

Rekursi dalam C

Rekursi dalam C

Rekursi adalah teknik ketika sebuah fungsi memanggil dirinya sendiri untuk menyelesaikan suatu masalah.

Dalam pelajaran ini, Anda akan mempelajari:

  • Apa itu rekursi dan cara kerjanya.
  • Cara mengimplementasikan fungsi rekursif.
  • Perbedaan antara rekursi dan iterasi.
Rekursi dalam C — ilustrasi 1

Apa Itu Rekursi?

Apa Itu Rekursi?

Rekursi terjadi ketika sebuah fungsi memanggil dirinya sendiri untuk menyelesaikan bagian yang lebih kecil dari suatu masalah.

Contoh sintaks:

void function() { function(); // Recursive call }

Setiap fungsi rekursif harus memiliki kasus dasar untuk mencegah rekursi tak berhingga.

Contoh: Rekursi

Contoh: Rekursi

Program ini mendemonstrasikan rekursi dengan mencetak angka dari 5 hingga 1.

#include <stdio.h>

void countDown(int n) {
    if (n <= 0) return; // Base case
    printf("%d\n", n);
    countDown(n - 1); // Recursive call
}

int main() {
    countDown(5);
    return 0;
}

Kasus Dasar dalam Rekursi

Kasus Dasar dalam Rekursi

Fungsi rekursif harus menyertakan kasus dasar untuk menghentikan rekursi.

Contoh:

if (n == 0) return;

Tanpa kasus dasar, fungsi akan memanggil dirinya sendiri tanpa henti dan menyebabkan luapan tumpukan.

Contoh: Faktorial Menggunakan Rekursi

Contoh: Faktorial Menggunakan Rekursi

Program ini menghitung faktorial suatu angka menggunakan rekursi.

#include <stdio.h>

int factorial(int n) {
    if (n == 0) return 1; // Base case
    return n * factorial(n - 1);
}

int main() {
    printf("Factorial of 5: %d\n", factorial(5));
    return 0;
}

Rekursi dan Iterasi

Rekursi dan Iterasi

Rekursi dan iterasi (perulangan) dapat menghasilkan hasil yang sama, tetapi cara kerjanya berbeda.

Perbedaan:

  • Rekursi menggunakan pemanggilan fungsi dan membutuhkan lebih banyak memori.
  • Iterasi menggunakan perulangan dan umumnya lebih efisien.
  • Rekursi membuat kode lebih sederhana untuk masalah seperti penelusuran pohon.

Contoh: Deret Fibonacci (Rekursif)

Contoh: Deret Fibonacci (Rekursif)

Program ini menghitung deret Fibonacci menggunakan rekursi.

#include <stdio.h>

int fibonacci(int n) {
    if (n <= 1) return n;
    return fibonacci(n - 1) + fibonacci(n - 2);
}

int main() {
    printf("Fibonacci(5): %d\n", fibonacci(5));
    return 0;
}

Kapan Menggunakan Rekursi?

Kapan Menggunakan Rekursi?

Rekursi berguna untuk masalah yang melibatkan:

  • Penelusuran pohon.
  • Penelusuran mundur (misalnya, menyelesaikan labirin).
  • Masalah matematika seperti faktorial dan Fibonacci.

Ringkasan

Ringkasan

Dalam pelajaran ini, Anda telah mempelajari:

  • Apa itu rekursi dan cara kerjanya.
  • Pentingnya kasus dasar.
  • Perbedaan antara rekursi dan iterasi.

Selanjutnya, kita akan mempelajari larik dan string dalam C!

Rekursi dalam C — ilustrasi 9

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Rekursi dalam C” gratis?

Ya — teks lengkap “Rekursi dalam C” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C Academy, upgrade ke CoddyKit PRO. Kursus C Academy mencakup 3 pelajaran total.

Apa yang akan aku pelajari di “Rekursi dalam C”?

Jelajahi fungsi rekursif, pahami kasus penggunaannya, dan analisis rekursi dibandingkan iterasi. Kamu berlatih C Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai C Academy?

Tidak diperlukan pengalaman sebelumnya. C Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 3.

Berapa lama pelajaran “Rekursi dalam C” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran C Academy ini?

Ya. Setiap pelajaran C Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mendefinisikan dan Memanggil Fungsi
  2. Prototipe Fungsi dan Lingkup
  3. Rekursi dalam C
← Kembali ke C Academy