Nim : 20133073
Prodi : Akuntansi
PENGANTAR CODING
Pertanyaan Pemahaman
1. Jelaskan apa yang dimaksud dengan fungsi rekursif. Apa syarat-syarat yang
diperlukan dalam menyusun sebuah fungsi rekursif!
Fungsi rekursif adalah salah satu teknik pemrograman yang cukup penting,
dimana dalam beberapa kasus menggunakan fungsi rekursif akan jauh lebih mudah.
Selain itu proses yang berjalan akan jauh lebih cepat dan efisien, hanya saja akan
membutuhkan space memori yang cukup banyak karena proses iterasi dari bagian
fungsi tersebut akan dipanggil secara terus menerus sehingga memerlukan ruang
penyimpanan yang cukup besar jika dibandingkan dengan proses lainnya.
a. Harus ada disediakan kasus penghentian (termination case)
b. Tiap-tiap Struktur pemanggilan harus lebih sederhana daripada struktur
pemanggilan sebelumnya
c. selain kedua syarat sebelumnya maka harus ada pula sebuah pemicu yang
memulai pemanggilan rekursif
2. Sebutkan proses yang terjadi pada pemanggilan fungsi rekursif. Dapatkah
proses rekursif terjadi selamanya (tanpa akhir)? Uraikan jawaban dengan ringkas dan
jelas.
This study source was downloaded by 100000840053190 from CourseHero.com on 12-02-2022 08:49:42 GMT -06:00
https://www.coursehero.com/file/129348367/TUGAS-9-PengCoding-Rahmi-mailiayas-wati-20133073docx/
3. Jelaskan perbedaan antara rekursif dan iterasi (loop) ?
This study source was downloaded by 100000840053190 from CourseHero.com on 12-02-2022 08:49:42 GMT -06:00
https://www.coursehero.com/file/129348367/TUGAS-9-PengCoding-Rahmi-mailiayas-wati-20133073docx/
4. Apabila sebuah program yang memuat fungsi rekursif dieksekusi, jelaskan
bagimana
kompiler menangani variabel-variabel lokal yang terdapat dalam fungsi pada setiap
pemanggilan.
Semua variabel otomatis yang terdapat di dalam fungsi rekursif akan memiliki
lokasi memori sendiri pada setiap kali pemanggilan, makanya memerlukan memori
kerja (RAM) yang lebih besar. Pernyataan-pernyataan yang terdapat sebelum
pemanggilan rekursif akan dieksekusi (dijalankan) dengan urutan yang sama.
Pernyataan-pernyataan yang terdapat setelah pemanggilan rekursif akan dieksekusi
dengan urutan yang terbalik terhadap pemanggilan. Kode program untuk fungsi
rekursif didalam memori tidak duplikat walaupun fungsi tersenut dipanggil beberapa
kali.
Latihan Pemrograman
1. Dengan menggunakan fungsi-fungsi I/O standar getchar( ) dan putchar( ),
buatlah sebuah program rekursif untuk meminta dituliskan sembalang kalimat hingga
ditekannya tombol dan menuliskan kembali kalimat tersebut secara terbalik. Sebagai
contoh, jika dituliskan: Selamat malam nak Maka program akan menuliskan kembali
kalimat ini seperti berikut: kan malam tamaleS
This study source was downloaded by 100000840053190 from CourseHero.com on 12-02-2022 08:49:42 GMT -06:00
https://www.coursehero.com/file/129348367/TUGAS-9-PengCoding-Rahmi-mailiayas-wati-20133073docx/
2. Perkalian dua buah bilangan bulat positif dapat dilakukan dengan metode
penjumlahan sebagai berikut: 12 x 6 = 12 + 12 + 12 + 12 +12 +12 Buatlah sebuah
program menggunakan fungsi rekursif untuk menghitung hasil perkalian dengan
metode penjumlahan seperti contoh di atas.
This study source was downloaded by 100000840053190 from CourseHero.com on 12-02-2022 08:49:42 GMT -06:00
https://www.coursehero.com/file/129348367/TUGAS-9-PengCoding-Rahmi-mailiayas-wati-20133073docx/
This study source was downloaded by 100000840053190 from CourseHero.com on 12-02-2022 08:49:42 GMT -06:00
https://www.coursehero.com/file/129348367/TUGAS-9-PengCoding-Rahmi-mailiayas-wati-20133073docx/
Powered by TCPDF (www.tcpdf.org)