Modul AjarBab 2Fase ESemester 1

Modul Ajar Informatika Kelas 10 Bab 2: Algoritma dan Struktur Data

Modul Ajar ini memuat seluruh rangkaian Informatika kelas 10 untuk Bab 2 "Algoritma dan Struktur Data", lengkap per pertemuan dalam satu dokumen.

MEJAGURU.ID - DOKUMEN MODUL AJAR

Modul Ajar Informatika Kelas 10 Bab 2: Algoritma dan Struktur Data

Informatika - Kelas 10

Bab 2

MODUL AJAR

Informatika — Kelas 10 (Fase E)

Topik: Bab 2 — Algoritma dan Struktur Data

INFORMASI UMUM

Mata PelajaranInformatika
Fase / KelasFase E / Kelas 10
TopikBab 2 — Algoritma dan Struktur Data
Alokasi Waktu22 JP (22 x 45 menit = 990 menit)
Jumlah Pertemuan11
Tahun Ajaran2026/2027
Semester1

TUJUAN PEMBELAJARAN

  1. TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer
  2. TP 10.2.2 Menerapkan algoritma standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan
  3. TP 10.2.3 Menerapkan struktur data standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan
  4. TP 10.2.4 Menerapkan algoritma dan struktur data standar secara terpadu untuk menyelesaikan persoalan

PROFIL LULUSAN

DimensiDisasar
Keimanan dan Ketakwaan terhadap Tuhan Yang Maha Esa
Kewargaan
Penalaran Kritis✓
Kreativitas✓
Kolaborasi✓
Kemandirian✓
Kesehatan
Komunikasi

PERTANYAAN PEMANTIK

  1. Bagaimana cara kita menuliskan rancangan langkah perhitungan matematika yang rumit agar mudah diubah menjadi program komputer?
  2. Mengapa komputer memerlukan penetapan tipe data yang jelas sebelum memproses suatu nilai?
  3. Bagaimana komputer dapat mengambil keputusan yang berbeda ketika menghadapi kondisi yang berbeda, seperti menentukan kelulusan nilai atau pemberian diskon belanja?
  4. Bagaimana cara kita menuliskan aturan percabangan (IF-THEN-ELSE) dalam format pseudocode agar terstruktur rapi dan mudah diterjemahkan ke bahasa pemrograman?
  5. Bagaimana komputer dapat menjalankan instruksi yang sama ratusan kali tanpa kita harus mengetik ulang baris kode tersebut?
  6. Apa perbedaan mendasar antara perulangan yang jumlah iterasinya sudah pasti diketahui sejak awal dan perulangan yang bergantung pada suatu kondisi berhenti?
  7. Mengapa dalam membuat program kita perlu memecah tugas besar menjadi bagian-bagian modul yang lebih kecil seperti fungsi atau prosedur?
  8. Apa perbedaan utama antara fungsi yang menghasilkan nilai kembalian (return value) dan prosedur yang hanya melakukan serangkaian aksi?
  9. Bagaimana caramu menemukan kontak teman bernama 'Zacky' di dalam buku telepon tebal tanpa membuka halaman satu per satu?
  10. Mengapa data harus diurutkan terlebih dahulu agar pencarian dengan membagi dua (biner) dapat berhasil?
  11. Bagaimana langkah paling sistematis menyusun 5 kartu angka acak menjadi terurut dari kecil ke besar?
  12. Apa perbedaan mendasar antara teknik membandingkan pasangan angka bersebelahan dengan teknik mencari angka terkecil lalu menukarnya ke depan?
  13. Bagaimana urutan dokumen yang kamu ambil jika dokumen-dokumen tugas ditumpuk satu per satu di atas meja?
  14. Mengapa tombol 'Undo' pada aplikasi pengolah kata selalu membatalkan tindakan yang paling terakhir dilakukan terlebih dahulu?
  15. Ketika kamu sedang mengantre di kasir kantin atau loket tiket, siapa orang yang pertama kali dilayani dan selesai?
  16. Bagaimana urutan elemen data yang keluar jika sebuah program komputer menggunakan prinsip First In, First Out (FIFO)?
  17. Mengapa data dalam struktur antrean atau tumpukan sering kali perlu diurutkan atau dicari menggunakan algoritma standar terlebih dahulu?
  18. Bagaimana keterpaduan antara pengurutan (sorting) dan pencarian (searching) membuat manipulasi struktur data larik menjadi jauh lebih efisien?
  19. Bagaimana sistem layanan pelanggan memproses tumpukan tiket keluhan sekaligus memastikan tiket prioritas tertangani tanpa kehilangan riwayat transaksi?
  20. Mengapa kita perlu memadukan struktur data (seperti antrean/tumpukan) dengan algoritma pengurutan atau pencarian saat mengolah data dalam jumlah banyak?
  21. Bagaimana memastikan penelusuran langkah algoritma pencarian dan pengurutan berjalan akurat tanpa kesalahan logika?
  22. Mengapa pemilihan struktur data (stack atau queue) dan algoritma yang tepat sangat menentukan keefektifan pseudocode solusi pemrosesan data?

KEGIATAN PEMBELAJARAN

Pertemuan 1 — Menuliskan Rancangan Program Sederhana dalam Pseudocode Bertipe Data dan Ekspresi Dasar — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer

Pendahuluan:

  • Guru membuka pembelajaran dengan salam, memeriksa kehadiran murid, dan menyampaikan tujuan pembelajaran yaitu menuliskan rancangan program sederhana dalam format pseudocode berurutan yang memuat tipe data dan ekspresi dasar (3 menit).
  • Guru melaksanakan asesmen awal diagnostik singkat: murid mengerjakan kuis singkat 3 butir di lembar kertas mengenai tipe data dasar dan hasil ekspresi aritmatika: (1) Nilai 25 tergolong tipe data apa? (acuan: integer/bilangan bulat); (2) Nilai "Informatika" tergolong tipe data apa? (acuan: string/teks); (3) Berapakah hasil ekspresi 10 + 5 * 2? (acuan: 20, karena perkalian didahulukan) (7 menit).

Kegiatan Inti:

Memahami (Bermakna, Menggembirakan):

  • Murid menyimak penjelasan guru tentang konvensi pseudocode dasar: penamaan variabel, penentuan tipe data (integer, real/float, string, boolean), operasi assignment (← atau =), serta urutan evaluasi ekspresi aritmatika dan logika (15 menit).
  • Murid secara berpasangan mengikuti aktivitas cepat 'Tebak Tipe & Nilai': menganalisis 3 potongan ekspresi pseudocode di papan tulis untuk menebak tipe data dan nilai akhirnya: (1) `panjang ← 8`, `lebar ← 5`, `luas ← panjang * lebar` (acuan: tipe integer, nilai 40); (2) `alas ← 7`, `tinggi ← 4`, `luas ← 0.5 * alas * tinggi` (acuan: tipe real/float, nilai 14.0); (3) `nama ← "Budi"`, `status ← (10 > 5)` (acuan: nama tipe string 'Budi', status tipe boolean 'true') (10 menit).

Mengaplikasi (Berkesadaran):

  • Murid secara mandiri mengerjakan Lembar Aktivitas: menuliskan rancangan pseudocode sekuensial (runtut tanpa percabangan/perulangan) untuk menghitung total biaya belanja fotokopi berdasarkan deskripsi: 'Input jumlah_lembar (integer) dan tarif_per_lembar (integer), hitung total_biaya = jumlah_lembar * tarif_per_lembar, lalu tampilkan total_biaya' (acuan struktur pseudocode: deklarasi variabel berserta tipe datanya: `var jumlah_lembar, tarif_per_lembar, total_biaya: integer`; bagian algoritma: `read(jumlah_lembar)`, `read(tarif_per_lembar)`, `total_biaya ← jumlah_lembar * tarif_per_lembar`, `write(total_biaya)`) (25 menit).
  • Murid melanjutkan menuliskan rancangan pseudocode kedua: menghitung rata-rata tiga nilai ujian bertipe real: 'Input nilai1, nilai2, nilai3 (real), hitung rata_rata = (nilai1 + nilai2 + nilai3) / 3, lalu tampilkan rata_rata' (acuan struktur: deklarasi `var nilai1, nilai2, nilai3, rata_rata: real`; algoritma: `read(nilai1, nilai2, nilai3)`, `rata_rata ← (nilai1 + nilai2 + nilai3) / 3.0`, `write(rata_rata)`) (15 menit).

Merefleksi (Berkesadaran):

  • Murid melakukan penelusuran mandiri (desk check / dry run) terhadap pseudocode yang telah ditulis dengan memasukkan data uji konkret (misal: jumlah_lembar = 100, tarif = 250 -> total_biaya = 25000) untuk memverifikasi apakah notasi variabel, tipe data, dan ekspresinya menghasilkan luaran yang tepat (10 menit).

Penutup:

  • Guru bersama murid menyimpulkan aturan penulisan pseudocode yang dekat dengan bahasa komputer yang mencakup deklarasi tipe data dan penulisan ekspresi assignment (3 menit).
  • Guru memberikan penguatan terhadap hasil latihan mandiri murid serta menginformasikan bahwa pertemuan berikutnya akan membahas penambahan struktur kendali percabangan dalam pseudocode (2 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan kartu panduan format pseudocode (template deklarasi variabel dan operasi dasar I/O), sedangkan murid yang cepat diberikan tantangan menghitung konversi suhu dari Celcius ke Fahrenheit dan Reamur menggunakan ekspresi pecahan real.
  • Proses: Murid yang kesulitan menuliskan pseudocode didampingi guru secara bertahap dalam mendefinisikan tipe data variabel terlebih dahulu sebelum menulis baris ekspresi aritmatika.
  • Produk: Format penulisan pseudocode disesuaikan dengan konvensi standar (boleh menggunakan notasi panah penugasan `←` atau simbol `=` selama konsisten).

Asesmen Pertemuan:

Awal:

  • Tes diagnostik singkat tertulis 3 butir: (1) Menentukan tipe data nilai 25 (acuan: integer); (2) Menentukan tipe data "Informatika" (acuan: string); (3) Menghitung hasil ekspresi 10 + 5 * 2 (acuan: 20).

Proses:

  • Observasi keterlibatan saat aktivitas 'Tebak Tipe & Nilai' dan pemeriksaan ketepatan penulisan variabel, tipe data, serta ekspresi penugasan pada Lembar Aktivitas penulisan pseudocode belanja fotokopi dan rata-rata nilai.

Akhir Pertemuan:

  • Pengecekan hasil dry run pseudocode murid pada lembar kerja: memastikan pseudocode memuat deklarasi variabel bertipe data tepat dan ekspresi aritmatika menghasilkan nilai yang benar (acuan: lembar kerja memuat variabel jumlah_lembar, tarif_per_lembar, total_biaya bertipe integer dengan operasi perkalian; serta nilai1, nilai2, nilai3, rata_rata bertipe real dengan operasi pembagian).

Formatif:

  • Penilaian lembar kerja mandiri penulisan pseudocode sekuensial (tipe data dan ekspresi aritmatika dasar)

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penulisan Notasi Tipe Data dan Variabel dalam PseudocodeBelum menuliskan nama variabel atau tidak menyertakan tipe data pada rancangan pseudocode.Menuliskan variabel namun penetapan tipe data belum tepat untuk seluruh variabel (hanya 1 dari 2 soal yang tepat deklarasinya).Menuliskan seluruh variabel dengan tipe data dasar yang tepat pada kedua soal pseudocode dengan sedikit bantuan arahan.Menuliskan seluruh variabel dengan tipe data dasar yang tepat pada kedua soal pseudocode secara mandiri dan konsisten.
Penulisan Ekspresi Dasar dan Penugasan dalam PseudocodeBelum menuliskan ekspresi perhitungan atau notasi penugasan nilai pada pseudocode.Menuliskan ekspresi perhitungan namun notasi penugasan atau urutan operasinya keliru pada salah satu soal.Menuliskan ekspresi perhitungan dan notasi penugasan dengan runtut serta benar pada kedua soal latihan.Menuliskan ekspresi perhitungan dan notasi penugasan secara runtut, tepat, serta teruji menghasilkan nilai luaran yang benar saat ditelusuri secara mandiri.

Refleksi Pertemuan:

Guru:

  • Apakah alokasi waktu 90 menit mencukupi bagi murid untuk memahami penetapan tipe data dan mempraktikkan penulisan pseudocode sekuensial?
  • Bagian mana dari penulisan pseudocode (deklarasi tipe data, ekspresi aritmatika, atau input-output) yang paling sering memicu kesalahan murid?

Murid:

  • Bagian mana yang terasa paling mudah dan paling menantang saat mengubah masalah perhitungan menjadi baris-baris pseudocode?
  • Bagaimana caramu memastikan bahwa ekspresi perhitungan yang kamu tuliskan di pseudocode sudah benar sebelum dijalankan?

Pertemuan 2 — Menuliskan Solusi Rancangan Program dengan Struktur Kendali Percabangan dalam Format Pseudocode — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer

Pendahuluan:

  • Guru membuka kelas dengan salam, memeriksa kehadiran murid, dan menyampaikan topik pembelajaran yaitu menuliskan rancangan program dengan struktur percabangan dalam format pseudocode (5 menit).
  • Murid mengerjakan asesmen awal singkat untuk mengidentifikasi kondisi logika: guru memberikan soal 'Jika nilai >= 75 maka Lulus, selain itu Remedial. Tentukan status untuk nilai 80 dan nilai 70!' (acuan: nilai 80 -> Lulus, nilai 70 -> Remedial) dan murid menuliskan jawabannya di selembar kertas/papan tulis mini (10 menit).

Kegiatan Inti:

Memahami (Bermakna, Menggembirakan):

  • Murid menyimak penjelasan guru mengenai konvensi penulisan pseudocode percabangan satu kondisi (IF condition THEN ... ENDIF) dan dua kondisi (IF condition THEN ... ELSE ... ENDIF) serta operator pembanding relasional (>, <, >=, <=, ==, !=) secara terstruktur (15 menit).
  • Murid secara berpasangan mengikuti kuis cepat 'Tebak Alur Percabangan' yang menyenangkan di layar/papan tulis: menelusuri 2 kasus pseudocode diskon belanja (Kasus A: total_belanja = 120000, IF total_belanja >= 100000 THEN diskon = 10000 ELSE diskon = 0 ENDIF -> acuan: diskon = 10000; Kasus B: total_belanja = 80000 -> acuan: diskon = 0) untuk memastikan pemahaman sintaks dan evaluasi kondisi (10 menit).

Mengaplikasi (Berkesadaran, Bermakna):

  • Murid secara mandiri menuliskan rancangan pseudocode untuk 2 kasus nyata pada Lembar Aktivitas: Kasus 1 'Pengecekan Bilangan Positif atau Negatif/Nol' dan Kasus 2 'Penentuan Tarif Tiket Wahana' (acuan Kasus 1: READ bilangan; IF bilangan > 0 THEN WRITE 'Positif' ELSE WRITE 'Bukan Positif' ENDIF; acuan Kasus 2: READ usia; IF usia >= 12 THEN WRITE 'Tarif Dewasa: 50000' ELSE WRITE 'Tarif Anak: 25000' ENDIF) (25 menit).
  • Guru berkeliling melakukan asesmen proses dan memberikan scaffolding/bimbingan langsung bagi murid yang masih keliru pada penempatan kondisi percabangan atau struktur penutup ENDIF (10 menit).

Merefleksi (Berkesadaran):

  • Murid melakukan penelusuran mandiri (tracing/desk check) terhadap pseudocode yang telah ditulisnya dengan menguji setidaknya 2 kasus uji nilai input untuk membuktikan rancangan berjalan sesuai logika kondisi (10 menit).

Penutup:

  • Guru bersama murid menyimpulkan aturan sintaks utama dalam menuliskan struktur percabangan pada pseudocode (IF-THEN-ELSE-ENDIF) (3 menit).
  • Murid menuliskan satu refleksi singkat dan guru menginformasikan topik pertemuan berikutnya yaitu struktur kendali perulangan (looping) dalam pseudocode (2 menit).

Diferensiasi:

  • Konten: Menyediakan contoh template rumpang pseudocode percabangan bagi murid yang memerlukan dukungan lebih, dan menyediakan studi kasus percabangan bersarang (nested IF) untuk murid yang berpencapaian tinggi.
  • Proses: Memberikan bimbingan terpandu secara individual saat latihan menulis bagi murid yang lambat, serta memberi kemandirian penuh bagi murid yang sudah cepat memahami.
  • Produk: Murid cepat menuliskan variasi kondisi tambahan (tiga kondisi: IF - ELSE IF - ELSE), sedangkan murid yang perlu bimbingan memfokuskan pada penyelesaian dua kondisi dasar (IF - ELSE).

Asesmen Pertemuan:

Awal:

  • Diagnostik pemahaman logika kondisi: Murid menentukan output dari pernyataan 'Jika nilai >= 75 maka Lulus, selain itu Remedial' untuk input nilai = 80 dan nilai = 70. (Acuan: nilai 80 menghasilkan 'Lulus'; nilai 70 menghasilkan 'Remedial').

Proses:

  • Formatif kinerja penulisan pseudocode: Menilai kelengkapan dan ketepatan penulisan pseudocode pada Kasus 1 (bilangan positif/bukan) dan Kasus 2 (tarif tiket usia >= 12 tahun). Acuan sintaks: memuat deklarasi/baca variabel (READ), struktur IF kondisi THEN instruksi, ELSE instruksi, dan diakhiri ENDIF.

Akhir Pertemuan:

  • Cek pemahaman di akhir sesi: Murid memeriksa rancangan pseudocode miliknya dengan uji kasus input batas (boundary values, misal usia = 12) untuk memastikan instruksi pada blok THEN yang dieksekusi, bukan blok ELSE. Kriteria: hasil eksekusi manual sesuai logika kondisi yang ditulis.

Formatif:

  • Asesmen awal berupa tes diagnostik singkat menentukan output dari kondisi logika nilai (acuan: nilai 80 -> Lulus, nilai 70 -> Remedial)
  • Observasi formatif pengerjaan penulisan pseudocode percabangan pada Kasus 1 (Pengecekan Bilangan) dan Kasus 2 (Tarif Tiket Wahana)

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penulisan Struktur Percabangan PseudocodeBelum mampu menuliskan struktur percabangan pseudocode; notasi kondisi atau kata kunci IF-THEN-ELSE tidak lengkap pada kedua kasus.Mampu menuliskan struktur pseudocode percabangan dengan kata kunci IF dan THEN secara tepat pada 1 dari 2 kasus yang diberikan, namun masih melewatkan blok ELSE atau penutup ENDIF.Mampu menuliskan solusi rancangan pseudocode percabangan (IF-THEN-ELSE-ENDIF) dengan ekspresi kondisi dan blok instruksi yang tepat pada kedua kasus (Kasus 1 dan Kasus 2).Mampu menuliskan solusi rancangan pseudocode percabangan secara mandiri, tepat, dan rapi sesuai konvensi standar pada kedua kasus serta mampu menambahkan variasi kondisi percabangan majemuk (ELSE IF) dengan benar.

Refleksi Pertemuan:

Guru:

  • Apakah murid dapat memahami logika kondisi perbandingan relasional dalam pembentukan kalimat IF-THEN-ELSE?
  • Bagian mana dari penulisan pseudocode percabangan yang paling sering mengalami kesalahan sintaks (misal: lupa ENDIF atau salah operator logika)?

Murid:

  • Bagian mana dari penulisan pseudocode percabangan yang terasa paling mudah dan paling menantang bagimu?
  • Bagaimana caramu membuktikan bahwa logika percabangan yang kamu tuliskan sudah benar?

Pertemuan 3 — Menuliskan Solusi Rancangan Program dengan Struktur Kendali Perulangan dalam Format Pseudocode — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer

Pendahuluan:

  • Guru membuka pembelajaran dengan salam, memeriksa kehadiran murid, serta menyampaikan tujuan pembelajaran pertemuan ini yaitu menuliskan rancangan program berstruktur kendali perulangan dalam format pseudocode (5 menit).
  • Guru melaksanakan asesmen awal berupa tes diagnostik singkat 3 butir untuk memeriksa kesiapan logika perulangan dan kondisi berhenti: (1) 'Berapa kali cetak jika perulangan FOR i = 1 TO 5 DO cetak(i)?', (2) 'Jika nilai x = 1, kapan perulangan WHILE x < 4 berhenti jika setiap putaran x bertambah 1?', (3) 'Kapan konstruksi REPEAT ... UNTIL kondisi berhenti dieksekusi?' (acuan: butir 1 = 5 kali; butir 2 = berhenti saat x bernilai 4; butir 3 = berhenti ketika kondisi bernilai TRUE/benar) (10 menit).

Kegiatan Inti:

Memahami (Bermakna, Menggembirakan):

  • Murid menyimak pemaparan guru mengenai struktur sintaks pseudocode perulangan terhitung (FOR-DO) dan perulangan berkondisi (WHILE-DO serta REPEAT-UNTIL), mencakup inisialisasi variabel pencacah (counter), evaluasi kondisi terminasi, dan pembaruan nilai pencacah (increment/decrement) (10 menit).
  • Murid secara berpasangan mengikuti aktivitas kuis interaktif cepat 'Tebak Putaran dan Nilai Akhir' yang menyenangkan (joyful), di mana guru menampilkan 3 potongan pseudocode di layar proyektor: Potongan A (FOR k = 3 TO 7 DO cetak(k)), Potongan B (m = 10; WHILE m > 4 DO m = m - 2), Potongan C (count = 0; REPEAT count = count + 3 UNTIL count >= 9); murid mencocokkan jumlah putaran dan nilai akhir variabel (acuan: Potongan A = 5 putaran, nilai akhir k = 7; Potongan B = 3 putaran pembaruan, nilai akhir m = 4; Potongan C = 3 putaran pembaruan, nilai akhir count = 9) (15 menit).

Mengaplikasi (Berkesadaran, Bermakna):

  • Murid secara mandiri menuliskan pseudocode untuk Masalah 1: 'Rancang program yang mencetak deret bilangan kelipatan 5 dari 5 hingga 50 menggunakan perulangan FOR' (acuan: Deklarasi i: integer; Algoritma: FOR i = 1 TO 10 DO cetak(i * 5) ENDFOR ATAU FOR i = 5 TO 50 STEP 5 DO cetak(i) ENDFOR) (15 menit).
  • Murid secara mandiri menuliskan pseudocode untuk Masalah 2: 'Rancang program hitung mundur peluncuran roket dari angka 10 hingga 1, kemudian mencetak kata "Luncurkan!" menggunakan struktur WHILE' (acuan: Deklarasi counter: integer; Algoritma: counter = 10; WHILE counter >= 1 DO cetak(counter); counter = counter - 1; ENDWHILE; cetak("Luncurkan!")) (15 menit).

Merefleksi (Berkesadaran):

  • Murid melakukan penelusuran mandiri (dry-run trace table) terhadap pseudocode yang telah ditulisnya untuk memastikan tidak terjadi kondisi perulangan tanpa henti (infinite loop) dan memastikan nilai awal serta akhir variabel tepat (10 menit).

Penutup:

  • Murid dan guru menyimpulkan elemen-elemen penting dalam menyusun pseudocode perulangan (inisialisasi, kondisi berhenti, dan perubahan nilai pencacah) agar instruksi berhenti sesuai kebutuhan rancangan (5 menit).
  • Guru memberikan penguatan terhadap hasil latihan murid, mengumpulkan lembar kerja penulisan pseudocode, serta menyampaikan materi pertemuan berikutnya yaitu struktur kendali fungsi dan prosedur (5 menit).

Diferensiasi:

  • Konten: Murid yang memerlukan bimbingan disediakan lembar kerja berstruktur rumpang (scaffolding sintaks FOR dan WHILE), sedangkan murid dengan pemahaman cepat diberikan masalah tambahan berupa perulangan akumulator (menghitung total jumlahan bilangan 1 sampai N).
  • Proses: Murid yang belum menguasai pembaruan variabel pencacah dipandu secara langsung oleh guru dalam membuat tabel penelusuran nilai langkah demi langkah, sementara murid yang mahir bekerja mandiri menyelesaikan penulisan pseudocode.
  • Produk: Seluruh murid menghasilkan tulisan rancangan program dalam notasi pseudocode; bagi murid yang selesai lebih cepat, rancangan dilengkapi dengan dua alternatif penulisan (menggunakan FOR dan menggunakan WHILE untuk persoalan yang sama).

Asesmen Pertemuan:

Awal:

  • Tes diagnostik singkat tertulis 3 butir: (1) Berapa kali cetak jika perulangan FOR i = 1 TO 5 DO cetak(i)? (acuan: 5 kali); (2) Jika nilai x = 1, kapan perulangan WHILE x < 4 berhenti jika setiap putaran x bertambah 1? (acuan: berhenti saat x mencapai nilai 4); (3) Kapan konstruksi REPEAT ... UNTIL kondisi berhenti dieksekusi? (acuan: berhenti ketika kondisi bernilai TRUE/benar).

Proses:

  • Pemeriksaan ketepatan sintaks pseudocode perulangan pada Masalah 1 (acuan: memuat inisialisasi counter, batasan loop kelipatan 5 hingga 50, dan sintaks FOR-DO yang valid) dan Masalah 2 (acuan: inisialisasi counter bernilai 10, kondisi WHILE counter >= 1, decrement counter = counter - 1 di dalam blok loop, dan cetak instruksi setelah loop berakhir).

Akhir Pertemuan:

  • Cek pemahaman tertulis singkat: Murid menelaah 1 potongan pseudocode berikut: 'a = 1; WHILE a <= 3 DO cetak(a); ENDWHILE' lalu mengidentifikasi kesalahan logikanya (acuan jawaban: terjadi perulangan tanpa henti/infinite loop karena tidak ada pembaruan nilai a atau kenaikan counter di dalam blok perulangan sehingga nilai a selalu 1).

Formatif:

  • Penilaian proses penulisan pseudocode pada lembar kerja murid (Masalah 1 deret kelipatan 5 dan Masalah 2 hitung mundur roket)
  • Observasi ketepatan logika penulisan struktur kondisi berhenti dan pembaruan variabel saat pengerjaan mandiri

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penulisan Notasi Pseudocode Perulangan Terhitung (FOR)Belum mampu menuliskan struktur pseudocode FOR secara tepat; inisialisasi atau batasan akhir tidak terdefinisi.Mampu menuliskan struktur pseudocode FOR namun batasan nilai akhir atau pencacah kelipatan masih belum menghasilkan deret yang tepat sesuai persoalan.Mampu menuliskan pseudocode FOR secara tepat dan lengkap sesuai acuan masalah deret kelipatan 5 dari 5 hingga 50.Mampu menuliskan pseudocode FOR secara tepat dan mandiri, serta menyajikan alternatif penulisan langkah penambahan (STEP 5 maupun perkalian counter i*5) secara konsisten dan terstruktur.
Penulisan Notasi Pseudocode Perulangan Berkondisi (WHILE)Belum mampu menuliskan struktur pseudocode WHILE; kondisi terminasi atau blok aksi loop tidak terstruktur.Mampu menuliskan struktur pseudocode WHILE namun belum menyertakan pembaruan variabel pencacah (decrement) sehingga berpotensi infinite loop.Mampu menuliskan pseudocode WHILE secara lengkap dan tepat mencakup inisialisasi, kondisi terminasi, dan penurunan nilai variabel sesuai acuan masalah hitung mundur 10 hingga 1.Mampu menuliskan pseudocode WHILE secara sempurna dan mandiri tanpa kesalahan logika, serta memastikan urutan instruksi di dalam maupun di luar blok perulangan tersusun runtut.

Refleksi Pertemuan:

Guru:

  • Apakah seluruh murid berhasil memahami perbedaan mekanisme perulangan terhitung (FOR) dan perulangan berkondisi (WHILE)?
  • Apakah ada murid yang masih mengalami kesulitan dalam menentukan instruksi pembaruan nilai variabel (increment/decrement) di dalam blok loop?

Murid:

  • Bagian mana dari penulisan pseudocode perulangan yang paling menantang: menentukan kondisi berhenti atau menuliskan pembaruan variabel pencacah?
  • Bagaimana saya memastikan pseudocode yang saya tulis tidak mengalami perulangan tanpa henti (infinite loop)?

Pertemuan 4 — Menuliskan Solusi Rancangan Program Berstruktur Fungsi dan Prosedur dalam Format Pseudocode — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer

Pendahuluan:

  • Guru membuka pembelajaran, memeriksa kesiapan belajar, dan menyampaikan tujuan pembelajaran yakni menuliskan solusi rancangan program berstruktur fungsi dan prosedur dalam format pseudocode (5 menit).
  • Guru memberikan asesmen diagnostik singkat berupa 2 butir soal telaah notasi pseudocode modular untuk memetakan kesiapan murid: (1) Menentukan kata kunci yang mengembalikan nilai pada fungsi; (2) Membedakan subprogram tanpa nilai kembali (prosedur) dengan subprogram bernilai kembali (fungsi) (acuan kunci diagnostik: Soal 1 = return/kembalikan; Soal 2 = fungsi mengembalikan nilai melalui return, sedangkan prosedur tidak mengembalikan nilai) (10 menit).

Kegiatan Inti:

Memahami (Bermakna):

  • Murid menyimak pemaparan guru mengenai struktur penulisan modul program dalam pseudocode: deklarasi fungsi (Function nama(parameter): tipe_data), pengembalian nilai (return), deklarasi prosedur (Procedure nama(parameter)), serta cara pemanggilannya pada program utama (10 menit).
  • Murid mengidentifikasi 2 contoh potongan pseudocode: Subprogram A (Fungsi hitung_luas_persegi(sisi: integer) -> integer; return sisi * sisi) dan Subprogram B (Prosedur sapa_pengguna(nama: string); cetak "Halo ", nama) untuk mengenali komponen parameter, badan subprogram, dan nilai kembali (10 menit).

Mengaplikasi (Menggembirakan, Berkesadaran):

  • Murid mengikuti permainan tebak notasi rumpang berpasangan "Modular Challenge" di mana setiap murid saling menguji dengan melengkapi parameter dan kata kunci return pada 3 kartu rumpang pseudocode subprogram secara bergantian (15 menit).
  • Murid secara mandiri menuliskan solusi rancangan program dalam format pseudocode untuk Kasus 1: sebuah fungsi bernama `hitung_diskon(total_belanja: integer) -> integer` dengan aturan jika total_belanja >= 100000 maka return total_belanja * 10 / 100, selain itu return 0 (15 menit).
  • Murid secara mandiri menuliskan solusi rancangan program dalam format pseudocode untuk Kasus 2: sebuah prosedur bernama `tampilkan_struk(nama_barang: string, harga_akhir: integer)` yang mencetak nama barang dan harga akhir, serta menuliskan pemanggilan kedua subprogram tersebut di program utama (15 menit).

Merefleksi (Berkesadaran):

  • Murid menelaah kembali hasil penulisan pseudocode masing-masing dengan mencocokkan keterpenuhan struktur: nama subprogram, parameter input, struktur badan subprogram, keberadaan instruksi return (untuk fungsi), serta blok program pemanggilnya (5 menit).

Penutup:

  • Guru bersama murid menyimpulkan aturan penulisan fungsi dan prosedur dalam format pseudocode yang dekat dengan bahasa komputer (3 menit).
  • Murid mengerjakan cek pemahaman akhir sesi pembelajaran pada selembar kertas dan menyerahkannya kepada guru (2 menit).

Diferensiasi:

  • Konten: Menyediakan kartu template sintaks penulisan fungsi/prosedur bagi murid yang membutuhkan scaffolding, dan skenario perhitungan tarif bertingkat bagi murid yang telah mahir.
  • Proses: Bimbingan langkah demi langkah dalam merumuskan parameter dan nilai balik bagi murid yang membutuhkan bantuan; kerja mandiri penuh bagi murid yang cepat.
  • Produk: Format pseudocode modular terstruktur fungsi dan prosedur sesuai tingkat kompleksitas kasus latihan.

Asesmen Pertemuan:

Awal:

  • Dua butir diagnostik tertulis singkat sebelum kegiatan inti: (1) Tuliskan kata kunci yang digunakan untuk mengirimkan hasil perhitungan dari dalam fungsi ke pemanggilnya! (Acuan: return / kembalikan); (2) Jika subprogram hanya bertugas mencetak teks ke layar tanpa menghasilkan nilai perhitungan baru ke program utama, subprogram tersebut lebih tepat dideklarasikan sebagai apa? (Acuan: Prosedur / Procedure).

Proses:

  • Pemeriksaan lembar latihan mandiri menuliskan pseudocode Kasus 1 (Fungsi hitung_diskon) dan Kasus 2 (Prosedur tampilkan_struk). Acuan jawaban Kasus 1: Function hitung_diskon(total_belanja: integer) -> integer; IF total_belanja >= 100000 THEN return total_belanja * 0.1 ELSE return 0 ENDIF ENDFUNCTION. Acuan jawaban Kasus 2: Procedure tampilkan_struk(nama_barang: string, harga_akhir: integer); OUTPUT(nama_barang); OUTPUT(harga_akhir); ENDPROCEDURE; Program Utama: panggil hitung_diskon dan tampilkan_struk.

Akhir Pertemuan:

  • Cek pemahaman tertulis 1 butir di penutup: 'Diberikan kebutuhan menghitung keliling segitiga dengan input 3 sisi (a, b, c bertipe real), tuliskan baris header fungsi dan baris return penjumlahannya dalam pseudocode!' (Acuan kunci: Function hitung_keliling(a: real, b: real, c: real) -> real; return a + b + c; ENDFUNCTION).

Formatif:

  • Asesmen awal diagnostik kesiapan konsep fungsi dan prosedur dalam pseudocode
  • Observasi unjuk kerja saat permainan pasangan 'Modular Challenge'
  • Penilaian penulisan lembar kerja mandiri rancangan pseudocode berstruktur fungsi dan prosedur

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penulisan Notasi Header dan Parameter SubprogramBelum menuliskan nama subprogram dan parameter dengan format pseudocode yang tepat.Menuliskan nama subprogram dan parameter namun tipe data atau kata kunci Function/Procedure belum lengkap.Menuliskan nama subprogram, parameter input beserta tipe datanya dengan format pseudocode secara tepat dan lengkap.Menuliskan nama subprogram, parameter input beserta tipe datanya secara mandiri, tepat, lengkap, dan rapi sesuai konvensi standar.
Penulisan Badan Subprogram dan Logika Nilai Kembalian (Return)Belum mampu menuliskan instruksi badan subprogram dan membedakan penggunaan nilai kembali (return) pada fungsi.Menuliskan instruksi badan subprogram tetapi instruksi return pada fungsi belum tepat atau tertukar dengan prosedur.Tepat menuliskan instruksi pemrosesan dalam badan subprogram serta menempatkan nilai kembalian (return) pada fungsi dan tanpa return pada prosedur.Tepat, runtut, dan konsisten dalam menuliskan seluruh logika pemrosesan badan subprogram fungsi dan prosedur hingga program pemanggil secara mandiri.

Refleksi Pertemuan:

Guru:

  • Apakah alokasi waktu 90 menit mencukupi bagi seluruh murid untuk berlatih menuliskan struktur fungsi dan prosedur secara mandiri?
  • Apakah media kartu rumpang 'Modular Challenge' efektif membantu murid membedakan fungsi dan prosedur sebelum penulisan mandiri?

Murid:

  • Bagian mana dari penulisan parameter dan instruksi return yang paling menantang bagiku?
  • Bagaimana caraku membedakan kapan suatu persoalan harus diselesaikan dengan fungsi dan kapan cukup dengan prosedur?

Pertemuan 5 — Menerapkan Algoritma Standar Pencarian Linear dan Biner untuk Menyelesaikan Persoalan — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.2 Menerapkan algoritma standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan

Pendahuluan:

  • Guru membuka pembelajaran dengan salam, memeriksa kehadiran murid, dan menyampaikan tujuan pembelajaran yaitu menerapkan algoritma standar pencarian linear dan pencarian biner untuk menyelesaikan persoalan (5 menit).
  • Guru melaksanakan asesmen awal singkat melalui 2 butir diagnostik: (1) 'Jika kamu mencari angka 7 pada deret acak [12, 4, 7, 2, 9], di posisi indeks ke berapa angka 7 ditemukan jika diperiksa dari kiri satu per satu?' (acuan jawaban: posisi ke-3 atau indeks ke-2, langkah pemeriksaan: 12 -> 4 -> 7); (2) 'Mengapa pencarian biner tidak bisa langsung diterapkan pada deret acak tersebut tanpa diurutkan terlebih dahulu?' (acuan jawaban: karena pencarian biner bergantung pada perbandingan nilai tengah untuk mengeliminasi separuh bagian; jika data acak, kita tidak tahu apakah target berada di sebelah kiri atau kanan nilai tengah) (10 menit).

Kegiatan Inti:

Memahami (Bermakna, Menggembirakan):

  • Murid menyimak pemodelan algoritma pencarian linear (memeriksa elemen satu per satu dari awal hingga akhir) dan pencarian biner (menentukan nilai tengah low, mid, high, lalu memotong ruang pencarian menjadi setengahnya) yang didemonstrasikan guru pada papan tulis (15 menit).
  • Murid berpasangan memainkan simulasi 'Tebak Angka Rahasia 1-100' secara bergantian untuk mempraktikkan langsung prinsip eliminasi separuh rentang nilai tengah pada pencarian biner (10 menit).

Mengaplikasi (Berkesadaran, Bermakna):

  • Murid menerima Lembar Kerja Persoalan Pencarian yang memuat 2 kasus penerapan algoritma: Kasus 1 (Pencarian Linear) mencari data NISN murid 1042 pada daftar acak [1015, 1088, 1042, 1003, 1067] dengan menuliskan seluruh tahapan pembandingan indeks 0 hingga target ditemukan; Kasus 2 (Pencarian Biner) mencari nilai target 58 pada deret terurut [12, 25, 34, 46, 58, 67, 79, 88, 95] dengan menuliskan jejak nilai indeks low, high, mid, serta elemen yang diperiksa pada tiap iterasi (25 menit).
  • Guru berkeliling mengamati pengerjaan murid, memberikan bimbingan bagi murid yang keliru menghitung nilai indeks tengah (mid = (low + high) div 2), serta mencatat ketercapaian penerapan langkah algoritma (10 menit).

Merefleksi (Berkesadaran):

  • Murid memeriksa kembali dan membandingkan efisiensi jumlah langkah pencarian linear versus pencarian biner pada data terurut berdasarkan hasil pengerjaan kasus (acuan: linear membutuhkan hingga N langkah, biner membagi dua rentang sehingga langkah jauh lebih sedikit) (5 menit).

Penutup:

  • Murid bersama guru menyimpulkan syarat dan langkah kerja penerapan algoritma pencarian linear (bisa untuk data acak maupun terurut, langkah berurutan) dan pencarian biner (wajib data terurut, menentukan nilai tengah berulang) (5 menit).
  • Guru memberikan umpan balik atas pengerjaan lembar kerja dan menginformasikan bahwa materi pertemuan berikutnya adalah algoritma standar pengurutan data (sorting) (5 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan kartu panduan rumus perhitungan indeks tengah: mid = floor((low + high) / 2) beserta contoh bertahap; murid berkemampuan cepat diberikan deret dengan jumlah elemen genap 12 angka untuk ditelusuri.
  • Proses: Murid yang masih kesulitan dipasangkan dengan teman sebaya untuk menelusuri data langkah demi langkah; murid cepat bekerja mandiri menyelesaikan penelusuran kasus data tak ditemukan.
  • Produk: Murid menuangkan hasil penelusuran algoritma dalam tabel langkah pencarian terstruktur pada lembar kerja yang disediakan.

Asesmen Pertemuan:

Awal:

  • Diagnostik lisan/tulis 2 butir sebelum masuk materi inti: (1) Penelusuran manual: 'Berapa kali pembandingan dilakukan untuk menemukan angka 7 pada deret acak [12, 4, 7, 2, 9]?' (acuan jawaban: 3 kali pembandingan, yaitu membandingkan 7 dengan 12, 4, dan 7); (2) Konsep syarat: 'Apakah deret angka acak dapat langsung dicari menggunakan algoritma pencarian biner? Jelaskan alasannya!' (acuan jawaban: Tidak bisa, karena pencarian biner mensyaratkan data harus terurut agar perbandingan dengan elemen tengah valid untuk mengeliminasi separuh bagian kiri atau kanan).

Proses:

  • Observasi formatif saat pengerjaan Lembar Kerja Persoalan Pencarian. Kasus 1 (Pencarian Linear target 1042 pada [1015, 1088, 1042, 1003, 1067]): acuan jawaban benar = langkah 1 bandingkan indeks 0 (1015 != 1042), langkah 2 bandingkan indeks 1 (1088 != 1042), langkah 3 bandingkan indeks 2 (1042 == 1042, ditemukan pada indeks 2 setelah 3 langkah). Kasus 2 (Pencarian Biner target 58 pada [12, 25, 34, 46, 58, 67, 79, 88, 95] dengan indeks 0-8): acuan jawaban benar = Iterasi 1: low=0, high=8, mid=(0+8)/2=4, data[4]=58, 58 == 58 -> langsung ditemukan pada iterasi 1 di indeks 4. Kasus 2 Tambahan (target 79): Iterasi 1 mid=4 data[4]=58 (79 > 58, low=5); Iterasi 2: low=5, high=8, mid=(5+8)/2=6, data[6]=79 == 79 -> ditemukan di indeks 6 setelah 2 iterasi.

Akhir Pertemuan:

  • Cek pemahaman akhir sesi (1 butir tertulis): 'Diberikan deret terurut [5, 10, 15, 20, 25]. Tuliskan langkah pencarian biner untuk mencari angka 20!' (acuan jawaban: Iterasi 1: low=0, high=4, mid=(0+4)/2=2, data[2]=15. Karena 20 > 15, maka low menjadi mid+1 = 3. Iterasi 2: low=3, high=4, mid=(3+4)/2=3, data[3]=20. Karena data[3] == 20, target 20 ditemukan pada indeks 3 dalam 2 langkah pencarian).

Formatif:

  • Penilaian proses unjuk kerja penelusuran algoritma linear dan biner pada Lembar Kerja Persoalan Pencarian menggunakan rubrik analitis.
  • Cek diagnostik awal dan tanya jawab pemahaman saat penutupan.

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penerapan Algoritma Pencarian LinearBelum mampu menerapkan langkah pembandingan elemen secara berurutan dari indeks awal, salah mencatat langkah penelusuranMenerapkan langkah pembandingan berurutan namun berhenti sebelum target ditemukan atau salah menentukan indeks letak dataMenerapkan algoritma pencarian linear secara tepat dengan menuliskan seluruh tahapan pembandingan elemen dan indeks penemuan data target sesuai acuanMenerapkan algoritma pencarian linear secara tepat, runtut, mandiri, serta mampu menentukan jumlah total operasi pembandingan pada kasus data ada maupun data tidak ditemukan
Penerapan Algoritma Pencarian BinerBelum mampu menentukan nilai indeks low, high, dan mid atau menerapkan pembagian rentang pada data terurutMampu menghitung indeks nilai tengah (mid) tetapi keliru memperbarui batas low atau high saat nilai target berbeda dari nilai tengahMenerapkan algoritma pencarian biner secara tepat dengan menghitung mid dan memperbarui rentang pencarian hingga data target ditemukan sesuai acuan kunciMenerapkan algoritma pencarian biner secara tepat, cepat, mandiri pada variasi data terurut ganjil maupun genap beserta jejak nilai low, high, mid yang sepenuhnya akurat

Refleksi Pertemuan:

Guru:

  • Apakah aktivitas simulasi tebak angka efektif membantu murid memahami logika eliminasi ruang pencarian biner?
  • Bagian mana dari langkah penelusuran pencarian biner yang paling sering membuat murid keliru dalam memperbarui indeks low dan high?

Murid:

  • Apa perbedaan utama langkah kerja pencarian linear dan pencarian biner saat kamu menerapkannya pada data?
  • Langkah mana dalam penentuan nilai tengah pencarian biner yang menurutmu paling menantang untuk dihitung?

Pertemuan 6 — Menerapkan Algoritma Standar Pengurutan Data untuk Menyelesaikan Persoalan — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.2 Menerapkan algoritma standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan

Pendahuluan:

  • Guru membuka sesi pembelajaran, memeriksa kehadiran murid, dan menyampaikan ruang lingkup aktivitas mengenai penerapan algoritma pengurutan data standar (10 menit).
  • Guru melaksanakan asesmen awal singkat untuk memetakan pemahaman awal murid mengenai mekanisme pengurutan data (5 menit).

Kegiatan Inti:

Memahami (Bermakna):

  • Murid menyimak demonstrasi guru mengenai mekanisme penelusuran dua algoritma pengurutan standar (Bubble Sort dan Insertion Sort) menggunakan 5 deret angka acak: [7, 2, 8, 3, 5] (15 menit).

Mengaplikasi (Menggembirakan, Berkesadaran):

  • Secara berpasangan, murid memainkan tantangan peragaan kartu angka (Aktivitas 10.2-11-UP Bermain Kartu) untuk menerapkan langkah Bubble Sort dan Insertion Sort pada himpunan data acak: [9, 4, 6, 2, 5] hingga terurut menaik (20 menit).
  • Secara mandiri, murid menyelesaikan lembar kerja penelusuran algoritma dengan menuliskan tahapan larik data tiap iterasi/pass untuk menyelesaikan persoalan pengurutan data nilai: [25, 12, 40, 15, 30] (25 menit).

Merefleksi (Berkesadaran):

  • Murid mencocokkan hasil langkah pengurutan pada lembar kerja dengan kunci penelusuran langkah yang ditampilkan guru dan mencatat evaluasi ketelitian langkahnya (5 menit).

Penutup:

  • Guru memberikan penguatan terhadap prinsip dasar perbandingan dan pertukaran elemen pada algoritma pengurutan serta menyampaikan topik pertemuan berikutnya (10 menit).

Diferensiasi:

  • Konten: Menyediakan kartu fisik berlabel angka bagi murid yang membutuhkan representasi konkret tahapan swap/geser.
  • Proses: Bagi murid yang memerlukan bimbingan, guru memberikan panduan bertahap per pass (iterasi); bagi murid yang mahir, diberikan himpunan 7 angka acak [45, 12, 89, 34, 23, 7, 50] untuk diurutkan secara mandiri dengan dua algoritma sekaligus.
  • Produk: Format penulisan tracing tabel langkah larik disesuaikan: tabel terstruktur terisi sebagian untuk kelompok butuh bimbingan, atau tabel mandiri penuh untuk kelompok mahir.

Asesmen Pertemuan:

Awal:

  • Murid menjawab 2 butir pertanyaan singkat tertulis untuk mendeteksi kesiapan logika pengurutan: (1) Jika diberikan larik [5, 2, 8], sebutkan urutan langkah pertukaran (swap) paling sedikit agar larik terurut membesar. (Acuan: Tukar indeks pertama 5 dengan indeks kedua 2 sehingga menghasilkan [2, 5, 8], membutuhkan 1 kali pertukaran). (2) Apa arti kondisi 'terurut menaik (ascending)'? (Acuan: Kondisi di mana setiap elemen bernilai lebih kecil atau sama dengan elemen setelahnya, yaitu A[i] <= A[i+1]).

Proses:

  • Formatif proses melalui Lembar Kerja Penerapan Algoritma Pengurutan pada data nilai [25, 12, 40, 15, 30]. Butir 1 (Bubble Sort): Murid menuliskan kondisi larik setelah tiap pass. Acuan langkah Bubble Sort: Pass 1: [12, 25, 15, 30, 40]; Pass 2: [12, 15, 25, 30, 40]; Pass 3: [12, 15, 25, 30, 40] (tidak ada pertukaran, selesai). Butir 2 (Insertion Sort): Murid menuliskan kondisi larik setelah tiap penyisipan. Acuan langkah Insertion Sort: Posisi awal elemen ke-2 (12): disisipkan sebelum 25 -> [12, 25, 40, 15, 30]; Elemen ke-3 (40): tetap -> [12, 25, 40, 15, 30]; Elemen ke-4 (15): disisipkan antara 12 dan 25 -> [12, 15, 25, 40, 30]; Elemen ke-5 (30): disisipkan antara 25 dan 40 -> [12, 15, 25, 30, 40].

Akhir Pertemuan:

  • Cek pemahaman akhir: Murid menuliskan hasil akhir dari pengurutan larik [8, 3, 7, 1] jika diurutkan secara menaik beserta algoritma yang dipilih. (Acuan: Larik akhir wajib tepat [1, 3, 7, 8], dan langkah penelusuran yang dicantumkan murid sesuai dengan karakteristik algoritma yang dipilih, baik Bubble Sort maupun Insertion Sort).

Formatif:

  • Asesmen diagnostik awal tentang konsep dasar keterurutan dan pertukaran nilai
  • Observasi unjuk kerja penelusuran peragaan kartu berpasangan
  • Pemeriksaan lembar kerja penelusuran langkah pengurutan data nilai siswa

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penerapan Algoritma Standar Pengurutan DataBelum mampu menerapkan langkah perbandingan dan penukaran algoritma pengurutan; kondisi larik pada lembar kerja masih salah dan tidak menunjukkan tahapan yang sesuai.Mampu menerapkan langkah perbandingan dan penukaran tetapi masih terdapat kesalahan pada penentuan posisi elemen atau iterasi intermediate (hanya 1 dari 2 algoritma yang langkahnya tepat).Mampu menerapkan langkah penelusuran algoritma Bubble Sort dan Insertion Sort secara lengkap dan tepat pada seluruh pass larik data sesuai kunci acuan penelusuran.Mampu menerapkan langkah Bubble Sort dan Insertion Sort secara mandiri, lengkap, tepat sesuai kunci acuan, serta mampu menyelesaikan pengurutan pada dataset pengayaan yang lebih besar (7 data) tanpa kesalahan langkah.

Refleksi Pertemuan:

Guru:

  • Apakah aktivitas bermain kartu angka efektif memvisualisasikan cara kerja penukaran dan penyisipan data bagi murid?
  • Bagian tahapan mana dari Bubble Sort atau Insertion Sort yang paling sering memicu kekeliruan langkah bagi murid?

Murid:

  • Langkah manakah yang menurutmu lebih mudah diikuti: menukar angka bersebelahan (Bubble Sort) atau menyisipkan angka ke posisi yang pas (Insertion Sort)?
  • Strategi apa yang paling membantumu menjaga agar tidak ada langkah iterasi yang terlewat saat mengurutkan data?

Pertemuan 7 — Menerapkan Struktur Data Standar Tumpukan (Stack) untuk Menyelesaikan Persoalan — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.3 Menerapkan struktur data standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan

Pendahuluan:

  • Guru membuka kelas, mengecek kehadiran, dan menyampaikan fokus kegiatan pertemuan 7 yaitu menerapkan struktur data standar tumpukan (stack) dengan prinsip LIFO (Last In First Out) (3 menit).
  • Guru melaksanakan asesmen awal diagnostik singkat dengan menampilkan 2 soal penelusuran tumpukan buku pada layar: (1) Jika buku A ditaruh di meja, lalu buku B ditaruh di atas A, buku mana yang pertama kali diambil? (acuan: buku B); (2) Jika buku C kemudian ditaruh di atas B lalu dilakukan 1 kali pengambilan, buku mana yang terambil dan buku apa yang tersisa di meja? (acuan: terambil buku C, tersisa B di atas A) (7 menit).

Kegiatan Inti:

Memahami (Berkesadaran, Bermakna):

  • Murid menyimak pemaparan guru mengenai definisi struktur data standar tumpukan (stack), karakteristik LIFO (Last In First Out), serta dua operasi dasarnya: PUSH (memasukkan data ke posisi teratas) dan POP (mengambil/menghapus data dari posisi teratas) (10 menit).
  • Murid menelaah lembar contoh penelusuran status stack langkah-demi-langkah dengan 4 operasi: PUSH 10, PUSH 20, POP (mengeluarkan 20, sisa [10]), PUSH 30 (kondisi akhir stack dari bawah ke atas: [10, 30]) (10 menit).

Mengaplikasi (Menggembirakan, Bermakna):

  • Murid berpasangan memainkan aktivitas peran 'Simulator Stack' (Aktivitas 10.2-13-UP): satu murid bertindak sebagai Pemberi Perintah dan rekannya sebagai Simulator penelusur stack, lalu bertukar peran secara bergantian untuk memvalidasi operasi PUSH dan POP secara interaktif (15 menit).
  • Secara mandiri, setiap murid menyelesaikan LKPD penelusuran deretan operasi stack berikut: PUSH 8, PUSH 3, POP, PUSH 5, PUSH 9, POP, POP. Murid menuliskan daftar nilai yang dikeluarkan dan kondisi akhir elemen di dalam stack (acuan: nilai ter-POP berurutan adalah 3, 9, 5; kondisi akhir stack menyisakan nilai 8) (25 menit).

Merefleksi (Berkesadaran):

  • Murid memeriksa kembali hasil penelusurannya secara mandiri terhadap kunci acuan, mengidentifikasi pada langkah mana terjadi kekeliruan urutan POP, dan memperbaiki pemahamannya mengenai posisi elemen teratas (top of stack) (10 menit).

Penutup:

  • Guru memberikan cek pemahaman akhir melalui 1 soal ringkas: Tentukan elemen teratas dari stack setelah operasi PUSH 12, PUSH 7, POP, PUSH 4! (acuan: elemen teratas adalah 4) (5 menit).
  • Guru menyimpulkan prinsip kerja tumpukan (stack) serta menginformasikan materi pertemuan berikutnya mengenai struktur data standar antrean (queue) sebelum menutup pembelajaran dengan salam (5 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan kartu visual bertingkat untuk menyusun data secara fisik; murid yang mahir diberikan latihan dengan deretan operasi PUSH dan POP yang lebih panjang (10 operasi).
  • Proses: Scaffolding bertahap bagi murid yang kesulitan menentukan posisi elemen puncak (top of stack) saat operasi POP dilakukan.
  • Produk: Format penulisan penelusuran dapat menggunakan tabel langkah atau diagram tumpukan vertikal dengan hasil akhir nilai keluaran yang sama persis.

Asesmen Pertemuan:

Awal:

  • Tes diagnostik singkat lisan/tulis (2 butir): (1) Jika buku A ditaruh di meja, lalu buku B ditaruh di atas A, buku mana yang pertama kali diambil? (acuan: buku B); (2) Jika buku C kemudian ditaruh di atas B lalu dilakukan 1 kali pengambilan, buku mana yang terambil dan buku apa yang tersisa di meja? (acuan: terambil buku C, tersisa B dan A di meja dengan B di atas A).

Proses:

  • Formatif LKPD penelusuran operasi stack: Diberikan urutan 7 perintah: (1) PUSH 8, (2) PUSH 3, (3) POP, (4) PUSH 5, (5) PUSH 9, (6) POP, (7) POP. Dinilai ketepatan daftar angka hasil operasi POP berurutan dan sisa isi stack (acuan: hasil POP berurutan = 3, 9, 5; isi akhir stack = [8]).

Akhir Pertemuan:

  • Cek pemahaman 1 butir di akhir sesi: Tentukan elemen puncak (top) stack setelah rangkaian operasi: PUSH 12, PUSH 7, POP, PUSH 4! (acuan: setelah PUSH 12 -> [12]; PUSH 7 -> [12, 7]; POP -> [12] mengeluarkan 7; PUSH 4 -> [12, 4]; sehingga elemen teratas adalah 4).

Formatif:

  • Asesmen awal diagnostik identifikasi urutan ambil barang tumpukan
  • Observasi unjuk kerja simulasi peran pasangan 'Simulator Stack'
  • Penilaian ketepatan pengerjaan LKPD mandiri penelusuran operasi stack (PUSH dan POP)

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Menerapkan struktur data standar tumpukan (stack)Belum mampu menentukan hasil operasi PUSH dan POP pada struktur data stack sesuai urutan LIFO (0 dari 3 nilai hasil POP tepat).Mampu menerapkan operasi PUSH dan POP pada struktur data stack tetapi terdapat kekeliruan urutan (hanya 1 dari 3 nilai hasil POP tepat; acuan target: 3, 9, 5).Mampu menerapkan operasi PUSH dan POP pada struktur data stack dengan tepat sebagian besar (2 dari 3 nilai hasil POP tepat sesuai acuan: 3, 9, 5).Mampu menerapkan seluruh operasi PUSH dan POP pada struktur data stack secara tepat dan mandiri (seluruh 3 nilai hasil POP berurutan tepat: 3, 9, 5 serta kondisi akhir stack [8] tepat).

Refleksi Pertemuan:

Guru:

  • Apakah aktivitas bermain peran 'Simulator Stack' efektif membantu murid mengonstruksi pemahaman konsep LIFO?
  • Bagian mana dari operasi stack (PUSH vs POP) yang paling banyak memicu kesalahan penelusuran pada murid?

Murid:

  • Apakah kamu dapat membedakan dengan jelas kapan data bertambah di atas tumpukan (PUSH) dan kapan data dikeluarkan (POP)?
  • Strategi apa yang membantumu paling teliti saat melacak isi stack dari urutan perintah yang panjang?

Pertemuan 8 — Menerapkan Struktur Data Standar Antrean (Queue) untuk Menyelesaikan Persoalan — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.3 Menerapkan struktur data standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan

Pendahuluan:

  • Guru membuka pembelajaran dengan salam, memeriksa kehadiran murid, dan menyampaikan tujuan pembelajaran pertemuan ini yaitu menerapkan struktur data antrean (queue) untuk menyelesaikan persoalan (5 menit).
  • Guru melaksanakan asesmen awal diagnostik singkat dengan menampilkan 2 kasus antrean di papan tulis: Kasus 1: Antrean loket bioskop dengan urutan kedatangan Doni, Eka, Fani; Kasus 2: Tumpukan piring kotor dicuci dari yang paling atas. Murid diminta memilih kasus mana yang menerapkan prinsip FIFO dan menyebutkan siapa yang pertama keluar pada Kasus 1 (acuan: Kasus 1 adalah antrean FIFO; yang pertama keluar adalah Doni) (10 menit).

Kegiatan Inti:

Memahami (Berkesadaran, Bermakna):

  • Murid menyimak demonstrasi guru tentang struktur data queue beserta dua operasi dasarnya, yaitu ENQUEUE (memasukkan elemen ke ujung belakang/tail antrean) dan DEQUEUE (mengeluarkan elemen dari ujung depan/head antrean) sesuai aturan First In, First Out (FIFO) (15 menit).

Mengaplikasi (Bermakna, Menggembirakan):

  • Secara berpasangan (peran Pemberi Perintah dan Simulator), murid melakukan Aktivitas Permainan Peran Simulasi Queue: Simulator menerima urutan perintah berikut: (1) ENQUEUE 12, (2) ENQUEUE 7, (3) DEQUEUE, (4) ENQUEUE 25, (5) DEQUEUE. Simulator menuliskan isi queue dan elemen yang keluar pada lembar aktivitas (acuan hasil berturut-turut: [1] isi: [12]; [2] isi: [12, 7]; [3] keluar: 12, isi tersisa: [7]; [4] isi: [7, 25]; [5] keluar: 7, isi tersisa: [25]) (25 menit).
  • Secara mandiri, murid menyelesaikan Lembar Kerja Penerapan Masalah Queue berisi skenario antrean cetak printer dokumen sekolah: Dokumen masuk berurutan D1, D2, D3; printer memproses 1 dokumen (DEQUEUE); masuk dokumen D4; printer memproses 2 dokumen (2x DEQUEUE). Murid menentukan urutan dokumen yang selesai dicetak dan isi antrean akhir (acuan: urutan dokumen selesai dicetak: D1, D2, D3; dokumen tersisa di antrean: D4) (20 menit).

Merefleksi (Berkesadaran):

  • Murid mengevaluasi hasil pengerjaan simulasi bersama pasangannya, memeriksa ketepatan operasi ENQUEUE dan DEQUEUE sesuai aturan FIFO, serta mencatat kesalahan logika yang sempat terjadi dalam pelacakan isi antrean (10 menit).

Penutup:

  • Guru bersama murid menyimpulkan konsep utama operasi queue (ENQUEUE menambah dari belakang, DEQUEUE mengambil dari depan) untuk menyelesaikan persoalan antrean data (3 menit).
  • Guru memberikan penguatan terhadap pencapaian belajar pertemuan ini dan menginformasikan bahwa pertemuan berikutnya akan memadukan algoritma dan struktur data (2 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan kartu visual bertanda Head dan Tail untuk memandu pergerakan data antrean, sedangkan murid yang mahir diberikan variasi data string dan angka campuran.
  • Proses: Pada simulasi berpasangan, murid yang membutuhkan bimbingan memulai dari 3 instruksi sederhana, sedangkan murid yang cepat dapat langsung mengerjakan skenario 5 instruksi secara mandiri.
  • Produk: Semua murid menghasilkan catatan status isi queue dan urutan elemen yang keluar dari instruksi yang diberikan sesuai standar operasi FIFO.

Asesmen Pertemuan:

Awal:

  • Diagnostik kesiapan logika antrean: Disajikan 2 kasus: (1) Urutan orang membeli tiket kereta: Andi, Budi, Citra; (2) Tumpukan kardus barang di gudang. Murid menentukan kasus mana yang menerapkan prinsip FIFO dan siapa yang dilayani pertama kali pada kasus 1 (acuan jawaban benar: kasus yang menerapkan FIFO adalah kasus 1; yang dilayani pertama kali adalah Andi).

Proses:

  • Observasi keterlibatan dan ketepatan murid saat menjalankan peran Simulator dalam mengeksekusi 5 instruksi queue berurutan: (1) ENQUEUE 12 -> isi [12]; (2) ENQUEUE 7 -> isi [12, 7]; (3) DEQUEUE -> keluar 12, sisa [7]; (4) ENQUEUE 25 -> isi [7, 25]; (5) DEQUEUE -> keluar 7, sisa [25] (acuan: seluruh 5 langkah penelusuran tepat sesuai aturan FIFO).

Akhir Pertemuan:

  • Cek pemahaman tertulis pemecahan masalah antrean pencetakan: Dokumen masuk antrean D1, D2, D3; diproses 1 dokumen; masuk dokumen D4; diproses 2 dokumen. Murid menuliskan urutan dokumen yang tercetak dan isi antrean akhir (acuan jawaban: urutan cetak: D1, D2, D3; dokumen tersisa di antrean: D4).

Formatif:

  • Penilaian kinerja simulasi berpasangan operasi ENQUEUE dan DEQUEUE pada lembar kerja aktivitas
  • Penilaian tes formatif lembar pemecahan masalah antrean cetak printer dokumen

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penerapan Operasi Antrean (Queue) dalam Menyelesaikan PersoalanBelum mampu menentukan urutan elemen yang keluar (DEQUEUE) dan isi antrean setelah operasi ENQUEUE sesuai prinsip FIFO.Mampu menentukan urutan elemen yang keluar atau isi antrean dengan benar pada maksimal 2 dari 5 instruksi queue yang diberikan.Mampu menentukan urutan elemen yang keluar dan isi antrean dengan benar pada 3 sampai 4 dari 5 instruksi queue yang diberikan.Mampu menerapkan operasi ENQUEUE dan DEQUEUE secara tepat dan konsisten pada seluruh 5 instruksi queue serta menyelesaikan persoalan antrean secara mandiri.

Refleksi Pertemuan:

Guru:

  • Apakah aktivitas permainan peran simulasi antrean efektif membantu murid memahami perbedaan operasi penambahan dan penghapusan elemen pada queue?
  • Apakah murid mengalami kendala dalam membedakan prinsip kerja queue (FIFO) dengan struktur data yang dipelajari sebelumnya?

Murid:

  • Apakah saya sudah dapat menentukan data mana yang harus dikeluarkan terlebih dahulu saat operasi DEQUEUE dijalankan?
  • Bagian mana dari penelusuran operasi antrean (queue) yang masih membingungkan bagi saya?

Pertemuan 9 — Menerapkan Algoritma dan Struktur Data Standar secara Terpadu pada Pengorganisasian Data Terurut — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.4 Menerapkan algoritma dan struktur data standar secara terpadu untuk menyelesaikan persoalan

Pendahuluan:

  • Guru membuka pembelajaran dengan salam, memeriksa kehadiran murid, dan menyampaikan tujuan pembelajaran pertemuan ke-9 yaitu menerapkan keterpaduan algoritma pencarian/pengurutan dengan struktur data pada himpunan data terurut (3 menit).
  • Guru melaksanakan asesmen awal diagnostik melalui 2 pertanyaan tertulis singkat: (1) Mengapa binary search mensyaratkan data harus terurut terlebih dahulu? (acuan: binary search mengeliminasi setengah ruang pencarian berdasarkan perbandingan nilai tengah, sehingga data wajib terurut); (2) Jika tumpukan/antrean angka acak ingin dicari nilai tertentunya secara efisien tanpa mengubah urutan akhir, langkah apa yang tepat? (acuan: data dipindahkan ke struktur larik terurut/diurutkan terlebih dahulu baru dilakukan pencarian biner atau diproses berurutan) (7 menit).

Kegiatan Inti:

Memahami (Bermakna, Berkesadaran):

  • Murid menyimak pemodelan guru mengenai integrasi pemrosesan data terpadu: sekumpulan data mentah yang tersimpan dalam larik diproses menggunakan algoritma pengurutan (ascending), kemudian elemen-elemen terurut dimasukkan ke dalam antrean (Queue - FIFO) atau tumpukan (Stack - LIFO) untuk kebutuhan antrean prioritas atau penelusuran (15 menit).
  • Murid secara berkesadaran menganalisis contoh kasus alur integrasi: data nilai acak [45, 12, 85, 32] diurutkan menjadi [12, 32, 45, 85], lalu dilakukan pencarian biner untuk nilai 45, serta dimasukkan ke dalam Queue antrean cetak sertifikat berurutan dari terkecil (10 menit).

Mengaplikasi (Menggembirakan, Bermakna):

  • Murid mengikuti tantangan berpasangan 'Sort-Search-Queue Challenge': setiap pasangan diberikan lembar kerja berisi data mentah ID Buku Perpustakaan: [108, 102, 115, 105, 120, 101]. Pasangan murid menerapkan algoritma pengurutan untuk menyusun data secara terurut menaik, melakukan pencarian biner terhadap target ID 115, dan memasukkan hasil data terurut ke dalam representasi antrean (Queue) peminjaman (acuan: urutan terurut = [101, 102, 105, 108, 115, 120]; posisi indeks target 115 = indeks 4 dengan 0-based index melalui perbandingan nilai tengah; urutan keluaran Queue saat dequeue berturut-turut = 101, 102, 105, 108, 115, 120) (25 menit).
  • Murid secara mandiri menyelesaikan studi kasus kedua pada lembar kerja: memadukan algoritma pengurutan dan struktur Stack untuk membalik urutan data nilai [14, 28, 7, 42] sehingga dapat diambil dari nilai terbesar ke terkecil menggunakan operasi push dan pop (acuan: data diurutkan menaik [7, 14, 28, 42], di-push ke stack dari elemen pertama hingga terakhir [bawah: 7, 14, 28, atas: 42], saat di-pop menghasilkan urutan terbalik: 42, 28, 14, 7) (15 menit).

Merefleksi (Berkesadaran):

  • Murid mengidentifikasi ketepatan integrasi algoritma dan struktur data pada solusi yang dirancangnya, memeriksa kembali apakah tahapan pengurutan, pencarian, dan operasi struktur data (push/pop atau enqueue/dequeue) sudah berjalan berkesinambungan tanpa merusak integritas data (10 menit).

Penutup:

  • Murid dan guru menyimpulkan bagaimana keterpaduan algoritma standar dan struktur data saling melengkapi untuk mengorganisasikan data terurut secara sistematis (3 menit).
  • Guru memberikan umpan balik terhadap hasil pengerjaan lembar kerja berpasangan dan mandiri serta menyampaikan pengantar bahwa pertemuan ke-10 akan melanjutkan penerapan keterpaduan ini pada studi kasus pemrosesan data bervolume lebih besar (2 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan panduan visual diagram alir alur penggabungan larik ke queue/stack, sedangkan murid yang cepat diberikan himpunan data dengan 8 elemen termasuk penanganan duplikasi data.
  • Proses: Murid yang memerlukan pendampingan mengerjakan pemaduan algoritma langkah demi langkah secara bertahap bersama guru, sedangkan murid yang mandiri langsung merancang skema keterpaduan secara utuh.
  • Produk: Format penulisan solusi dapat disajikan dalam bentuk tabel penelusuran (trace table) terpadu atau representasi diagram alur data terurut.

Asesmen Pertemuan:

Awal:

  • Diagnostik tertulis singkat 2 butir soal: (1) Mengapa binary search mensyaratkan data harus terurut terlebih dahulu? (acuan: binary search mengeliminasi setengah ruang pencarian berdasarkan perbandingan nilai tengah, sehingga data wajib terurut); (2) Jika data acak dalam larik ingin dicari nilainya secara biner lalu diproses antreannya satu per satu, tahapan apa yang harus dilakukan? (acuan: tahap 1 diurutkan dengan algoritma sorting, tahap 2 dilakukan binary search, tahap 3 dimasukkan ke struktur Queue).

Proses:

  • Pengamatan keterlibatan dan ketepatan murid dalam menerapkan keterpaduan pengurutan dan antrean pada data ID [108, 102, 115, 105, 120, 101] (acuan: urutan terurut [101, 102, 105, 108, 115, 120], binary search menemukan 115 di indeks ke-4, dan urutan dequeue FIFO: 101, 102, 105, 108, 115, 120).
  • Pemeriksaan ketepatan pemaduan pengurutan dan struktur Stack untuk pembalikan data nilai [14, 28, 7, 42] (acuan: urutan terurut [7, 14, 28, 42], susunan stack dasar-ke-atas [7, 14, 28, 42], urutan pop LIFO: 42, 28, 14, 7).

Akhir Pertemuan:

  • Cek pemahaman penutup: Murid menjawab 1 butir pertanyaan integrasi terpadu: 'Terdapat data antrean nasabah [50, 20, 80]. Jika nasabah harus dilayani dari nomor terkecil, tentukan urutan langkah pemaduan dan hasil urutan layanannya!' (acuan: Langkah 1 diurutkan menaik menjadi [20, 50, 80]; Langkah 2 di-enqueue ke dalam antrean; urutan dequeue pelayanan nasabah adalah 20, 50, 80).

Formatif:

  • Penilaian lembar kerja tantangan berpasangan 'Sort-Search-Queue Challenge' menggunakan panduan kunci jawaban penelusuran.
  • Cek pemahaman mandiri latihan pemaduan pengurutan dan tumpukan (Stack).

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penerapan Keterpaduan Algoritma dan Struktur Data StandarBelum mampu memadukan algoritma pengurutan/pencarian dengan struktur data antrean/tumpukan (keseluruhan tahapan salah atau terpisah tanpa alur keterpaduan).Mampu menerapkan algoritma pengurutan data dengan tepat, namun keliru saat menghubungkannya dengan operasi struktur data standar (Queue/Stack) atau sebaliknya.Mampu menerapkan algoritma pengurutan, pencarian, dan struktur data standar (Queue/Stack) secara terpadu dengan alur eksekusi dan hasil yang tepat sesuai acuan persoalan.Mampu menerapkan algoritma dan struktur data standar secara terpadu dengan tepat, mandiri, konsisten pada berbagai variasi manipulasi data terurut (baik antrean maupun tumpukan pembalik urutan).

Refleksi Pertemuan:

Guru:

  • Apakah murid dapat memahami keterkaitan logis antara pengurutan data dengan efisiensi manipulasi pada struktur data antrean dan tumpukan?
  • Bagian mana dari integrasi algoritma dan struktur data yang paling membutuhkan scaffolding tambahan bagi murid?

Murid:

  • Bagian mana yang paling menantang saat menggabungkan algoritma pengurutan dengan operasi tumpukan atau antrean?
  • Bagaimana keterpaduan ini membantumu memahami cara program komputer mengelola data secara terorganisasi?

Pertemuan 10 — Menerapkan Algoritma dan Struktur Data Standar secara Terpadu pada Studi Kasus Pemrosesan Data — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.4 Menerapkan algoritma dan struktur data standar secara terpadu untuk menyelesaikan persoalan

Pendahuluan:

  • Guru membuka kelas, mengecek kehadiran, dan menyampaikan fokus kegiatan pertemuan yaitu penerapan algoritma dan struktur data standar secara terpadu pada pemrosesan data (3 menit).
  • Murid mengerjakan asesmen awal berupa tes diagnostik singkat 2 butir pada lembar kerja untuk mengecek kesiapan perpaduan struktur data dan algoritma (7 menit).

Kegiatan Inti:

Memahami (Berkesadaran, Bermakna):

  • Murid mencermati deskripsi studi kasus pemrosesan data 'Sistem Layanan Pengaduan Tiket' yang memuat data antrean masuk (Queue), mekanisme pembatalan mutakhir (Stack), serta kebutuhan menampilkan tiket urut prioritas (Sorting) dan pencarian tiket spesifik (Searching) (10 menit).
  • Murid menelaah keterkaitan alur: elemen data masuk melalui antrean (enqueue), elemen yang dibatalkan diambil dari tumpukan riwayat (pop), lalu sekumpulan data tiket diproses dengan pengurutan nilai prioritas serta pencarian ID tiket (10 menit).

Mengaplikasi (Menggembirakan, Bermakna):

  • Dalam aktivitas tantangan cepat berpasangan yang interaktif ('Tantangan Logika Pemroses Data'), murid secara bergantian menyimulasikan aliran 4 data tiket uji: [T01: Skor 80], [T02: Skor 95], [T03: Skor 70], [T04: Skor 85] ke dalam antrean, melakukan operasi pembatalan 1 elemen teratas tumpukan, lalu mengurutkannya menggunakan algoritma Bubble/Selection Sort dan mencari ID tertentu dengan Linear/Binary Search (15 menit).
  • Secara mandiri, murid menyelesaikan Lembar Kerja Pemrosesan Data Terpadu: menuliskan langkah algoritma dan representasi struktur data terpadu untuk menyelesaikan skenario sistem pemrosesan log transaksi (30 menit).

Merefleksi (Berkesadaran):

  • Murid memeriksa kembali ketepatan hasil pelacakan data (trace table) dan perpaduan struktur data serta algoritma yang mereka susun terhadap skenario studi kasus (10 menit).

Penutup:

  • Murid menyimpulkan prinsip pemilihan struktur data dan algoritma yang saling melengkapi dalam memecahkan persoalan pemrosesan data (3 menit).
  • Guru memberikan umpan balik atas latihan terpadu dan menyampaikan agenda pertemuan berikutnya (2 menit).

Diferensiasi:

  • Konten: Murid yang membutuhkan bimbingan diberikan panduan alur pelacakan (tracing template) bertahap; murid mahir diberikan himpunan data transaksi dengan variasi kondisi pembatalan bertingkat.
  • Proses: Scaffolding bertahap bagi murid yang kesulitan menghubungkan stack/queue dengan sorting/searching; kerja mandiri penuh bagi murid yang telah menguasai konsep.
  • Produk: Format penulisan alur penyelesaian disajikan dalam bentuk trace table sistematis beserta uraian langkah kerja terpadu.

Asesmen Pertemuan:

Awal:

  • Diagnostik 2 butir soal singkat sebelum inti: (1) 'Jika data pesanan dilayani sesuai urutan kedatangan kemudian daftar pesanan aktif perlu diurutkan berdasarkan harga, struktur data apa dan algoritma apa yang dipadukan?' (Acuan jawaban: Struktur data Queue/Antrean dipadukan dengan Algoritma Pengurutan/Sorting); (2) 'Jika fungsi Undo diterapkan pada editor teks sebelum dilakukan pencarian kata tertentu, struktur data apa dan algoritma apa yang bekerja berurutan?' (Acuan jawaban: Struktur data Stack/Tumpukan dipadukan dengan Algoritma Pencarian/Searching).

Proses:

  • Pemeriksaan Lembar Kerja Pemrosesan Data Terpadu pada studi kasus 4 tiket: [T01: Skor 80], [T02: Skor 95], [T03: Skor 70], [T04: Skor 85]. Indikator yang dinilai: (1) Penelusuran Queue saat enqueue T01..T04; (2) Penggunaan Stack untuk riwayat pembatalan (pop); (3) Penerapan algoritma pengurutan (Sorting) berdasarkan skor (urutan terurut menurun: T02:95, T04:85, T01:80, T03:70); (4) Penerapan algoritma pencarian (Searching) ID tiket tertentu (misal mencari T03 ditemukan pada indeks yang tepat). Kunci acuan: Keempat tahapan operasi terpadu dieksekusi runtut dan tepat.

Akhir Pertemuan:

  • Cek pemahaman penutup 1 butir: 'Tentukan langkah algoritma terpadu jika sebuah sistem antrean bank (Queue) ingin menampilkan nasabah berkategori prioritas di posisi terdepan sebelum nomor rekening dicari (Searching)!' (Kriteria penerimaan: Murid secara tepat menuliskan alur bahwa data dari Queue diambil, diurutkan/dipilah prioritasnya dengan algoritma Sorting, lalu pencarian data dilakukan dengan algoritma Searching).

Formatif:

  • Asesmen diagnostik awal tentang identifikasi operasi struktur data dan algoritma pada studi kasus
  • Observasi unjuk kerja dan lembar kerja pemrosesan data terpadu (analisis struktur antrean/tumpukan digabung pencarian/pengurutan)

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penerapan Algoritma dan Struktur Data Standar secara TerpaduBelum mampu memadukan algoritma dan struktur data standar dalam studi kasus pemrosesan data; penelusuran struktur data maupun algoritma masih keliru.Mampu menerapkan struktur data (Stack/Queue) atau algoritma standar (Sorting/Searching) secara terpisah, namun belum tepat saat merangkaikannya menjadi solusi terpadu pada studi kasus.Mampu menerapkan struktur data (Stack/Queue) dan algoritma standar (Sorting/Searching) secara terpadu dengan tepat pada studi kasus pemrosesan data sesuai langkah acuan.Mampu menerapkan algoritma dan struktur data standar secara terpadu secara mandiri, tepat, runtut, serta mampu memvalidasi trace table pemrosesan data pada kondisi uji kompleks tanpa kesalahan.

Refleksi Pertemuan:

Guru:

  • Apakah murid dapat melihat keterkaitan fungsional antara struktur data penampung (Stack/Queue) dengan algoritma pemroses (Sorting/Searching)?
  • Bagian mana dari integrasi algoritma dan struktur data yang paling banyak memicu miskonsepsi pada murid?

Murid:

  • Apa perbedaan peran antara struktur data (seperti Queue/Stack) dan algoritma (seperti Search/Sort) saat bekerja sama dalam satu sistem?
  • Bagian penelusuran (tracing) mana yang paling menantang saat memadukan struktur data dan algoritma tadi?

Pertemuan 11 — Asesmen Sumatif Bab — 2 JP (2 x 45 menit = 90 menit)

Tujuan Pertemuan:

  • TP 10.2.1 Menuliskan solusi rancangan program sederhana dalam format pseudocode yang dekat dengan bahasa komputer
  • TP 10.2.2 Menerapkan algoritma standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan
  • TP 10.2.3 Menerapkan struktur data standar untuk menghasilkan berbagai solusi dalam menyelesaikan persoalan
  • TP 10.2.4 Menerapkan algoritma dan struktur data standar secara terpadu untuk menyelesaikan persoalan

Pendahuluan:

  • Guru membuka sesi asesmen sumatif dengan salam, mengecek kesiapan fisik dan psikologis murid, serta memastikan meja bersih dari catatan yang tidak diizinkan (2 menit).
  • Guru menyampaikan tujuan dan mekanisme pelaksanaan Asesmen Sumatif Bab Algoritma dan Struktur Data yang terbagi menjadi dua bagian: Tugas 1 Penelusuran Logika Algoritma & Struktur Data dan Tugas 2 Perancangan Pseudocode Solusi Terpadu (3 menit).

Kegiatan Inti:

Memahami (Berkesadaran):

  • Murid mencermati petunjuk pengerjaan dan membaca secara mandiri lembar kerja asesmen sumatif yang dibagikan guru guna memahami butir-butir soal penelusuran serta studi kasus perancangan solusi (5 menit).

Mengaplikasi (Bermakna):

  • Murid mengerjakan Bagian 1 Asesmen Sumatif secara individual: melakukan tracing algoritma pencarian biner pada larik terurut data=[3, 8, 15, 24, 35, 42, 56] mencari nilai 35 (acuan trace: iterasi 1 low=0, high=6, mid=3, val=24 < 35 -> low=4; iterasi 2 low=4, high=6, mid=5, val=42 > 35 -> high=4; iterasi 3 low=4, high=4, mid=4, val=35 match, indeks 4); tracing pengurutan Bubble Sort ascending pada data=[9, 4, 7, 2] (acuan pass 1: perbandingan 9-4 tukar jadi [4,9,7,2], 9-7 tukar jadi [4,7,9,2], 9-2 tukar jadi [4,7,2,9]; pass 2: 4-7 tetap, 7-2 tukar jadi [4,2,7,9], 7-9 tetap; pass 3: 4-2 tukar jadi [2,4,7,9], 4-7 tetap, 7-9 tetap); serta menggambar simulasi operasi Stack (push A, push B, pop -> B keluar, push C -> kondisi [A, C], top=C) dan Queue (enqueue X, enqueue Y, dequeue -> X keluar, enqueue Z -> kondisi depan Y, belakang Z) (37 menit).
  • Murid mengerjakan Bagian 2 Asesmen Sumatif secara individual: merancang solusi pseudocode terpadu untuk studi kasus pemrosesan dokumen cetak berdasarkan prioritas kedatangan (Queue FIFO) dan riwayat pembatalan perintah cetak (Stack LIFO), dengan menuliskan pseudocode lengkap yang memuat tipe data, ekspresi kendali percabangan (IF-THEN-ELSE), perulangan (WHILE/FOR), serta fungsi/prosedur antrean dan pembatalan (38 menit).

Merefleksi (Berkesadaran):

  • Murid memeriksa kembali kelengkapan seluruh jawaban, meninjau ketepatan pseudocode yang dirancang secara teliti dan berkesadaran sebelum menyerahkan lembar kerja (2 menit).

Penutup:

  • Guru mengumpulkan seluruh lembar kerja asesmen sumatif murid secara tertib dan memastikan kelengkapan dokumen seluruh murid di kelas (2 menit).
  • Guru memberikan penguatan atas usaha belajar mandiri murid sepanjang Bab 2 serta menyampaikan agenda pembelajaran unit berikutnya (1 menit).

Diferensiasi:

  • Konten: Memberikan lembar soal dengan format teks berjarak renggang bagi murid yang memerlukan dukungan keterbacaan visual tanpa mengubah kompleksitas soal.
  • Proses: Menyediakan pengingat waktu di papan tulis untuk membantu manajemen waktu pengerjaan secara mandiri tanpa bantuan isi/materi.
  • Produk: Format penulisan tracing dan pseudocode tetap terstandarisasi sesuai rubrik bagi seluruh murid.

Asesmen Pertemuan:

Sumatif Bab:

  • penugasan terpadu pemecahan masalah dan simulasi tertulis serentak: lembar kerja komprehensif berisi penelusuran algoritma pencarian/pengurutan, visualisasi operasi tumpukan/antrean, serta perancangan pseudocode solusi terpadu studi kasus pemrosesan data
  • lembar kerja simulasi pemecahan masalah serentak: lembar hasil penelusuran (tracing) langkah algoritma pencarian/pengurutan dan diagram alur operasi struktur data stack/queue untuk skenario pemrosesan data yang dikerjakan serentak oleh seluruh murid (40 menit; individual; instrumen: rubrik analitik penelusuran algoritma dan operasi struktur data)
  • studi kasus perancangan solusi terpadu: lembar rancangan solusi terintegrasi berupa pemilihan struktur data dan algoritma standar yang dituangkan dalam format pseudocode terstruktur dengan kontrol program yang tepat untuk menyelesaikan studi kasus persoalan nyata (50 menit; individual; instrumen: rubrik penilaian rancangan pseudocode dan integrasi solusi)

Sumatif:

  • penugasan terpadu pemecahan masalah dan simulasi tertulis serentak: lembar kerja komprehensif berisi penelusuran algoritma pencarian/pengurutan, visualisasi operasi tumpukan/antrean, serta perancangan pseudocode solusi terpadu studi kasus pemrosesan data
  • lembar kerja simulasi pemecahan masalah serentak: lembar hasil penelusuran (tracing) langkah algoritma pencarian/pengurutan dan diagram alur operasi struktur data stack/queue untuk skenario pemrosesan data yang dikerjakan serentak oleh seluruh murid (40 menit; individual; instrumen: rubrik analitik penelusuran algoritma dan operasi struktur data)
  • studi kasus perancangan solusi terpadu: lembar rancangan solusi terintegrasi berupa pemilihan struktur data dan algoritma standar yang dituangkan dalam format pseudocode terstruktur dengan kontrol program yang tepat untuk menyelesaikan studi kasus persoalan nyata (50 menit; individual; instrumen: rubrik penilaian rancangan pseudocode dan integrasi solusi)

Rubrik Pertemuan:

AspekBelum BerkembangMulaiBerkembangSangat Berkembang
Penelusuran Algoritma Pencarian dan Pengurutan (TP 10.2.2)Langkah penelusuran (tracing) Binary Search dan Bubble Sort salah seluruhnya atau tidak memuat variabel penanda iterasi.Mampu menelusuri salah satu algoritma (hanya Binary Search atau hanya Bubble Sort) secara parsial dengan nilai intermediate kurang tepat.Mampu menelusuri Binary Search (menghasilkan indeks 4) dan Bubble Sort (menghasilkan susunan [2,4,7,9]) dengan alur langkah yang benar namun terdapat kekeliruan kecil pada pencatatan nilai variabel sementara.Mampu menelusuri langkah Binary Search (indeks 4) dan Bubble Sort (pass 1, 2, 3 hingga [2,4,7,9]) secara runtut, tepat, dan lengkap sesuai seluruh acuan penelusuran.
Penerapan Operasi Struktur Data Tumpukan dan Antrean (TP 10.2.3)Visualisasi operasi Stack dan Queue keliru dalam mengenali prinsip LIFO dan FIFO.Mampu memvisualisasikan operasi salah satu struktur data (Stack saja atau Queue saja) dengan benar.Mampu memvisualisasikan operasi Stack (push/pop) dan Queue (enqueue/dequeue) dengan benar pada sebagian besar langkah namun kondisi akhir elemen kurang tepat.Mampu memvisualisasikan seluruh urutan operasi Stack (kondisi akhir [A, C], top C) dan Queue (kondisi akhir [Y, Z], front Y) secara akurat sesuai prinsip LIFO dan FIFO.
Perancangan Pseudocode Solusi Terpadu (TP 10.2.1 & TP 10.2.4)Pseudocode belum terstruktur, tidak memuat tipe data dasar, dan tidak mengintegrasikan struktur data/algoritma.Pseudocode memuat struktur kendali sederhana namun belum memadukan struktur data antrean/tumpukan secara tepat untuk studi kasus.Pseudocode memadukan struktur kendali (IF-THEN, WHILE/FOR) dan pemanggilan struktur data antrean/tumpukan dengan logika yang berjalan meski notasi penulisan ada ketidakkonsistenan minor.Pseudocode dirancang sangat runtut, memuat deklarasi variabel/tipe data yang jelas, kontrol kendali percabangan dan perulangan tepat, serta memadukan operasi Queue dan Stack secara terpadu dan efektif untuk studi kasus.

Refleksi Pertemuan:

Guru:

  • Apakah alokasi waktu 90 menit memadai bagi seluruh murid untuk menuntaskan penelusuran algoritma sekaligus menyusun pseudocode terpadu?
  • Bagian manakah dari materi Bab 2 yang paling banyak mengalami miskonsepsi berdasarkan hasil lembar kerja sumatif murid?

Murid:

  • Strategi penelusuran logika mana yang paling membantuku menyelesaikan soal algoritma dan struktur data tanpa keliru?
  • Tantangan apa yang kurasakan saat merangkai algoritma dan struktur data ke dalam satu kesatuan pseudocode pemecahan masalah nyata?

SUMBER BELAJAR

  1. Buku Panduan Guru Informatika SMA Kelas X Edisi Revisi, Kemendikbudristek 2023
  2. Buku Siswa Informatika SMA Kelas X Edisi Revisi, Kemendikbudristek 2023 (Bab 2: Algoritma dan Struktur Data)
  3. Lembar Aktivitas Siswa: Menuliskan Pseudocode Sekuensial dan Kasus Uji Sederhana
  4. Buku Panduan Guru Informatika SMA/MA Kelas X, Kemendikbudristek 2021/2023
  5. Buku Siswa Informatika SMA/MA Kelas X (Edisi Revisi), Kemendikbudristek
  6. Lembar Kerja Aktivitas Percabangan Pseudocode
  7. Buku Panduan Guru Informatika untuk SMA/MA Kelas X (Edisi Revisi), Pusat Kurikulum dan Perbukuan.
  8. Buku Siswa Informatika untuk SMA/MA/SMK/MAK Kelas X (Edisi Revisi), Bab 2: Algoritma dan Struktur Data.
  9. Lembar Kerja Aktivitas Penulisan Pseudocode Struktur Perulangan.
  10. Buku Guru Informatika Kelas X, Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi
  11. Buku Siswa Informatika Kelas X, Bab 2: Algoritma dan Struktur Data (Subbab B: Aktivitas Fungsi)
  12. Lembar Aktivitas Siswa: Latihan Penulisan Pseudocode Fungsi dan Prosedur
  13. Kartu Notasi Modular Challenge
  14. Buku Panduan Guru Informatika SMA/MA Kelas X, Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi, 2021
  15. Buku Siswa Informatika SMA/MA Kelas X, Bab 2 Algoritma dan Struktur Data, Subbab Pencarian (Searching)
  16. Lembar Kerja Siswa: Kasus Penelusuran Algoritma Pencarian Linear dan Biner
  17. Buku Panduan Guru Informatika SMA Kelas X (Kemendikbudristek 2023, Subbab C Aktivitas 10.2-11-UP)
  18. Buku Siswa Informatika SMA Kelas X (Kemendikbudristek 2023, Bab 2)
  19. Perangkat kartu angka buatan guru untuk simulasi pengurutan data
  20. Buku Panduan Guru Informatika Kelas X, Kemendikbudristek
  21. Buku Siswa Informatika Kelas X, Bab 2: Algoritma dan Struktur Data (Subbab D: Aktivitas 10.2-13-UP Simulasi Stack)
  22. Lembar Kerja Murid (LKPD) Simulasi dan Penelusuran Stack
  23. Buku Panduan Guru Informatika SMA/MA Kelas X, Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi Republik Indonesia
  24. Buku Teks Siswa Informatika SMA/MA Kelas X, Bab 2 Algoritma dan Struktur Data
  25. Lembar Kerja Siswa: Simulasi Queue dan Studi Kasus Antrean Dokumen
  26. Buku Siswa Informatika SMA Kelas X (Edisi Revisi), Pusat Kurikulum dan Perbukuan Kemendikbudristek 2023, Bab 2: Algoritma dan Struktur Data.
  27. Buku Panduan Guru Informatika SMA Kelas X (Edisi Revisi), Bab 2.
  28. Lembar Kerja Siswa: Sort-Search-Queue Challenge dan Simulasi Pengorganisasian Data Terurut.
  29. Buku Siswa Informatika SMA Kelas X (Edisi Revisi), Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi, Bab 2
  30. Buku Panduan Guru Informatika SMA Kelas X (Edisi Revisi), Bab 2
  31. Lembar Aktivitas Studi Kasus Pemrosesan Data Terpadu
  32. Buku Siswa Informatika SMA Kelas X (Edisi Revisi), Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi, 2023, Bab 2 Algoritma dan Struktur Data
  33. Buku Panduan Guru Informatika SMA Kelas X (Edisi Revisi), 2023, Bab 2
  34. Lembar Asesmen Sumatif Bab 2: Penelusuran Logika dan Perancangan Solusi Terpadu

Lihat & unduh lengkap

Masuk pakai Google untuk membuka modul ajar bab ini secara penuh.

Apa isi bab ini?

Dokumen memuat seluruh pertemuan bab ini dalam satu berkas: tujuan pembelajaran per pertemuan, urutan kegiatan inti sesuai alokasi JP, pertanyaan pemantik, asesmen formatif, asesmen sumatif bab, rubrik, dan refleksi. Cocok dipakai sebagai persiapan tatap muka sekaligus lampiran supervisi.

Cara pakai bab ini

Unduh DOCX, lalu sesuaikan nama sekolah, kepala sekolah, dan NIP. Bagian kegiatan inti bisa Bapak/Ibu kurangi atau tambah sesuai karakter siswa di kelas; tujuan pembelajaran sebaiknya tetap selaras dengan ATP induk.