Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

C. Rekursi

C Rekursi

Dalam tutorial ini, Anda akan belajar menulis fungsi rekursif dalam pemrograman C dengan bantuan sebuah contoh.

Fungsi yang memanggil dirinya sendiri dikenal sebagai fungsi rekursif. Dan, teknik ini dikenal sebagai rekursi.


Bagaimana cara kerja rekursi?

void recurse()
{
    ... .. ...
    recurse();
    ... .. ...
}

int main()
{
    ... .. ...
    recurse();
    ... .. ...
}

Rekursi berlanjut sampai beberapa kondisi terpenuhi untuk mencegahnya.

Untuk mencegah rekursi tak terbatas, pernyataan if...else (atau pendekatan serupa) dapat digunakan di mana satu cabang membuat panggilan rekursif, dan yang lainnya tidak.


Contoh:Jumlah Bilangan Asli Menggunakan Rekursi

#include <stdio.h>
int sum(int n);

int main() {
    int number, result;

    printf("Enter a positive integer: ");
    scanf("%d", &number);

    result = sum(number);

    printf("sum = %d", result);
    return 0;
}

int sum(int n) {
    if (n != 0)
        // sum() function calls itself
        return n + sum(n-1); 
    else
        return n;
}

Keluaran

Enter a positive integer:3
sum = 6

Awalnya, sum() dipanggil dari main() fungsi dengan angka disahkan sebagai argumen.

Misalkan, nilai n di dalam sum() adalah 3 awalnya. Selama panggilan fungsi berikutnya, 2 diteruskan ke sum() fungsi. Proses ini berlanjut sampai n sama dengan 0.

Kapan n sama dengan 0, if kondisi gagal dan else bagian dieksekusi mengembalikan jumlah bilangan bulat pada akhirnya ke main() fungsi.


Keuntungan dan Kerugian Rekursi

Rekursi membuat program menjadi elegan. Namun, jika kinerja sangat penting, gunakan loop sebagai gantinya karena rekursi biasanya jauh lebih lambat.

Yang sedang berkata, rekursi adalah konsep penting. Ini sering digunakan dalam struktur data dan algoritma. Misalnya, penggunaan rekursi dalam masalah seperti traversal pohon merupakan hal yang umum.


Bahasa C

  1. C# Hello World - Program C# Pertama Anda
  2. C# Kata Kunci dan Pengidentifikasi
  3. Variabel C# dan Tipe Data (Primitif)
  4. C# Operator
  5. C# Bitwise dan Bit Shift Operator
  6. C# Input dan Output Dasar
  7. C# Ekspresi, Pernyataan, dan Blok (Dengan Contoh)
  8. C# Komentar
  9. Pernyataan sakelar C#
  10. C# ternary (? :) Operator