Coding dan Kecerdasan ArtifisialSemester 2Pertemuan 10 · 1 Pertemuan × 4 JP (JP = 45 menit)

Rekursi: Fibonacci & Factorial

Menerapkan rekursi pada kasus nyata: Fibonacci dan Factorial, termasuk optimasi memoization dan perbandingan performa.

#rekursi#fibonacci#factorial#memoization#optimasi

MODUL AJAR

Rekursi: Fibonacci & Factorial


Penyusun: Muhamad Hasim As'ari, S.Pd Jenjang: SMK Sekolah: SMK Bina Rahayu Kelas / Semester: X TJKT / Genap Tahun Pelajaran: 2025/2026 Fase: E Alokasi Waktu: 1 Pertemuan × 4 JP (180 menit)


KomponenDeskripsi
1. Identitas Modul
Nama PenyusunMuhamad Hasim As'ari, S.Pd
InstitusiSMK Bina Rahayu
Mata PelajaranCoding dan Kecerdasan Artifisial
Kelas / SemesterX TJKT / Genap
FaseE
Elemen / TopikRekursi: Fibonacci & Factorial (faktorial rekursif, fibonacci rekursif, optimasi memoization)
Alokasi Waktu1 Pertemuan × 4 JP (180 menit)
Tahun Pelajaran2025/2026
2. Kompetensi Awal
a. Peserta didik telah memahami konsep dasar rekursi: definisi, base case, recursive case, dan stack.
b. Peserta didik mampu menulis fungsi rekursif sederhana (faktorial, jumlah deret, pangkat) di Python.
c. Peserta didik mampu men-trace eksekusi fungsi rekursif secara manual.
d. Peserta didik memahami konsep perulangan (for/while) sebagai pembanding rekursi.
e. Peserta didik memiliki kemampuan dasar mengukur waktu eksekusi program di Python.
3. Profil Pelajar Pancasila
a. Bernalar Kritis - Menganalisis performa rekursi vs iterasi dan memilih pendekatan yang tepat untuk masalah tertentu.
b. Mandiri - Menulis fungsi Fibonacci rekursif dan memoization secara mandiri.
c. Kreatif - Menemukan solusi optimasi untuk masalah rekursi yang lambat.
d. Gotong Royong - Bekerja sama dalam praktikum perbandingan performa dan diskusi strategi optimasi.
4. Sarana dan Prasarana
a. Ruang kelas dengan meja dan kursi yang dapat diatur untuk diskusi kelompok.
b. Proyektor/LCD dan layar tayang.
c. Papan tulis / whiteboard dan spidol warna.
d. Laptop/komputer guru dan siswa (minimal 1 per 2 siswa) dengan Python terinstal.
e. Kertas HVS, spidol warna, sticky notes (3 warna).
f. Lembar Kerja Peserta Didik (LKPD) - siap cetak dari lampiran.
g. Bahan bacaan peserta didik - siap cetak dari lampiran.
h. Kartu "Fibonacci Challenge" (siap cetak dari lampiran) - 1 set per kelompok.
i. Timer/stopwatch untuk mengukur waktu eksekusi.
5. Target Peserta Didik
a. Peserta didik reguler - seluruh siswa kelas X TJKT.
b. Peserta didik dengan pencapaian tinggi - diberikan pengayaan berupa analisis kompleksitas waktu O(2^n) vs O(n) memoization, eksplorasi teknik memoization dengan @lru_cache decorator, dan tantangan mengimplementasikan Fibonacci iteratif dengan optimasi memori.
c. Peserta didik dengan kesulitan belajar - diberikan pendampingan, penyederhanaan materi dengan lebih banyak gambar/visual, LKPD terstruktur dengan contoh jawaban, dan bantuan teman sebaya. Fokus pada pemahaman faktorial rekursif dan fibonacci sederhana terlebih dahulu.
6. Model Pembelajaran
a. Pendekatan: Saintifik (mengamati, menanya, mengumpulkan informasi, menalar, mengomunikasikan), berpusat pada peserta didik (student-centered).
b. Model: Problem-Based Learning, Cooperative Learning, Discovery Learning.
c. Metode: Praktikum langsung menulis kode, perbandingan performa (timing), diskusi kelompok optimasi memoization, kuis interaktif.