💻

Belajar Computational Thinking dan Fibonacci

Oct 28, 2024

Catatan: Belajar Computational Thinking - Episode 5

Pendahuluan

  • Dosen: Sandika Gali
  • Topik: Latihan Memasang Keramik
  • Ruangan: 2 x n (2 baris, n kolom)
  • Ukuran Keramik: 2 x 1

Detail Soal

  • Contoh: N = 4 (Ukuran ruangan 2x4)
  • Pertanyaan: Berapa jumlah kombinasi pemasangan keramik?

Simulasi Kombinasi

  1. Kombinasi Vertikal:
    • Semua keramik disusun vertikal. (1 kombinasi)
  2. Kombinasi Horizontal:
    • Semua keramik disusun horizontal. (1 kombinasi)
  3. Kombinasi Campuran:
    • Campuran vertikal dan horizontal.
    • Contoh kombinasi:
      • 1 vertikal, sisanya horizontal.
      • 3 vertikal, sisanya horizontal.
  4. Total kombinasi untuk N = 4: 5 kombinasi.

Kombinasi untuk N = 5

  • Total kombinasi: 8
  • Silakan coba untuk N = 5 dan bandingkan hasilnya.

Pola Kombinasi

  • Kombinasi sebelumnya:
    • N = 1: 1 kombinasi
    • N = 2: 2 kombinasi
    • N = 3: 3 kombinasi
    • N = 4: 5 kombinasi
    • N = 5: 8 kombinasi
  • Apakah ada pola?
  • Pola ditemukan: 1, 2, 3, 5, 8
  • Pola ini merupakan Bilangan Fibonacci.

Penjelasan Bilangan Fibonacci

  • Bilangan Fibonacci: menjumlahkan dua bilangan sebelumnya.
  • Contoh:
    • 1 + 1 = 2
    • 1 + 2 = 3
    • 2 + 3 = 5
    • 3 + 5 = 8
    • 5 + 8 = 13

Implementasi dengan JavaScript

  1. Membuat program dengan Visual Studio Code.
  2. Struktur dasar:
    • Folder: 3-fibonacci
    • File: index.html
  3. Variabel yang digunakan:
    • n1: bilangan pertama (1)
    • n2: bilangan kedua (1)
    • next: untuk menyimpan bilangan berikutnya

Konsep Pemrograman

  • Menggunakan pengulangan (loop) untuk menghitung deret Fibonacci.
  • Dekomposisi elemen yang diperlukan.

Menggunakan Rekursi

  • Definisi: Fungsi yang memanggil dirinya sendiri.
  • Contoh implementasi:
    • Jika num <= 2, kembalikan nilai num.
    • Jika num > 2, panggil fungsi Fibonacci dengan parameter num - 1 dan num - 2.

Refactoring

  • Mengubah kode menjadi lebih ringkas dengan teknik refactoring.
  • Menggunakan arrow function untuk menyederhanakan kode.

Kesimpulan

  • Latihan ini mengajarkan konsep computational thinking dan pentingnya bilangan Fibonacci dalam pemrograman.
  • Memahami rekursi dan refactoring sebagai dasar dalam pengembangan program.

Penutup

  • Terima kasih telah menyaksikan.
  • Dosen: Sandika Gali
  • Sampai jumpa di video berikutnya.