Bab 7 Algoritma Dan Pemograman
Bab 7 Algoritma Dan Pemograman
Bab 7 Algoritma Dan Pemograman
INFORMASI UMUM
A. IDENTITAS MODUL
Penyusun : ........................................
Instansi : SMP ...............................
Tahun Penyusunan : Tahun 20 …
Jenjang Sekolah : SMP ...............................
Mata Pelajaran : Informatika
Fase D, Kelas / Semester : IX (Sembilan) / I (Ganjil)
Alokasi Waktu : 18 JP (9 x Pertemuan)
B. KOMPETENSI AWAL
Peserta didik reguler/tipikal: umum, tidak ada kesulitan dalam mencerna dan
memahami materi ajar.
F. MODEL PEMBELAJARAN
G. KATA KUNCI
KOMPONEN INTI
Tujuan Pembelajaran :
Pertemuan 1: Scratch vs Blockly
1. Mengenali objek-objek dan memahami perintah atau instruksi dalam
lingkungan pemrograman Scratch dan Blockly
2. Menerapkan aturan translasi konsep dari satu bahasa visual ke bahasa visual
lainnya
B. PEMAHAMAN BERMAKNA
Peserta didik mampu memahami perbedaan dan kesamaan Scratch dan Blockly.
Peserta didik mampu memahami modularisasi program
Peserta didik mampu implementasi kasus menggunakan function dan procedure
pada Blockly
Peserta didik mampu memahami sistem bilangan.
Peserta didik mampu membuat program konverter sistem bilangan pada Blockly.
Peserta didik mampu memahami parity bit pada sistem bilangan biner.
C. PERTANYAAN PEMANTIK
Pernahkah kalian mengajarkan hal yang sama ke beberapa orang di saat yang
berbeda? Bagaimana agar kalian tidak perlu berulang kali mengajarkan hal yang
sama walau ke orang yang berbeda? Kalian menuliskannya dalam secarik kertas
dan akan memakainya jika perlu? Hal yang sama juga mungkin terjadi dalam
pemrograman, yaitu ada kode yang sama yang akan diulang. Bagaimana agar
penulisan kode program dapat lebih singkat tanpa mengulang kode yang sama?
D. KEGIATAN PEMBELAJARAN
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang Scratch dan Blockly kepada
siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Dalam kehidupan, seseorang perlu menguasai tidak hanya satu bahasa saja agar
dapat berkomunikasi dengan banyak orang. Sebagai contoh, sebagai orang
Indonesia, biasanya menguasai bahasa Indonesia, bahasa daerah, serta bahasa
Inggris. Di dalam pemrograman, juga ada banyak sekali bahasa. Perbedaan antara
satu bahasa dan bahasa lainnya antara lain terlihat dari tata bahasa (sintaks) yang
tersedia dari setiap bahasa tersebut.
Selain itu, peserta didik juga dapat menggunakan bahasa pemrograman tertentu
untuk tujuan tertentu pula. Hal ini mirip seperti ketika ingin menyapa seseorang.
Jika tujuannya ialah menyapa teman yang tidak bisa berbahasa lain selain bahasa
Korea, tentu akan menyapanya dengan “annyeonghaseyo”. Jika peserta didik ingin
menyapa teman yang bisa berbahasa Inggris, akan menyapanya dengan “hallo”.
Kegiatan Inti
Guru menjelaskan konsep-konsep yang berkaitan dengan perbedaan antara Scratch
dan Blocky.
Peserta didik menjawab pertanyaan-pertanyaan yang ada pada bagian uji
pemahaman.
Kegiatan berikutnya ialah mengerjakan Aktivitas AP-K9-01: Bilangan Prima.
Setelah selesai, guru dapat menjelaskan makna dari tiap blok yang digunakan pada
kedua aktivitas tersebut.
Jawaban Uji Pemahaman
1. Pemrograman berbasis event adalah sebuah paradigma pemrograman, di mana alur
jalannya program ditentukan oleh suatu suatu event misalnya mouse yang diklik,
keyboard yang ditekan, dan lain-lain.
2. Dengan menguasai banyak bahasa pemrograman, peserta didik dapat menggunakan
bahasa pemrograman untuk berbagai keperluan. Hal ini disebabkan karena
seringkali, untuk suatu permasalahan tertentu bahasa pemrograman tertentu lebih
baik digunakan dibandingkan dengan bahasa pemrograman lainnya.
3. Blok [length of ], blok [hide variable]
4. Blok [function] dan blok [for each item in list]
Gambar 7.2 adalah kode Blockly untuk aktivitas ini. Perbedaannya dengan kode
program dalam Scratch ialah sebagai berikut.
1. Variabel result bertipe boolean. Pada Scratch, tidak ada variabel bertipe ini,
sehingga digunakan 0 dan 1.
2. Blok pengulangan yang digunakan pada Blockly adalah repeat while, sementara
pada Scratch adalah repeat until.
3. Blok sisa hasil bagi yang digunakan pada Blockly adalah remainder of, sedangkan
pada Scratch adalah mod.
4. Untuk menampilkan hasil pemeriksaan, Blockly menggunakan blok write. Pada
Scratch, tidak ada perintah write sehingga digantikan dengan blok say.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang literasi numeric kepada
siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Pemrograman dapat digunakan untuk membantu manusia dalam berbagai hal.
Salah satu hal yang dekat dan dapat memanfaatkan pemrograman adalah aktivitas
hitung-menghitung. Pemrograman sangat membantu dalam melakukan
perhitungan, khususnya perhitungan yang rumit dan besar dimana manusia sudah
sangat sulit untuk melakukannya secara manual. Kali ini, peserta didik akan diajak
untuk membuat program perhitungan yang sederhana yang sangat dekat dengan
kehidupan peserta didik, yaitu terkait perhitungan nilai ujian.
Peserta didik dapat diajak untuk mengingat pelajaran Matematika tentang
menghitung rata-rata. Apakah peserta didik masih ingat bagaimana cara
menghitungnya, mulai dari rata-rata 2 bilangan, 3 bilangan, hingga sejumlah N
(banyak) bilangan.
Kegiatan Inti
Aktivitas AP-K9-02: Proyek Hitung Rata-Rata dari N Nilai
Setelah membahas terkait perhitungan rata-rata, guru dapat membahas persoalan
pada aktivitas ini. Pembahasan dapat dimulai dari cerita pengantarnya, rincian input
output dan contoh input output-nya. Dalam contoh, peserta didik diajak untuk
membahas bagaimana bisa mendapatkan output seperti yang dicontohkan dari input
yang diberikan.
Peserta didik harus diajak untuk mencari contoh input lain dan menghitung output-
nya hingga peserta didik paham dengan yang diharapkan dari persoalan ini.
Setelah paham dengan soalnya, peserta didik ditantang untuk menyusun alur
programnya.
Catatan: Kunci jawaban berikut hanyalah salah satu contoh solusi untuk persoalan
yang diberikan. Peserta didik mungkin akan memiliki program yang berbeda-beda
sesuai kreasi masing-masing untuk menyelesaikan soal tersebut.
Proses
Setelah input disediakan, program dapat masuk ke proses perhitungan rata-rata.
Namun sebelum itu, peserta didik perlu tahu bagaimana cara menelusuri
variabel nilaiBhs yang ternyata memiliki banyak nilai (sebanyak N). Hal ini
dapat dilakukan dengan perulangan, salah satunya menggunakan blok
[count_with]. Jika belum paham penggunaannya, peserta didik dapat diajak
untuk menggunakan blok ini untuk menuliskan isi dari variabel nilaiBhs satu per
satu.
Output
Terakhir, variabel ratarata dapat dicetak untuk mengetahui nilai rata-rata N
bilangan tersebut. Dalam contoh ini, nilai rata-rata yang diperoleh adaah 65,6.
Perintah mencetak variabel dapat dilakukan dengan menggunakan blok
[writeLine] yang akan mencetak variabel ratarata, seperti diperlihatkan pada
Gambar 7.7.
Dengan demikian, didapatkan kode program utuh sebagai salah satu kunci
jawaban untuk proyek ini seperti diperlihatkan pada Gambar 7.8.
Setelah program peserta didik berhasil menunjukkan output yang benar, guru
dapat mengajak peserta didik untuk memodifikasi input seperti yang sudah
dikumpulkan di awal saat pembahasan soal. Cari tahu apakah output yang
dihasilkan program peserta didik sama dengan perhitungan manual yang
dilakukan. Selanjutnya, guru dapat menunjukkan contoh program ini dengan
menggunakan Blockly secara lebih interaktif pada link: https://blockly-
demo.appspot.com/static/demos/code/index.html#vzcpgb
Perbedaan kode program ini (Gambar 7.9) dengan kode program sebelumnya
terletak pada proses perhitungannya. Jika pada program sebelumnya, rata-rata
dihitung dengan mengakumulasikan semua nilai, pada program ini, dicek semua
nilai apakah kurang dari KKM atau tidak.
Jika ya, program perlu menyimpan variabel untuk menghitung banyaknya nilai
yang kurang dari KKM tersebut. Di sinilah, konsep percabangan digunakan.
Banyaknya nilai yang kurang dari KKM disimpan dalam sebuah variable, misalnya
bawahKKM, di mana setiap kita menemui nilai yang kurang dari KKM, variabel
ini ditambah satu (increment). Perhatikan kunci jawaban di atas sebagai salah satu
contoh program lengkap dari solusi persoalan ini. Dari program tersebut, akan
didapatkan output bernilai 2, yang menunjukkan dua nilai yang kurang dari KKM
(50 dan 54).
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang modularisasi program
kepada siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Pada pertemuan ini, peserta didik akan membuat program dari materi yang
dipelajari pada mata pelajaran Matematika, yaitu mengenai fungsi. Dalam pelajaran
Matematika, peserta didik mengenal bahwa fungsi terdiri atas variabel-variabel dan
nilai fungsi tersebut dipengaruhi oleh nilai dari variabel-variabel tersebut. Peserta
didik akan mengimplementasikan konsep fungsi tersebut menjadi modul program.
Nilai variabel pada fungsi tersebut diatur pada modul utama. Dengan demikian,
peserta didik dapat memahami juga bahwa modul untuk menghitung fungsi
matematis saling berkaitan dengan modul utama dari program.
Pemantik
Guru dapat memberikan contoh fungsi matematis sederhana, misalnya dan
meminta peserta didik menghitung hasil dari fungsi tersebut dengan nilai x dan y
yang berbeda-beda. Dengan demikian, peserta didik mengingat kembali konsep
dari fungsi dan variabel
Kegiatan Inti
Pada pertemuan ini, peserta didik diajak untuk mengalami terlebih dahulu
pembuatan modul program dengan menyalin langkah-langkah pembuatan kode
modul program. Setelah membuat modul program, peserta didik diminta untuk
melakukan beberapa kali eksperimen terkait eksekusi modul program. Setelah
mendapatkan pengalaman tersebut, peserta didik diarahkan untuk menarik
kesimpulan berdasarkan pengalaman mereka.
Pada pertemuan ini, kegiatan yang dapat dilakukan di kelas adalah sebagai berikut.
1. Guru menjelaskan konsep modularisasi program.
2. Peserta didik diminta untuk mencoba kode program yang diberikan pada
Aktivitas AP-K9-04: Modul Program: Fungsi Kuadrat.
3. Setelah itu, peserta didik diarahkan untuk mengerjakan AP-K9-05: Modul
Program: Persamaan Linier.
4. Peserta didik diminta untuk mencoba kode program yang diberikan pada
Aktivitas AP-K9-06: Modul Program: Modifikasi Modul F1.
Ada dua bagian dari menu tersebut yang akan digunakan pada pertemuan ke-3
dan ke-4, yaitu bagian yang ditunjukkan pada Gambar 7.11 berikut ini.
Gambar 7.11 menunjukkan dua blok program yang akan digunakan untuk
membuat modul program. Setiap modul program, perlu diberi nama. Nama dari
modul program pada umumnya menggambarkan apa yang akan dilakukan pada
modul tersebut. Nama modul dapat dituliskan pada bagian “do something”
seperti yang ditunjukkan oleh huruf A pada Gambar 7.11.
Terdapat dua jenis modul program, yaitu modul yang akan menghasilkan sebuah
nilai hasil yang ‘diberitahukan’ kepada modul pemanggil dan modul yang tidak
menghasilkan nilai hasil yang perlu diberitahukan kepada pemanggilnya. Modul
yang memiliki nilai kembalian yang akan diberitahukan kepada modul
pemanggilnya, disebut memiliki return value, ditunjukkan oleh huruf B pada
Gambar 7.11. Penjelasan mengenai perbedaan kedua jenis modul ini akan
dibahas lebih lanjut pada pertemuan ke-4.
Sebelum memulai aktivitas ini, peserta didik harus memahami fungsi kuadrat yang
diajarkan pada mata pelajaran Matematika.
Tingkat kesulitan aktivitas ini ialah 3 karena program yang dibuat sudah
melibatkan lebih dari satu modul, tetapi tidak melibatkan percabangan atau
looping.
Jawaban untuk eksperimen pada Tabel 7.3:
Kesimpulan yang dapat diambil berdasarkan eksperimen ini ialah nilai yang
dikembalikan oleh modul F1 bergantung pada nilai parameter input yang diterima
oleh modul tersebut. Parameter dari sebuah modul dapat dikendalikan dari modul
lain yang memanggil modul tersebut (dalam aktivitas ini, modul pemanggil modul
F1 adalah modul utama).
Sebelum memulai aktivitas ini, peserta didik harus memahami persamaan linier
yang diajarkan pada mata pelajaran Matematika. Tingkat kesulitan aktivitas ini
ialah 3 karena program yang dibuat sudah melibatkan lebih dari satu modul, tetapi
tidak melibatkan percabangan atau looping.
Modul persamaanLinier dan modul utama untuk persamaan :
Sebelum memulai aktivitas ini, peserta didik harus memahami fungsi kuadrat yang
diajarkan pada mata pelajaran Matematika. Selain itu, peserta didik sudah
mengerjakan Aktivitas AP-K9-04.
Tingkat kesulitan aktivitas ini ialah 3 karena program yang dibuat sudah
melibatkan lebih dari satu modul, tidak melibatkan percabangan atau looping.
Jawaban untuk pertanyaan-pertanyaan terkait modul F2 dan modul utama:
1. Nilai variabel a, b, c, dan x tidak lagi dapat diatur dari modul utama.
2. Jika dikaitkan dengan Tabel 7.3, dapat disimpulkan bahwa modul yang tidak
memiliki parameter input akan selalu menghasilkan hasil yang sama ketika modul
tersebut dieksekusi.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Kegiatan Inti
Peserta didik diminta untuk mencoba kode program yang diberikan pada Aktivitas
AP-K9-07: Modul Program: Fungsi Kuadrat dan Plotting.
Inti dari pertemuan ini dibahas melalui pertanyaan refleksi peserta didik. Guru
dapat menuntun peserta didik untuk menemukan jawaban dari pertanyaan refleksi
tersebut.
Sebagai materi pengayaan, peserta didik dapat mengerjakan Aktivitas AP-K9-07:
Modul Program: Hitung Volume Tabung.
Penjelasan mengenai procedure dan function
Penjelasan mengenai procedure dan function dibahas dengan lengkap pada Buku
Siswa melalui analogi percakapan antara Ibu dan Andi.
Jawaban untuk Ayo, Berpikir yang menampilkan percakapan Andi dan Ibu:
Percakapan tersebut mengilustrasikan function karena setelah mencuci apel-apel,
Andi mengembalikan apel tersebut kepada ibunya.
Andi dapat dianggap memberikan return value kepada ibunya.
Jawaban Aktivitas AP-K9-07: Modul Program: Fungsi Kuadrat dan Plotting
Sebelum memulai aktivitas ini, peserta didik harus memahami fungsi kuadrat dan
bidang Cartesian yang diajarkan pada mata pelajaran Matematika. Selain itu, peserta
didik sudah mengerjakan Aktivitas APK9-04.
Tingkat kesulitan aktivitas ini ialah 4 karena program yang dibuat sudah
melibatkan lebih dari satu modul dan melibatkan looping.
Jawaban untuk eksperimen pada Tabel 7.5, terkait fungsi kuadrat dengan a=5,
b=10, dan c=20.
amplop pertama, amplop yang terdapat di dalam amplop tersebut harus dibuka
juga.
Sebelum memulai aktivitas ini, peserta didik harus memahami konsep perhitungan
volume tabung.
Tingkat kesulitan aktivitas ini ialah 4 karena program yang dibuat sudah
melibatkan lebih dari satu modul, tetapi tidak melibatkan percabangan atau looping.
Panduan yang diberikan berupa tuntunan langkah-langkah pembuatan modul, bukan
contoh potongan blok program.
Panduan untuk modul-modul yang diperlukan sudah diberikan pada Buku Siswa.
Berikut adalah jawaban untuk program penghitung volume tabung.
Dengan demikian, hasil nilai kembalian dari modul hitungLuasAlas diterima oleh
modul hitungVolumeTabung, kemudian dikalikan dengan tinggi tabung.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang literasi sains kepada siswa,
sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Seperti disampaikan sebelumnya bahwa pemrograman dapat digunakan untuk
membantu dalam berbagai hal, termasuk dalam dunia sains. Dunia sains juga tidak
terlepas dari perhitungan. Berbagai percobaan serta observasi sains yang dilakukan
di laboratorium memiliki keterbatasan, misalnya keterbatasan bahan ataupun
waktu. Oleh karena itu, percobaan tersebut perlu disimulasikan sehingga
diasumsikan bahwa ada bahan atau waktu yang tak terbatas. Bahan dan waktu
tersebut dapat berkembang dengan bantuan perhitungan program komputer. Kali
ini, peserta didik diajak untuk melakukan perhitungan terkait sebuah percobaan
sains.
Sebagai pemantik, peserta didik dapat diajak untuk berpikir bahwa semua yang ada
di dunia ini akan berkembang, dari yang kecil seperti sel sampai alam semesta.
Perkembangan ini ada yang konstan atau perkembangan dengan pertambahan tetap,
ada yang linear atau pertambahan sesuai dengan kondisi, ada yang eksponensial
atau pertambahan jauh melebihi kondisi.
Peserta didik diajak untuk mencari tahu apa saja contoh perkembangan tersebut,
misalnya saldo tabungan, jarak tempuh kendaraan, tinggi air bak mandi, jumlah
penduduk, hingga kasus COVID-19, baik di Indonesia maupun di dunia.
Kegiatan Inti
Aktivitas AP-K9-09: Proyek Pertumbuhan 3 Hari
Perlu diingatkan bahwa untuk bisa memahami persoalan ini, peserta didik perlu
membuat contoh input dan output-nya sendiri sehingga memahami bagaimana cara
mendapatkan output-nya. Sebagai petunjuk, guru dapat menjelaskan terkait konsep
perbandingan senilai dari dua nilai atau variabel. Jika salah satu variabel
membesar, variabel yang lain ikut membesar (berbanding lurus). Jika
perbesarannya ini memiliki rasio, nilai variabel yang diminta dapat dihitung.
Perhatikan tabel perbandingan dua variabel yang berbanding lurus berikut.
Dari tabel perbandingan di atas, dengan informasi bahwa jika var1 (lama) bernilai
3, maka var2 (lama) bernilai 6. Dari informasi ini, kita dapat menghitung, jika var1
(baru) bernilai 7 maka var2 (baru) akan bernilai 14. Nilai var2 akan membesar
dengan rasio 2 kali lipat dari var1. Nilai rasio diperoleh dari var2 yang lama yang
dibagi dengan var1 yang lama. Rasio ini kemudian digunakan untuk menghitung
nilai var2 yang baru, yaitu dikalikan dengan nilai var1 yang baru.
Untuk kasus Proyek Pertumbuhan 3 Hari, hanya terdapat 2 nilai, yaitu var1 lama
dan var2 lama. var1 baru terdapat pada var1 lama karena dalam proses
pertumbuhan nilai yang lama akan menjadi nilai baru untuk perhitungan
berikutnya. Oleh karena itu, jika dibuat tabel perbandingan, contoh input output
yang diberikan akan dapat dimodelkan sebagai berikut:
Dari perbandingan tersebut, kita perlu menghitung nilai rasio. Dalam kasus ini,
dihitung dari nilai H2 yang dibagi dengan nilai H1. Selanjutnya, nilai yang ditanya
(H3) dihitung dari nilai H2 sebelumnya dikalikan dengan nilai rasio yang telah
dihitung. Sampai bagian petunjuk ini, peserta didik dapat ditantang kembali untuk
menyelesaikan programnya (bagi yang belum selesai). Programnya dapat dibuat
dengan skema/pola dasar Input-Proses-Output. Alur yang dimiliki juga hanya alur
sekuensial tanpa percabangan dan perulangan. Walaupun pada soal diminta untuk
menggunakan konsep modularitas, pada fase ini, peserta didik masih dapat
dibebaskan untuk membuat program tanpa modul.
Setelah 5-10 menit mencoba, guru dapat menunjukkan contoh kode program pada
Gambar 7.12 sebagai salah satu alternatif solusi dari persoalan ini.
Selanjutnya, setelah modul dibuat, fungsi tersebut dipanggil pada program utama
yang dimodifikasi dari kode program Gambar 7.14, di mana kali ini yang diminta
ialah banyaknya organisme bakteri pada hari ke-N, yang dalam contoh kunci
jawaban Gambar 7.16 diberi nama variabel HN. Oleh karena itu, kita juga perlu
membaca/menyediakan variabel yang menyimpan banyaknya hari yang diminta,
yaitu variabel N. Terakhir, nilai variabel HN ini dicetak sehingga jika Titi memiliki
organisme pada hari pertama (H1) berjumlah 8, pada hari kedua (H2) berjumlah 10,
dan Titi diminta mengamati hingga hari ke-10, banyaknya organisme pada hari ke-
10 berjumlah 276.
Catatan Tambahan: Peserta didik dapat mengamati pertumbuhan yang terjadi setiap
hari dengan menambahkan blok [writeLine] dan variabel HN pada modul
hitungHN di akhir perintah di dalam blok [repeat]. Proses ini dapat dilakukan
sebagai salah satu cara debugging untuk mengecek apakah program sudah benar
atau belum.
Setelah 5-10 menit mencoba, guru dapat menunjukkan contoh kode program pada
Gambar 7.17 sebagai salah satu alternatif modul untuk persoalan ini dan Gambar
7.18 sebagai program utamanya. Pada modul hitungHari tersebut, beberapa
variabel perlu diinisialisasi atau diberi nilai di awal. Variabel HN (banyaknya
organisme bakteri) perlu diinisialisasi dengan nilai H2 karena akan dicek dalam
perulangan [repeat_while]. Jika tidak diberi nilai terlebih dahulu, bagaimana jika
nilai HN terisi nol atau sembarang? Kondisi dalam [repeat_while] sesuai dengan
kondisi di hari kedua di mana perhitungan akan dilakukan. Kemudian, variabel N
(hari ke berapa) diinisialisasi dengan nilai 2 untuk menunjukkan kondisi awal
perhitungan, yaitu setelah hari kedua. Dengan demikian, jika program utama pada
Gambar 7.18 dijalankan, akan menghasilkan keluaran N bernilai 10.
Sebagai alternatif, kode program pada Gambar 7.17 dapat diubah agar mengandung
percabangan seperti diperlihatkan dalam kode program pada Gambar 7.19. Pada
program ini, blok perulangan yang digunakan ialah blok [repeat_until]. Perulangan
dilakukan hingga kondisi selesai, yaitu jika banyaknya organisme bakteri (HN)
sudah melebihi nilai yang diminta (M). Kondisi percabangan ini diletakkan di akhir
perulangan [repeat_until]. Dengan demikian, inisialisasi juga melibatkan variabel
selesai yang diisi dengan nilai false untuk memastikan agar program masuk ke
dalam perulangan [repeat_until].
2. Manik warna-warni (5 merah, 5 kuning, 5 hijau, 5 biru, 5 abu-abu; atau warna lain
yang diinginkan)
Kegiatan Inti
Peserta didik diminta untuk membuat kreasi manik-manik yang nantinya dapat
berupa gelang, kalung atau gantungan kunci. Aktivitas ini terinspirasi dari video
pembelajaran pada kegiatan Unplugged Code.org dengan alamat
https://code.org/curriculum/course3/4/Teacher dan dengan video pembelajaran
https://www.youtube.com/watch?v=Rb5DNYhLb7I.
Dalam video tersebut, peserta didik diminta untuk membuat hiasan gantungan
(suncatcher) dari berbagai macam manik-manik. Dalam kegiatan ini, peserta didik
diminta untuk membuat gelang, dengan variasi warna. Namun demikian, kreasi
beragam manik-manik juga dapat dibuat sesuai kreativitas dari guru.
Atau, jika peserta didik mengamati pola dari Gelang Bunga, ada beberapa manik-
manik yang memiliki kesamaan dan dapat dibuat satu amplop tersendiri untuk pola
yang sama tersebut, yaitu pola warna BIRUKUNING-MERAH. Setelah itu, amplop
yang lain dapat diisi dengan warna yang lain.
Setelah itu, peserta didik dapat secara bebas membuat kumpulan instruksi untuk
membuat gelang warna-warni dan meminta pasangannya untuk membuat gelang
berdasarkan instruksi tersebut Guru dapat memantau peserta didik jika menemui
kesulitan.
Kegiatan Alternatif
Jika tidak bisa menyediakan bahan dan peralatannya, kegiatan ini bisa digantikan
dengan kegiatan menggambar.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang konverter sistem bilangan
kepada siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Saat pertama belajar menghitung, alat bantu yang digunakan biasanya ialah jari
tangan. Karena ada 10 jari tangan, sistem bilangan yang paling umum digunakan
oleh manusia adalah sistem bilangan desimal di mana digit terendah adalah 0 dan
digit tertinggi adalah 9. Komputer berbeda dengan manusia. Komputer hanya
mengenal 2 jenis digit, yaitu 0 dan 1. Sistem bilangan yang digit tertingginya 1
disebut sistem bilangan biner. Selain sistem bilangan desimal dan sistem bilangan
biner, masih ada sistem bilangan-sistem bilangan lainnya yang sering digunakan
juga. Semua sistem bilangan ini memiliki konsep yang sama hanya berbeda pada
basis yang digunakan.
Pemantik
Guru dapat mengingatkan peserta didik tentang materi bilangan biner yang pernah
dipelajari di kelas VII dan kelas VIII.
Guru juga dapat memberi contoh sebuah bilangan yang sama, tetapi dari 2 sistem
bilangan yang berbeda. Contoh ini bisa didapat di Buku Siswa.
Setelah itu, guru dapat menjelaskan target program yang akan dibuat serta tahapan
penyelesaiannya.
Tahapan penyelesaian dapat dilihat di diagram berikut ini:
Guru menjelaskan alur kegiatan yang akan mereka lakukan untuk membuat
program konverter bilangan di subbab H. Berikan pengertian kepada peserta didik
bahwa untuk membuat program yang kompleks, mereka perlu mulai dari program
yang lebih sederhana. Konsep ini dinamakan dekomposisi.
Kegiatan Inti
Guru menjelaskan makna bilangan biner di sitem bilangan desimal.
Guru mengajarkan peserta didik bagaimana melakukan konversi dari bilangan
biner menjadi bilangan desimal.
Setelah memberikan contoh, guru dapat meminta peserta didik mengisi tabel untuk
mengubah bilangan biner 1011 menjadi bilangan desimal.
Guru juga dapat memberi beberapa latihan lagi kepada peserta didik untuk
memastikan apakah peserta didik sudah paham bagaimana melakukan konversi
bilangan biner menjadi bilangan desimal.
Jika peserta didik sudah paham bagaimana melakukan konversi dari bilangan biner
menjadi desimal, ajaklah peserta didik menerapkan konsep tersebut untuk
melakukan konversi dari bilangan octal menjadi desimal dengan mengisi tabel
konversi bilangan oktal 1011.
Mintalah satu atau dua orang peserta didik untuk menjelaskan proses konversi yang
dilakukan. Guru dapat memberikan beberapa latihan kepada peserta didik untuk
memastikan peserta didik sudah paham bagaimana melakukan konversi bilangan
oktal menjadi desimal. Saat peserta didik menggunakan konsep konversi bilangan
biner menjadi desimal untuk melakukan konversi bilangan oktal menjadi desimal,
peserta didik tersebut sedang melakukan abstraksi.
Agar peserta didik dapat menguji apakah konversi yang mereka lakukan sudah
benar secara mandiri, guru mengenalkan converter online yang sudah banyak
tersedia. Salah satu konverter online tersedia pada link
https://www.rapidtables.com/convert/number/index.html.
Kegiatan berikutnya ialah mengerjakan Aktivitas AP-K9-12:
Konverter Bilangan Biner ke Desimal dan Aktivitas AP-K9-13:
Konverter Bilangan Oktal ke Desimal secara mandiri. Dalam pembuatan program,
guru perlu mengingatkan peserta didik untuk menguji program yang dibuat.
Mintalah peserta didik untuk membuat beberapa contoh masukan dan keluaran
untuk menguji program mereka. Ingatkan peserta didik bahwa penilaian tidak
hanya dari kebenaran keluaran program, tetapi juga struktur program yang dibuat.
Peserta didik harus membuat function sesuai instruksi dari masing-masing
aktivitas.
Selanjutnya, guru memberikan penjelasan mengenai konversi dari sistem bilangan
desimal ke sistem bilangan biner dan oktal, sesuai dengan penjelasan yang ada
pada Buku Siswa. Guru juga dapat memberikan beberapa latihan sebelum peserta
didik melakukan aktivitias individu.
Kegiatan berikutnya adalah mengerjakan Aktivitas AP-K9-14:
Konverter Bilangan Desimal ke Biner dan Aktivitas AP-K9-15:
Konverter Bilangan Desimal ke Oktal. Dalam pembuatan program, guru perlu
mengingatkan peserta didik untuk memeriksa program yang dibuat. Mintalah
peserta didik untuk membuat beberapa contoh masukan dan keluaran untuk
menguji keluaran dari program yang mereka buat. Selain memastikan keluaran
program sudah benar, peserta didik juga harus membuat function sesuai dengan
instruksi dari masing-masing aktivitas.
Setelah semua aktivitas dikerjakan, peserta didik diingatkan untuk mengisi refleksi
pada jurnal mereka.
Pada pertemuan ini, disediakan tantangan untuk peserta didik yaitu membuat
konversi desimal ke heksadesimal dan sebaliknya. Guru dapat menyesuaikan waktu
dan kemampuan peserta didik untuk tantangan ini. Tantangan juga dapat diberikan
sebagai nilai tambahan untuk peserta didik yang dapat menyelesaikannya.
Pada algoritma yang diberikan di Buku Siswa, perulangan pada poin A dilakukan
sampai seluruh digit dari variabel bilBiner selesai diproses.
Semua digit pada bilBiner selesai diproses ditandai dengan variabel bilBiner berisi 0
yang artinya tidak ada lagi digit yang belum dikonversi ke desimal. Ekspresi
pengulangan:
repeat while (bilBiner > 0)
Ekspresi tersebut bisa juga diganti dengan repeat until:
repeat until (bilBiner = 0)
Blok kode untuk melakukan konversi bilangan biner menjadi desimal (isi dari
varibel bilBiner dapat diganti-ganti bergantung pada bilangan yang ingin dikonversi).
Urutan blok kode peserta didik tidak harus sama persis dengan kunci jawaban pada
Gambar 7.20. Beberapa blok bisa saja tertukar urutannya.
Peserta didik juga mungkin membuat perintah yang berbeda dengan kunci jawaban.
Ingatkan peserta didik untuk menuliskan hasil pengujian mereka di lembar kerja.
Catatan:
- Ingatkan peserta didik untuk membuat nama variabel yang sesuai dengan
maknanya.
- Pada Buku Siswa, diberikan saran untuk penamaan file, tetapi guru bisa mengubah
format penamaan file sesuai dengan kondisi kelas.
Modifikasi program dengan membungkus semua blok untuk melakukan konversi
bilangan biner ke desimal dalam sebuah fungsi.
variabel n belum memiliki nilai. Blockly tidak mengisi secara otomatis variabel
yang dibuat sehingga pengguna perlu mengisi variabel dengan nilai yang
diinginkan.
2. Variabel bilDesimal digunakan untuk menampung nilai desimal dari digit-digit
bilangan biner yang sudah diproses. Pengisian variabel bilDesimal adalah dengan
menjumlahkan hasil pemrosesan digit pada bilangan biner ke variabel bilDesimal.
Agar nilai awal variabel bilDesimal tidak mengubah hasil penjumlahan dari
pemrosesan digitdigit pada bilangan biner, variabel desimal diisi dengan identitas
dari penjumlahan yaitu 0. Pada kasus variabel bilDesimal, sebenarnya tanpa
memberi nilai awal pada variabel ini, program masih bisa berjalan dengan benar
karena perintah
Perubahan yang paling utama ialah perubahan pada nomor 3. Dengan melakukan
perubahan pada nomor 3, sekalipun nama variabel dan function tidak berubah,
program tetap melakukan konversi bilangan octal menjadi desimal. Namun, ingatkan
peserta didik untuk tetap mengubah nama variabel dan nama function, agar penamaan
pada program tidak membingungkan.
Blok untuk program konversi bilangan oktal menjadi desimal dapat dilihat pada
Gambar 7.22.
Jawaban pengayaan
Jika ada masukan yang tidak sesuai dengan sistem bilangan yang seharusnya, program
akan tetap mengeluarkan hasil, tetapi tidak sesuai dengan yang seharusnya. Jika
program tidak memeriksa apakah inputnya sesuai atau tidak, kesalahan tidak
terdeteksi dan terasa seperti tidak ada yang salah.
Ide perbaikan: memeriksa apakah setiap digit pada masukan sesuai dengan sistem
bilangan yang sedang digunakan. Apabila ada digit yang tidak benar, program akan
mengembalikan tulisan “input tidak sesuai“. Berikut ini merupakan contoh modifikasi
pada fungsi BinerToDecimal.
Pada contoh ini, jika ditemukan digit selain 0 dan 1, fungsi akan mengembalikan
tulisan “input tidak sesuai“.
Sebagai contoh, jika pada program utama bilBiner diisi dengan 12, keluarannya
adalah input tidak sesuai.
perubahannya sebelum peserta didik membuat program. Hal ini untuk mendeteksi
apakah peserta didik paham algoritma konversi. Jika peserta didik mampu
menentukan perubahan apa saja yang perlu dilakukan, peserta didik tersebut
memahami jalannya algoritma konversi yang diberikan.
Blok untuk konversi bilangan desimal ke oktal dapat dilihat pada Gambar 7.23.
Ingatkan peserta didik untuk menguji kebenaran dari program yang sudah mereka
buat. Ajak peserta didik untuk memeriksa benar atau tidaknya program mereka
dengan mencocokan hasil DecimalToOctal dengan OctalToDecimal.
Jawaban Tantangan
a. Konversi 4000 dari desimal menjadi heksadesimal:
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang penambahan parity bit pada
sistem bilangan biner kepada siswa, sebagai peransang dalam pembelajaran di
kelas.
Apersepsi
Dalam kehidupan sehari-hari, sering terjadi kesalahan dalam penyampaian pesan
sekalipun pengirim pesan sudah menyampaikan pesan dengan benar. Mungkin saja
pengirim pesan mengalami kendala atau ketika disampaikan langsung pun mungkin
saja penerima pesan salah mendengar.
Dalam pengiriman pesan melalui jaringan komputer juga mungkin terjadi
kesalahan. Mungkin saja ada kendala jaringan atau ada orang yang sengaja
mengubah pesan yang sedang dikirimkan. Untuk dapat melacak apakah terjadi
kesalahan pada pesan yang dikirim, salah satu metodenya ialah dengan
menambahkan parity bit.
Pemantik
Guru dapat mengulang materi pada pertemuan sebelumnya untuk mengingatkan
peserta didik mengenai sistem bilangan. Kemudian, guru mengingatkan peserta
didik tentang posisi mereka saat ini dalam tahapan pembuatan program konverter
bilangan. Dari diagram di bawah, saat ini, peserta didik sedang dalam tahap untuk
menambahkan parity bit pada sistem bilangan biner.
Agar peserta didik mengerti pentingnya penambahan parity bit, guru dapat
menjelaskan mengenai proses pengiriman data secara sederhana dan kesalahan
yang mungkin terjadi.
Kegiatan Inti
Guru menjelaskan apa itu parity bit dan fungsinya. Peserta didik diberi waktu
untuk mengerjakan latihan yang sudah tersedia di Buku Siswa agar peserta didik
paham mengenai parity bit genap dan parity bit ganjil.
Peserta didik diarahkan untuk melakukan kegiatan unplugged Aktivitas AP-K9-16-
U: Pengantar Pesan. Melalui kegiatan ini, ajaklah peserta didik untuk mendapat
jawaban dari pertanyaan yang terdapat pada Buku Siswa. Setelah setiap kelompok
mencoba, ajak peserta didik berdiskusi hasil dari kegiatan yang mereka lakukan.
Kegiatan berikutnya ialah mengerjakan Aktivitas AP-K9-17: Konverter Bilangan
Desimal ke Biner dengan Parity Bit Genap dan Aktivitas AP-K9-18: Konverter
Bilangan Biner dengan Parity Bit Genap ke Desimal. Selama mengerjakan
aktivitas, ingatkan peserta didik untuk memahami algoritma yang diberikan dan
tidak hanya sekedar mengubah algoritma menjadi kode.
Setelah selesai mengerjakan aktivitas, jika masih tersedia waktu peserta didik bisa
diminta untuk mencoba membuat converter desimal ke biner dan sebaliknya tetapi
dengan parity bit ganjil. Hal ini untuk memastikan apakah peserta didik paham
algoritma yang mereka kerjakan sehingga dapat memodifikasi kode blok untuk
Jawaban Pengayaan
Variabel hitung dapat diubah dengan menambahkan variabel digit yang ditemukan ke
variabel hitung. Karena saat digit adalah 1, variabel hitung ditambah 1, sedangkan saat
digit adalah 0, variabel hitung ditambah 0. Jadi, tanpa harus melakukan pemeriksaan
terhadap isi variabel digit, variabel hitung bisa langsung ditambahkan dengan digit.
Untuk jawaban aktivitas aktivitas berikutnya, variabel hitung diubah dengan cara
ditambahkan dengan variabel digit.
Setelah membuat program, ingatkan peserta didik untuk mengisi refleksi pada
lembar kerja mereka. Jika ada waktu, ajak peserta didik memodifikasi program yang
mereka buat menjadi parity bit ganjil.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang wrap up konverter bilangan
kepada siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Guru bisa menanyakan pengalaman peserta didik ketika bepergian ke luar kota.
Misalnya seorang peserta didik yang berada di kota A ingin pergi ke kota C. Akan
tetapi, tidak ada transportasi yang dapat mengantarnya langsung dari kota A ke
kota C. Apakah artinya peserta didik tersebut tidak dapat pergi ke kota C? Tidak
ada transportasi yang dapat mengantar langsung tidak selalu berarti peserta didik
tersebut tidak dapat pergi ke kota tujuan. Orang bisa mencari alternatif seperti
Kegiatan Inti
Guru mengajak peserta didik untuk membuat kelompok yang berisi
2 orang. Di dalam kelompok, peserta didik membuat konverter bilangan untuk
menyelesaikan Aktivitas AP-K9-19: Konverter Biner, Oktal, dan Desimal
Kegaitan berikutnya ialah setiap kelompok membuat 2 buah poster untuk
menyelesaikan Aktivitas AP-K9-20: Poster Konverter Bilangan dan Aktivitas AP-
K9-21: Poster Serunya Belajar Dua Bahasa.
Blok program pada bagian program utama yang memanggil fungsi-fungsi sesuai
dengan permintaan pengguna ditunjukkan dalam Gambar 7.27.
Setelah membuat program, ingatkan peserta didik untuk menguji program yang
sudah mereka buat. Minta mereka menuliskan hasil pengujian mereka di lembar kerja
dalam sebuah tabel dengan format yang diberikan di Buku Siswa. Guru juga bisa
membantu memberikan kasus-kasus uji agar peserta didik bisa mendeteksi apabila
Aktivitas AP-K9-20
Dalam pembuatan poster, guru membimbing peserta didik untuk menyajikan
penjelasan program konverter bilangan yang sudah mereka buat. Pastikan isi dari
poster jelas dan lengkap sesuai dengan petunjuk di Buku Siswa.
Jika ada peserta didik yang tidak tahu bagaimana membuat poster digital, guru
dapat mengajarkan tools yang sederhana untuk membuat poster. Tools paling
sederhana adalah menggunakan Microsoft Word.
Guru bisa mencontohkan membuat poster dengan shape, text box, dan gambar di
Microsoft Word.
Aktivitas ini juga dapat dibuat menjadi aktivitas unplugged. Contohnya, poster
dapat dibuat di kertas manila/kertas gambar berukuran A2. Peserta didik dapat
berkreasi menggunakan spidol, pensil warna, atau krayon atau kertas lipat.
Untuk penilaian poster, guru dapat menilai dari segi berikut.
1. Kelengkapan dan kejelasan isi poster: apakah peserta didik menyajikan isi dengan
lengkap dan jelas. Agar poster enak dibaca, poster tidak boleh memiliki banyak isi.
Dari sini, peserta didik belajar untuk merangkum materi yang penting dan
menyajikan dengan ringkas, tetapi lengkap.
2. Struktur poster: apakah alur poster enak untuk dibaca.
3. Desain poster: apakah peserta didik membuat desain yang enak dilihat. Desain
dinilai bukan dari seberapa rumit pembuatannya, tetapi dari pemilihan posisi,
warna, dan font. Dari sini, peserta didik belajar untuk memilih perpaduan warna
dan font yang membuat pembaca dapat melihat dengan nyaman.
Aktivitas AP-K9-21
Setelah belajar bahasa Scratch dan Blockly, peserta didik diajak untuk merefleksi
pengalaman belajar mereka dan menyajikannya dalam sebuah poster. Bimbing peserta
didik untuk menyajikan refleksi seperti petunjuk pada Buku Siswa melalui poster
mereka.
Proses selanjutnya sama dengan Aktivitas AP-K9-20 di atas.
Hasil dari poster dapat disajikan secara fisik apabila kondisinya memungkinkan.
Jika tidak memungkinkan, guru bisa memasang poster hasil karya peserta didik secara
digital dengan menyimpannya di drive, jamboard, atau aplikasi lain yang bisa diakses
oleh semua peserta didik.
Dari kegiatan ini, diharapkan peserta didik dapat menikmati proses belajar
pemrograman visual dan memiliki dokumentasi karya mereka (program konversi
bilangan).
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
Kegiatan Pendahuluan
Siswa melakukan do’a sebelum belajar (Guru meminta seorang Siswa untuk
memimpin do’a).
Guru mengecek kehadiran Siswa dan meminta siswa untuk mempersiapkan
perlengkapan dan peralatan yang diperlukan.
Siswa menerima informasi tentang pembelajaran yang akan dilaksanakan dengan
materi yang memiliki keterkaitan dengan materi sebelumnya.
Guru bertanya kepada siswa mencari informasi tentang tambahan - pemrograman
dengan ozobot kepada siswa, sebagai peransang dalam pembelajaran di kelas.
Apersepsi
Sama seperti di buku kelas VIII, modul ini ialah modul tambahan apabila sekolah
dan peserta didik memang memiliki robot Ozobot atau robot line follower lainnya.
Jika sekolah memiliki robot Ozobot ini, modul ini siap pakai untuk dijadikan
panduan dalam eksplorasi. Peserta didik juga dapat diajak berperan sebagai robot
Ozobot sehingga menjadi aktivitas unplugged. Robot Ozobot ini tidak hanya dapat
bergerak mengikuti garis begitu saja. Sama seperti robot lainnya, robot Ozobot ini
dapat dikendalikan dengan program yang dibuat oleh manusia. Guru dapat
memberi contoh film yang terdapat robot di dalamnya.
Pemantik
Diberikan video simulasi Robot Ozobot.
https://ozobot.com/educate
https://ozobot.com/create/challenges
https://ozobot.com/educate/lessons
Kegiatan Inti
Guru mengingatkan kembali bahwa di kelas VIII, peserta didik telah mempelajari
bagaimana cara kerja Ozobot secara manual dan bagaimana merawat dan
melakukan kalibrasi robot Ozobot. Di materi kelas IX ini, peserta didik akan
mempelajari bagaimana mengatur Ozobot melalui program.
Guru menjelaskan bahwa gerakan robot Ozobot dapat dikendalikan melalui sebuah
program yang dibuat sendiri. Untuk itu, diperlukan seperangkat komputer atau
laptop yang terhubung dengan internet. Apabila sekolah tidak dapat menyediakan
robot Ozobot, guru dapat mencoba implementasi secara unplugged.
Peserta didik dibagi menjadi 3 orang per kelompok dan masing-masing akan
memiliki peran yang berbeda, yaitu:
(1) menjadi program yang akan memberi perintah pada robot
(2) menjadi robot yang akan menerima perintah dari program
(3) menjadi tester yang akan memastikan apakah robot bergerak sesuai perintah
Kelompok peserta didik ini dapat saling bekerja sama untuk menjalankan aktivitas
yang ada dan apabila memungkinkan, lembar kerja yang tadinya berupa garis di
kertas dapat dilakukan secara nyata dengan membuat pola sejenis di ruang kelas.
Apabila sekolah dapat menyediakan robot Ozobot, hal ini dapat dilakukan langsung
menggunakan robotnya.
Pembuatan program untuk kendali robot Ozobot menggunakan OzoBlockly yang
dapat diakses melalui link: https://OzoBlockly.com/editor?
lang=en&robot=bit&mode=2.
Guru akan menjelaskan langkah per langkah dan peserta didik langsung
mencobanya pada robot Ozobot. Yang akan dipelajari pada materi ini adalah:
1. Navigasi tanpa Garis
2. Permainan Lampu pada Ozobot
3. Pengaturan Waktu pada Ozobot
4. Pengulangan Blok
5. Navigasi dengan Garis
6. Blok Percabangan dengan Garis
Setiap materi ada pada Aktivitas AP-K9-23: Memprogram Ozobot.
Guru mengajak peserta didik untuk mencoba sesuai panduan pada aktivitas.
Ada tantangan yang diberikan pada peserta didik untuk menjatuhkan semua benda
kecil yang ada di titik-titik persimpangan secepat mungkin (berarti dengan langkah
sesedikit mungkin) dengan menggunakan robot Ozobot. Ada beberapa aturan yang
ditetapkan, yaitu bahwa semua garis hanya dapat dilewati satu kali saja.
Salah satu contoh jalur yang dapat diikuti dapat dilihat pada Gambar 7.28.
pada bahan pengayaan. Atau, guru juga dapat membuat blok-blok kode menjadi kartu-
kartu yang dapat dimainkan oleh peserta didik.
Aktivitas pembuatan poster juga dapat dibuat sebagai aktivitas unplugged sesuai
penjelasan pada panduan pembelajarannya. Materi tambahan terkait robot Ozobot
dapat menggunakan robot line follower lainnya atau melakukannya secara unplugged
seperti yang telah dijelaskan pada panduan pembelajarannya.
Penutup
Guru menutup pertemuan dengan refleksi bahwa algoritma dan pemograman ialah
pengetahuan yang dapat diimplementasikan dalam kehidupan sehari-hari, serta dalam
mata pelajaran yang lain
E. ASESMEN / PENILAIAN
Sumatif:
Sumatif dilakukan dengan asesmen melalui soal, seperti contoh pada uji kompetensi.
Uji Kompetensi
Soal Esai
Buatlah sebuah fungsi dengan nama “kabisat” untuk menentukan sebuah tahun
merupakan tahun kabisat atau bukan. Parameter untuk fungsi “kabisat” ialah sebuah
variabel “tahun”. Kembalian dari fungsi tersebut ialah sebuah teks yang berisi
“kabisat” atau “bukan kabisat”.
Syarat sebuah tahun merupakan tahun kabisat ialah seperti berikut.
1. Jika tahun itu habis dibagi 400, tahun itu sudah pasti tahun kabisat.
2. Jika tahun itu tidak habis dibagi 400 tetapi habis dibagi 100, tahun itu sudah pasti
F. REFLEKSI
Refleksi Guru
Tabel 7.17 Refleksi Guru Bab Algoritma dan Pemrograman
No Aspek Pertanyaan
Pengayaan
Aktivitas pembelajaran bisa dikembangkan dengan mempelajari materi dari situs-
situs yang memiliki reputasi bagus, seperti:
1. Kegiatan unplugged, https://csunplugged.org/en/ atau
https://code.org/curriculum/unplugged
2. Kurikulum plugged Scratch, https://csfirst.withgoogle.com/s/en/home
3. Materi Blockly, https://developers.google.com/blockly/guides/overview
4. https://Ozobot.com/create/challenges
5. https://Ozobot.com/educate/lessons
6. https://Ozobot.com/create/Ozoblockly
Remedial
Aktivitas pembelajaran pada kelompok yang membutuhkan remedial dapat
dikembangkan dengan melakukan pendampingan kepada peserta didik untuk setiap
aktivitas yang ada. Guru dapat juga memberikan tipstips khusus untuk memudahkan
pemahaman materi. Tutorial sebaya juga dapat dilakukan dengan mengajak
berdiskusi peserta didik yang telah memahami materi. Penjelasan dalam bentuk video
tutorial yang dapat diakses oleh peserta didik juga akan sangat membantu, sehingga
peserta didik dapat mempelajari materi pembelajaran berulang-ulang secara mandiri
hingga memahaminya.
LAMPIRAN
Analisis
1. Untuk dapat memeriksa apakah sebuah bilangan bulat positif adalah bilangan
prima atau bukan, kalian perlu mendefinisikan sebuah variabel, yaitu bilangan
bulat positif N, sebagai input.
2. Selanjutnya, untuk dapat menentukan apakah sebuah bilangan adalah bilangan
prima atau bukan, kalian perlu mengingat kembali definisi dari bilangan prima.
Sebuah bilangan bulat positif N disebut prima jika N hanya memiliki dua buah
faktor pembagi, yaitu 1 dan N. Oleh karena itu, perlu diperiksa apakah ada faktor
pembagi selain 1 dan N. Kalian tentu mengetahui bahwa faktor pembagi dari N
pasti ada di antara 1 sampai dengan N.
3. Untuk itu, kalian perlu membuat sebuah variabel, yaitu variabel i.
Variabel ini akan bernilai 2 sampai dengan N-1. Jika ada nilai i yang merupakan
faktor pembagi dari N, maka N pasti bukan bilangan prima.
Jika sebaliknya, maka pasti N adalah bilangan prima.
Algoritma/ Kerangka Program
Berdasarkan analisis di atas, ayo, buatlah program Blockly dan Scratch untuk
memeriksa apakah sebuah bilangan adalah sebuah bilangan prima atau bukan!
Simpan program yang sudah kalian buat ke dalam sebuah file. Berilah file tersebut
nama dengan format berikut: AP-K9-01-<Nomor Absen><Nama>.
Catatan: Kalian juga dapat memberi nama file sesuai instruksi dari guru kalian.
Agar makin jelas, perhatikan rincian program yang diharapkan berikut ini.
Input: Terdiri atas dua kelompok input
• N yang menyatakan banyaknya siswa.
• Nilai ujian Bahasa Indonesia dari N siswa.
Output: Tulisan di layar berupa nilai rata-rata ujian Bahasa Indonesia untuk N siswa
tersebut.
Kalian dapat menganalisis permasalahan ini dengan mengingat kembali bagaimana
menghitung rata-rata.
Sebagai contoh, perhatikan contoh input dan output berikut ini:
Sampai tahap ini, kalian sudah memiliki sebuah modul kosong dengan nama [do
something]. Nama “do something”, yang artinya ialah “lakukan sesuatu”,
merepresentasikan bahwa setiap modul pada program akan memiliki manfaatnya
masing-masing. Sekarang, mari buat modul yang berhubungan dengan Matematika.
Dalam pelajaran Matematika, kalian tentu sudah mengenal persamaan kuadrat. Salah
satu contohnya ialah persamaan berikut ini:
Nilai f(x) pada Persamaan 1 ditentukan oleh empat buah variabel, yaitu a, b, c, dan x.
Mari, sekarang, buatlah sebuah modul program untuk menghitung f(x).
Input: 4 buah variabel, yaitu variabel a, b, c, dan x
Output: Tampilan nilai f(x) pada layar.
Tabel di bawah ini adalah contoh input dan output dari program ini.
Sampai saat ini, kalian telah membuat sebuah modul dengan nama F1 yang bertujuan
untuk menghitung nilai f(x) berdasarkan Persamaan 1. Setelah membuat satu blok
modul F1, ceritakan dengan kata-kata kalian sendiri mengenai definisi dari modul
program! Tuliskan pada jurnal kalian!
Mari, buat sebuah modul lain yang berinteraksi dengan modul F1. Ikuti langkah
berikut ini.
Selamat! Kalian sudah berhasil membuat program pertama kalian yang terdiri atas
dua modul!
Menurut analisis kalian, Gambar 7.5 dapat dikategorikan sebagai ilustrasi untuk
procedure atau function? Jelaskan jawaban kalian!
Algoritma
Setelah menentukan masukan dan keluaran dari program yang akan dibuat, mari,
mempelajari algoritma untuk mengubah bilangan biner menjadi desimal.
Seperti yang sudah dibahas sebelumnya, untuk mengubah bilangan biner menjadi
bilangan desimal, kalian dapat melakukan perkalian terhadap setiap digit pada
bilangan biner tersebut dengan bilangan 2n, di mana n adalah posisi digit dari kanan
dan n dimulai dari 0 (artinya digit paling kanan menempati posisi 0). Setelah setiap
digit dikali dengan 2n, kalian perlu menjumlahkan semua hasil perkalian tersebut
untuk mendapatkan bilangan desimalnya.
Proses mengalikan setiap digit dengan bilangan 2n akan dilakukan dengan
perulangan. Perulangan dilakukan ketika n = 0 yang berarti digit yang dikalikan
adalah digit paling kanan. n bertambah satu setiap kali digit yang diproses bergeser
ke kiri.
Guru dan peserta didik mencari berbagai informasi tentang algoritma dan
pemograman media atau website resmi dibawa nauangan kementerian pendidikan,
kebudayaan, riset dan teknologi.
Buku Panduan Guru dan Siswa Pendidikan Pancasila dan Kewarganegaraan untuk
SMP/MTs Kelas IX : Penerbit, Pusat Perbukuan Badan Standar, Kurikulum, dan
Asesmen Pendidikan Kementerian Pendidikan Kebudayaan, Riset, dan Teknologi
Tahun 2022
C. GLOSARIUM
Istilah Definisi
Aplikasi Lembar Program yang memanipulasi tabel yang terdiri dari baris
Kerja / Spreadsheet dan kolom sel, dan menampilkannya di layar; sel berisi
informasi dan rumus numerik, atau teks.
Aplikasi Terpercaya Peran atau tugas tertentu di mana sistem komputer dapat
/ Trusted diterapkan yang memiliki, melibatkan, atau menunjukkan
Application fitur keamanan yang diperlukan untuk menegakkan
kebijakan keamanan”
Blog (Web Log) Jurnal yang dapat diakses publik yang dikelola di web oleh
individu atau kelompok. Topik yang tercakup dalam blog
merupakan kewenangan utuh dari sang penulis dan sangat
bervariasi.
Buku Tahunan / Buku yang diterbitkan setiap tahun oleh sekolah, yang
Yearbook memberikan informasi tentang peristiwa dan pencapaian
tahun sebelumnya, berisi foto-foto siswa di tahun tersebut.
Kata Sandi / Kumpulan karakter atau string yang unik yang digunakan
Password oleh pengguna untuk memverifikasi identitas dirinya yang
tersimpan di dalam suatu sistem.
Keamanan Data dan keamanan data dan informasi yang berkaitan dengan
Informasi / Data penggunaan peranti digital, seperti ponsel pintar, PC, atau
and Information gawai lainnya yang juga merupakan sumber data. Peranti-
Security peranti tersebut biasanya terhubung dengan internet.
Keluaran / Output Hasil yang diperoleh dari suatu program yang berjalan
yang dikirimkan ke luar dari program, misalnya kepada
manusia atau program lainnya.
Pengurutan / Sorting Mengatur ulang urutan dari suatu informasi secara naik
atau turun dengan menggunakan suatu tombol sortkey.
Penyortiran berguna untuk mengidentifikasi dan
menghitung semua item dengan identifikasi yang sama,
untuk membandingkan dua file, dan untuk membantu
dalam pencarian, seperti yang digunakan dalam kamus
Saldo / Balance Selisih antara uang yang masuk dan yang keluar
SIM (Surat Izin bukti registrasi dan identifikasi yang diberikan oleh Polri
Mengemudi) / kepada seseorang yang telah memenuhi persyaratan
Driving License administrasi, sehat jasmani dan rohani, memahami
peraturan lalu lintas dan terampil mengemudikan
kendaraan bermotor.
Struktur Data / Data Cara tertentu dalam mengorganisasi data dalam komputer
Structure sehingga dapat digunakan secara efektif.
Tatakan Curah Ide / Sebuah format untuk digunakan hasil diskusi curah
Brainstorming pendapat.
Placemat
Vlog (Video Log) Sebuah blog yang dibuat dalam bentuk video.
PISA (The Program Studi yang dilakukan oleh organisasi kerjasama ekonomi
for International pembangunan dunia (OECD) di hampir 80 negara yang
Student menguji kinerja skolastik siswa berusia 15 tahun pada
Assessment) bidang matematika, sains, dan membaca.
E. DAFTAR PUSTAKA