Fungsi Rekursif pada C++ | Belajar C++ 31 | Tutorial C++ 31
Assalamualaikum Sobat, pada artikel kali ini kami akan memberikan tutorial
tentang fungsi rekursif pada C++, yuk simak artikel dari kami.
Apa Itu Fungsi Rekursif ?
Fungsi rekursif adalah fungsi yang memanggil fungsinya sendiri. Dengan
menggunakan fungsi rekursif kita dapat menyelesaikan sebuah permasalahan yang
rumit menjadi lebih mudah diselesaikan dan lebih sederhana. Fungsi rekursif
digunakan untuk melakukan perulangan yang mana fungsi itu akan berhenti jika
kondisinya telah terpenuhi. Fungsi rekursif memerlukan space memori yang lebih
besar dibanding proses lainnya karena proses iterasi dari fungsi tersebut
dipanggil secara terus menerus.
Untuk memahami fungsi rekursif kita perlu sering bereksperimen untuk
mengetahui cara kerjanya karena fungsi rekursif cukup membingungkan dan
lumayan sulit untuk dipahami. Dalam menggunakan fungsi rekursif harus memiliki
kondisi dimana kondisi tersebut akan menghentikan program ketika kondisinya
telah terpenuhi. Biasanya penggunaan pernyataan if...else... atau sejenisnya
digunakan dalam menggunakan fungsi rekursif.
Perhatikan kode program berikut :
pada program diatas a == 0 adalah kasus dasar yang akan menghentikan iterasi
fungsi ketika nilai a sama dengan 0.
return rekursi(a-1) adalah fungsi rekursi yang akan melakukan proses
perulangan.
Contoh program 1 : Mencari nilai faktorial dengan fungsi rekursif
Hasil Program 1
Penjelasan program 1
Pada program diatas kita bisa melihat, fungsi faktorial() memanggil
dirinya sendiri, dan nilai dari a dikurangi 1, ketika
a kurang dari 1 fungsi faktorial() akan mengembalikan
output.
Contoh program 2 : menghitung nilai pangkat menggunakan fungsi rekursif
Hasil program 2
Pada program diatas, disini kita menghitung pangkat, pengguna akan memasukkan
nilai a dan nilai b, yang mana nilai a akan dipangkatkan
dengan nilai b. Jika kita melihat fungsi rekursifnya
long int pangkat(int a, int b) disini kita memiliki 2 buah parameter
a dan b. Jika nilai b kita beri 0 maka kita akan
mendapatkan angka 1 sebagai kembalian. Namun jika nilai b lebih dari 0
maka nilai a akan dikalikan dengan nilai b-1, dan proses
tersebut akan terus diulangi hingga nilai b bernilai 0.
Kelebihan Dan Kekurangan Fungsi Rekursif
Dalam menggunakan fungsi rekursif di C++, kita harus mempertimbangkan
kelebihan dan kekurangannya.
Kelebihan fungsi rekursif
- Membuat kode program lebih pendek dan singkat.
- Dalam menyelesaikan permasalahan yang berkaitan dengan struktur data dan algoritma tingkat lanjut seperti tree traversal dan graph, fungsi rekursif sangat diperlukan.
Kekurangan fungsi rekursif
- Jika dibandingkan dengan kode program perulangan yang sama, proses debug menggunakan fungsi rekursif bisa lebih sulit.
- Fungsi rekursif waktu prosesor yang lebih lama
- Jika dibandingkan dengan program perulangan yang sama, fungsi rekursif membutuhkan lebih banyak ruang memori
Sekian untuk postingan kali ini sampai jumpa di artikel selanjutnya. Happy a nice day...
Posting Komentar untuk "Fungsi Rekursif pada C++ | Belajar C++ 31 | Tutorial C++ 31"