--> Skip to main content

Rekursi pada Pemrograman C


Dalam bahasa pemrograman bahasa C kali ini, kita akan mempelajari tentang apa itu Rekursi beserta contoh latihan soal.

Istilah rekursi bukan hanya ditemui pada pemrograman bahasa C saja, dalam bahasa pemrograman lain juga kita akan sering mendengarnya.

Sebelum memasuki contoh latihan soal tentang rekursi, terlebih dahulu kita akan memahami definisi atau pengertian dari Rekursi itu sendiri.

Apa itu Rekursi ?

Rekursi adalah kemampuan fungsi untuk memanggil dirinya sendiri. Persoalan rekursi banyak dijumpai pada matematika.

Perhatikan gambar di bawah ini, dimana program berikut akan menghitung bilangan 1 sampai dengan 10 menggunakan rekurs




Outputnya adalah sebagai berikut :

Rekursi Bahasa C




Latihan Soal

Soal No.1
Buatlah program bahasa C dengan menggunakan Rekursi yang menampilkan ouput sebagai berikut :
maju 3
maju 2
maju 1
mundur 1
mundur 2
mundur 3

Jawab:
#include <stdio.h>
#include <stdlib.h>

void rek(int i)
{
   if(i > 0)
   {
      printf("maju %d\n", i);
      rek(i-1);
      printf("mundur %d\n", i);
   }
}

main()
{
   rek(3);
   system("PAUSE");
   return 0;
}

Soal No.2

Buatlah sebuah program untuk menghitung nilai suatu faktorial bilangan dengan menggunakan sistem Rekursi. Dalam program ini, user dapat menginput faktorial suatu bilangan, baru kemudian ditampilkan hasil jumlah faktorialnya seperti output di bawah ini :
Masukkan n faktorial = 5
5! = 120

Jawab :
#include <stdio.h>
#include <stdlib.h>

long int faktorial(unsigned int n)
{
   if(n == 0 || n == 1)
      return 1;
   else
      return n * faktorial(n-1);
}

main()
{
   int n;
   long int hasil;

   printf("Masukkan n faktorial = ");
   scanf("%d", &n);

   hasil = faktorial(n);

   printf("%d! = %1d\n", n, hasil);

   system("PAUSE");
   return 0;

}
Comment Policy: Silahkan tuliskan komentar Anda yang sesuai dengan topik postingan halaman ini. Komentar yang berisi tautan tidak akan ditampilkan sebelum disetujui.
Buka Komentar
Tutup Komentar