Rekursi atau recursion
adalah proses dari suatu subprogram (dapat berupa fungsi/prosedur) yang
memanggil dirinya sendiri. Proses rekursi untuk beberapa kasus merupakan
algoritma yang baik dan dapat membuat pemecahan masalah lebih mudah. Akan tetapi sebagai imbalannya, proses rekursi ini harus dibayar mahal dengan memori yang banyak digunakan dikarenakan setiap kali suatu subprogram dipanggil, maka diperlukan sejumlah tambahan memori.
algoritma yang baik dan dapat membuat pemecahan masalah lebih mudah. Akan tetapi sebagai imbalannya, proses rekursi ini harus dibayar mahal dengan memori yang banyak digunakan dikarenakan setiap kali suatu subprogram dipanggil, maka diperlukan sejumlah tambahan memori.
Jika kita menulis suatu
fungsi/prosedur rekursi, yang perlu diperhatikan adalah fungsi/prosedur tersebut
harus mengandung suatu kondisi akhir dari proses rekursi. Kondisi ini
diperlukan untuk mencegah terjadinya proses rekursi yang tidak berujung (indefinite),
yaitu proses rekursi akan dilakukan tanpa henti.
Pada program rekursi ini kita menggunakan Console
Aplication pada Delphi7, yaitu program yang berbasis teks dan tidak
memiliki form. Berikut contoh program rekursi mengurutkan data dengan metode quick
sort dalam bentuk prosedur.Listing Program (1)
Listing Program (2)
setelah pengetikan listing program, lakukan penyimpanan. File
> Save/Save As atau tekan tombol Ctrl+S.
tampilan play program melalui F9
Hasil uji coba program rekursi
{TUGAS!}
2. Tuliskan bagian mana dari program
diatas yang mengandung unsur REKURSI !
Jawaban :
1.Rekursi adalah proses pengulangan sesuatu dengan cara kesamaan-diri.
Sebagai contohnya, saat dua cermin berada paralel antara satu dengan
yang lain, gambar yang tertangkap adalah suatu bentuk rekursi
tak-terbatas. Istilah ini memiliki makna beragam bergantung kepada ragam
disiplin mulai dari linguistik sampai logika. Penggunaan paling umum dari rekursi yaitu dalam matematika dan ilmu komputer, yang mengacu kepada suatu metode mendefinisikan fungsi
yang mana fungsi tersebut menggunakan definisinya sendiri. Secara
spesifik hal ini mendefinisikan suatu instansi tak-terbatas (nilai
fungsi), menggunakan ekpresi terbatas dengan beberapa instansi bisa
merujuk ke instansi lainnya, tapi dengan suatu cara sehingga tidak ada
perulangan atau keterkaitan tak-terbatas dapat terjadi. Istilah ini juga
digunakan secara umum untuk menjelaskan suatu proses pengulangan objek
dengan cara kesamaan-diri.
2. Jawabannya ada pada gambar dibawah, bagian
yg dilingkari warna merah merupakan bagian yang mengandung unsur rekursi.
Mengapa? Pada List_1 disebutkan bahwa sementara:=x[bawah] setelah dilakukan
proses pemecahan larik menjadi 2, pada List_2 disebutkan kembali bahwa
x[i]:=sementara. Jadi, pada List_2 terjadi pemanggilan kembali proses “sementara”.
#SELAMAT MENCOBA#
Tidak ada komentar:
Posting Komentar