adalah suatu proses dari fungsi yang memanggil dirinya sendiri secara berulang-ulang.
Pemanggilan prosedur atau fungsi ke dirinya sendiri bisa berarti proses yang berulang yang
tidak bisa diketahui kapan akan berakhir. Karena proses dilakukan berulang-ulang, maka
harus ada suatu kondisi yang mengakhiri prosesnya. Jika tidak, maka proses tidak akan
pernah berhenti sampai memori yang digunakan tidak dapat menampung lagi. Dalam
pemakaian sehari-hari, rekursi merupakan teknik pemrograman yang berdaya guna untuk
digunakan pada pekerjaan pemrograman dengan mengeksperisikannya ke dalam suku-suku
dari program lain dengan menambahkan langkahlangkah sejenis.
Nilai faktorial
Dalam faktorial, n! = n*(n-1)! dengan pengecualian 0! = 1. Berikut contoh
perhitungannya:
Dilihat bahwa dengan hanya rumus n! = (n - 1)! x n saja maka akan tercipta suatu
perhitungan yang tiada berakhir. Bentuk dasar inilah yang nantinya akan mengakhiri
proses rekursi yang terjadi. Dengan kata lain, proses rekursi akan dilakukan terus
menerus hingga suatu bentuk dasar tercapai.
Teknik Iteratif
Persamaan
a. Sama-sama merupakan bentuk perulangan.
b. Dilakukan pengecekan kondisi terlebih dahulu sebelum mengulang.
Perbedaan
a. Iteratif menggunakan FOR, WHILE, DO-WHILE sedangkan rekursif hanya
menggunakan IF.
b. Iteratif dapat berjalan pada program yang terdiri dari prosedur (Tidak terdapat fungsi)
sedangkan
rekursif merupakan fungsi.
https://bertzzie.com/knowledge/analisis-algoritma/Rekursif.html
https://zaharaahyesa.wordpress.com/2014/04/10/algoritma-rekursif/
https://riskyanadewi.wordpress.com/2013/05/17/fungsi-rekursif/