Sebutkan Hal yang perlu diperhatikan ketika membuat fungsi rekursi, saat melakukan pengkodean?
Hal yang harus diperhatikan ketika membuat fungsi rekursif adalah bahwa fungsi tersebut harus memiliki “base case” (kondisi basis), atau disebut juga sebagai“stopping rule” (aturan untuk berhenti), yang membuat fungsi rekursif tersebut memiliki jumlah rekurens (pemanggilan terhadap dirinya sendiri) yang terbatas/berhingga.
Jika base case tidak dapat dicapai oleh sebuah fungsi rekursif, maka fungsi tersebut tidak akan berhenti, yang dapat menyebabkan stack overflow atau penggunaan memori yang berlebihan.
Pembahasan
Secara sederhana, kita dapat mengartikan fungsi rekursif sebagai fungsi yang memanggil dirinya sendiri. Sampai berapa kali dipanggil, tentu harus didefinisikan pada sebuah kondisi basis (base case) yang jelas.
Dua elemen utama dari fungsi rekursif adalah:
base case, atau stopping rule, yang membuat fungsi berhenti dan mengembalikan nilai tertentu.
recursive step, atau langkah rekursif, di mana fungsi tersebut memanggil dirinya sendiri dengan parameter fungsi yang berubah dalam setiap kali pemanggilan dan secara bertahap mengarah ke base case.
Salah satu contoh yang dapat diambil adalah fungsi faktorial. Dalam notasi matematis, untuk n bilangan bulat tak-negatif, n faktorial yang disimbolkan dengan n! didefinisikan sebagai relasi rekurens:
(Definisi di atas sudah mencakup kasus khusus untuk 0!.)
Karena kita memiliki definisi relasi rekurens tersebut, maka implementasi fungsi faktorial(n) dalam pemrograman merupakan translasi langsung dari notasi fungsional n! tersebut.
Dari definisi tersebut, base case atau stopping rule yang berlaku adalah ketika n = 0, dan recursive step memiliki bagian yang mengarahkan n menuju base case, yaitu (n – 1).
Dengan pseudocode, algoritma fungsi rekursif faktorial(n) dapat dirancang sebagai berikut.
function faktorial(n):
if n = 0 then
return 1
end if
return n * factorial(n – 1)
Dapat kita amati bahwa fungsi faktorial(n) berhenti memanggil dirinya sendiri ketika parameternya mencapai nilai 0, yang merupakan nilai pada base case/ stopping rule.
Diketahui f(x)=3x+4 dan g(x)=2x−1 untuk x∈R.… Diketahui f(x)=3x+4 dan g(x)=2x−1 untuk x∈R. Tentukan fungsi-fungsi berikut! (f⋅g)(x) Jawaban yang benar adalah (f · g)(x)= 6x² + 5x - 4. Sifat : (a…
Tentukan persamaan grafik fungsi kuadrat berikut. Tentukan persamaan grafik fungsi kuadrat berikut. Jawaban yang benar adalah y = x² + 2x – 3 Ingat kembali: Menyusun fungsi kuadrat jika diketahui titik…
Fungsi -fungsi tersebut yang merupakan fungsi… Perhatikan fungsi-fungsi berikut : (i). f(x)=2x+3 (iii). f(x)=2−5x (ii). f(x)=9−x^(2) (iv). f(x)=4x−12+x^(2) fungsi -fungsi tersebut yang merupakan fungsi kuadrat adalah ..... a. (i) dan (iii)…
Pemerintah menyediakan fasilitas untuk masyarakat… Pemerintah menyediakan fasilitas untuk masyarakat dari hasil pemungutan pajak pernyataan tersebut merupakan salah satu fungsi APBN yaitu fungsi.... a. stabilitasi b. koordinasi c. distribusi d.…
Diketahui fungsi permintaan Qd = 0, 1P - 250. Pada… Diketahui fungsi permintaan Qd = 0, 1P - 250. Pada saat harga Rp2.000,00, barang yang akan dijual 100 unit. Ketika harga Rp3.000,00, jumlah barang yang…
Titik belok dari grafik fungsi y=9-x³ adalah titik belok dari grafik fungsi y=9-x³ adalah Jawaban yang benar adalah (0, 9) Titik belok pada suatu fungsi terjadi apabila sebelah kiri titik tersebut cekung…
Jika ( fog )(x)=5x^(2)-2 dan g(x)=x^(2)-1, maka… Jika ( fog )(x)=5x^(2)-2 dan g(x)=x^(2)-1, maka fungsi f(x) adalah ... a. f(x)=5x+3 b. f(x)=3x+5 c. f(x)=5x-3 d. f(x)=-3x-5 e. f(x)=-5x-3 Jawaban : A. f(x)…
Program yang memberikan jaminan kepada para peserta… Program yang memberikan jaminan kepada para peserta untuk mengatasi berbagai resiko kehilangan pendapatan yang disebabkan oleh usia pension ataupun kematian disebut fungsi …. a. fungsi…
Diketahui f(x)=−3x+1 dengan daerah asal :… Diketahui f(x)=−3x+1 dengan daerah asal : {−3,−2,−1,0,1,2,3} Tentukan daerah hasil dari fungsi tersebut! Jawaban yang benar adalah {10, 7, 4, 1, -2, -5, -8} Fungsi…
Ketika terjadi kesepakatan pada suatu harga antara… Ketika terjadi kesepakatan pada suatu harga antara penjual dan pembeli maka saat itu pasar mempunyai fungsi … A. Distribusi B.Tawar-menawar harga C. Pembentuk harga D.…