Sunday, July 3, 2011

Fungsi Rekursif

Artikel dengan judul Fungsi Rekursif ini berkaitan dengan artikel sebelumnya tentang fungsi dalam bahasa C/C++. Fungsi rekursif adalah suatu fungsi yang memanggil dirinya sendiri, artinya fungsi tersebut dipanggil di dalam tubuh fungsi itu sendiri.  Fungsi ini akan terus berjalan sampai kondisi berhenti terpenuhi, oleh karena itu dalam sebuah fungsi rekursif perlu terdapat 2 blok penting,
yaitu blok yang menjadi titik berhenti dari sebuah proses rekursi dan blok yang memanggil dirinya sendiri. Salah satu permasalahan yang dapat diselesaikan dengan fungsi rekrusif adalah faktorial. Fungsi faktorial, yang menghitung nilai faktorial dari suatu bilangan bulat positif, merupakan pokok bahasan yang memudahkan pemahaman fungsi rekursif.
  1. #include"stdio.h"
  2. #include"conio.h"
  3. int faktorial(int n);
  4. void main()
  5. {
  6. int n;
  7. float f;
  8. printf("Masukan angka = ");scanf("%d",&n);
  9. f=faktorial(n);
  10. printf("%d Faktorialnya = %f\n",n ,f);
  11. getch();
  12. }
  13. int faktorial(int n)/*definisi*/
  14. {
  15. if(n==0)
  16. {
  17. return 1;
  18. }
  19. else
  20. {
  21. return(n*faktorial(n-1));
  22. }
  23. }



Program faktorial yang diterjemahkan dengan bahasa pemrograman C diatas ditulis sepanjang 23 baris, yang terdiri dari dua fungsi, yaitu fungsi main dan fungsi faktorial, terjadinya rekursif dalam kode program tersebut dapat dilihat pada baris 21, tertulis return(n*faktorial(n-1)). Penulisan untuk memanggil sebuah fungsi ini terjadi di dalam fungsi tersebut, hal inilah yang dianggap sebagai rekursif.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.