Anda di halaman 1dari 176

Paket Unit Pembelajaran

PROGRAM PENGEMBANGAN KEPROFESIAN BERKELANJUTAN (PKB)


MELALUI PENINGKATAN KOMPETENSI PEMBELAJARAN (PKP)
BERBASIS ZONASI

MATA PELAJARAN INFORMATIKA


SEKOLAH MENENGAH PERTAMA
(SMP)

ALGORITMA DAN PEMROGRAMAN


Penulis:
NURUL HAYATI

Desainer Grafis dan Ilustrator:


TIM Desain Grafis

Copyright © 2019
Direktorat Pembinaan Guru Pendidikan Dasar
Direktorat Jenderal Guru dan Tenaga Kependidikan
Kementerian Pendidikan dan Kebudayaan

Hak Cipta Dilindungi Undang-Undang


Dilarang mengopi sebagian atau keseluruhan isi buku ini untuk kepentingan komersial tanpa
izin tertulis dari Kementerian Pendidikan dan Kebudayaan.
Paket Unit Pembelajaran
Algoritma dan Pemrograman

KATA SAMBUTAN

Assalamu’alaikum Warahmatullahi Wabarakatuh

Puji syukur kita panjatkan ke hadirat Allah SWT, Tuhan YME, karena atas izin
dan karunia-Nya Unit Pembelajaran Program Pengembangan Keprofesian
Berkelanjutan melalui Peningkatan Kompetensi Pembelajaran Berbasis
Zonasi ini dapat diselesaikan.

Program Pengembangan Keprofesian Berkelanjutan melalui Peningkatan


Kompetensi Pembelajaran Berbasis Zonasi merupakan salah satu upaya
Kementerian Pendidikan dan Kebudayaan melalui Direktorat Jenderal Guru
dan Tenaga Kependidikan (Ditjen GTK) untuk meningkatkan kualitas
pembelajaran dan meningkatkan kualitas lulusan. Program ini dikembangkan
mengikuti arah kebijakan Kemendikbud yang menekankan pada
pembelajaran berorientasi pada keterampilan berpikir tingkat tinggi atau
Higher Order Thinking Skills (HOTS). Keterampilan berpikir tingkat tinggi
adalah proses berpikir kompleks dalam menguraikan materi, membuat
kesimpulan, membangun representasi, menganalisis dan membangun
hubungan dengan melibatkan aktivitas mental yang paling dasar yang
sebaiknya dimiliki oleh seorang guru professional.

Guru profesional memegang peranan yang sangat penting dalam


menentukan prestasi peserta didik. Penelitian menunjukkan bahwa 30%
prestasi peserta didik ditentukan oleh faktor guru. Dengan demikian maka
guru harus senantiasa meng-update dirinya dengan melakukan
pengembangan keprofesian berkelanjutan. Jika program Pengembangan
Keprofesian Berkelanjutan (PKB) yang dikembangkan oleh Direktorat
Jenderal Guru dan Tenaga Kependidikan sebelumnya didasarkan pada hasil
Uji Kompetensi Guru, berfokus pada peningkatan kompetensi guru
khususnya kompetensi pedagogi dan profesional, maka Program
Peningkatan Kompetensi
iii
Pembelajaran Berbasis Zonasi lebih berfokus pada upaya memintarkan
peserta didik melalui pembelajaran berorientasi keterampilan berpikir
tingkat tinggi. Berbasis zonasi ini dilakukan mengingat luasnya wilayah
Indonesia. Zonasi diperlukan guna memperhatikan keseimbangan dan
keragaman mutu pendidikan di lingkungan terdekat, sehingga peningkatan
pendidikan dapat berjalan secara masif dan tepat sasaran.

Unit Pembelajaran yang sudah tersusun diharapkan dapat meningkatkan


pembelajaran. Unit Pembelajaran yang dikembangkan dikhususkan untuk
Pendidikan Dasar yang dalam hal ini akan melibatkan KKG SD dan MGMP
SMP. Kami ucapkan terima kasih dan penghargaan yang setinggi-tingginya
kepada seluruh tim penyusun yang berasal dari PPPPTK, LPMP, maupun
Perguruan Tinggi dan berbagai pihak yang telah bekerja keras dan
berkontribusi positif dalam mewujudkan penyelesaian Unit Pembelajaran ini.
Semoga Allah SWT senantiasa meridai upaya yang kita lakukan.

Wassalamu’alaikum Warahmatullahi Wabarakatuh

Jakarta, Mei 2019


Direktur Jenderal Guru dan Tenaga Kependidikan,

Dr. Supriano, M.Ed.


NIP. 196208161991031001

iv
Paket Unit Pembelajaran
Algoritma dan Pemrograman

KATA PENGANTAR

Assalamu’alaikum Warahmatullahi Wabarakatuh

Saya menyambut baik terbitnya Unit Pembelajaran Program Pengembangan


Keprofesian Berkelanjutan melalui Peningkatan Kompetensi Pembelajaran
Berbasis Zonasi. Unit Pembelajaran ini disusun berdasarkan analisis Standar
Kompetensi Lulusan, Kompetensi Inti dan Kompetensi Dasar, serta analisis
soal-soal Ujian Nasional maupun Ujian Sekolah Berstandar Nasional (USBN).
UN dan USBN merupakan bagian yang tidak dapat dipisahkan dari sistem
pendidikan nasional. UN adalah sistem evaluasi standar pendidikan dasar
dan menengah secara nasional dan persamaan mutu tingkat pendidikan
antar daerah yang dilakukan oleh Pusat Penilaian Pendidikan. Hasil
pengukuran capaian siswa berdasar UN ternyata selaras dengan capaian
PISA maupun TIMSS. Hasil UN tahun 2018 menunjukkan bahwa siswa-siswa
masih lemah dalam keterampilan berpikir tingkat tinggi (Higher Order
Thinking Skills) seperti menalar, menganalisis, dan mengevaluasi. Oleh
karena itu siswa harus dibiasakan dengan soal-soal dan pembelajaran yang
berorientasi kepada keterampilan berpikir tingkat tinggi (Higher Order
Thinking Skills) agar terdorong kemampuan berpikir kritisnya.

Kementerian Pendidikan dan Kebudayaan melalui Direktorat Jenderal Guru


dan Tenaga Kependidikan (Ditjen GTK) meningkatkan kualitas pembelajaran
yang bermuara pada peningkatan kualitas siswa melalui Program
Pengembangan Keprofesian Berkelanjutan melalui Peningkatan Kompetensi
Pembelajaran (PKP) Berbasis Zonasi. Program ini dikembangkan dengan
menekankan pembelajaran yang berorientasi pada Keterampilan Berpikir
Tingkat Tinggi atau Higher Order Thinking Skills (HOTS).

v
Untuk meningkatkan efisiensi, efektivitas, serta pemerataan mutu
pendidikan, maka pelaksanaan Program PKP mempertimbangkan
pendekatan kewilayahan, atau dikenal dengan istilah zonasi. Melalui langkah
ini, pengelolaan Pusat Kegiatan Guru (PKG) TK, kelompok kerja guru (KKG)
SD dan musyawarah guru mata pelajaran (MGMP) SMP yang selama ini
dilakukan melalui Gugus atau Rayon dalam zonasinya, dapat terintegrasi
melalui zonasi pengembangan dan pemberdayaan guru. Zonasi
memperhatikan keseimbangan dan keragaman mutu pendidikan di
lingkungan terdekat, seperti status akreditasi sekolah, nilai kompetensi guru,
capaian nilai rata-rata UN/USBN sekolah, atau pertimbangan mutu lainnya.

Semoga Unit Pembelajaran ini bisa menginspirasi guru untuk


mengembangkan materi dan melaksanakan pembelajaran dengan
berorientasi pada kemampuan berpikir tingkat tinggi. Semoga Allah SWT
senantiasa meridai upaya yang kita lakukan.

Wassalamu’alaikum Warahmatulahi Wabarakatuh

Direktur Pembinaan Guru Pendidikan Dasar,

Praptono

vi
Paket Unit Pembelajaran
Algoritma dan Pemrograman

DAFTAR ISI

Hal

KATA SAMBUTAN________________________________________________III
KATA PENGANTAR_______________________________________________V
DAFTAR ISI_____________________________________________________VII
UNIT PEMBELAJARAN 1 ALGORITMA________________________________9
UNIT PEMBELAJARAN 2 PEMROGRAMAN___________________________85
PENUTUP______________________________________________________151
DAFTAR PUSTAKA______________________________________________153

vii
Unit Pembelajaran
PROGRAM PENGEMBANGAN KEPROFESIAN BERKELANJUTAN (PKB)
MELALUI PENINGKATAN KOMPETENSI PEMBELAJARAN (PKP)
BERBASIS ZONASI

MATA PELAJARAN INFORMATIKA


SEKOLAH MENENGAH PERTAMA
(SMP)

ALGORITMA
Penulis:
NURUL HAYATI

Desainer Grafis dan Ilustrator:


TIM Desain Grafis

Copyright © 2019
Direktorat Pembinaan Guru Pendidikan Dasar
Direktorat Jenderal Guru dan Tenaga Kependidikan
Kementerian Pendidikan dan Kebudayaan

Hak Cipta Dilindungi Undang-Undang


Dilarang mengopi sebagian atau keseluruhan isi buku ini untuk kepentingan komersial tanpa
izin tertulis dari Kementerian Pendidikan dan Kebudayaan.
Unit Pembelajaran
ALGORITMA

DAFTAR ISI
Hal

DAFTAR ISI_____________________________________________________11
DAFTAR GAMBAR________________________________________________12
DAFTAR TABEL__________________________________________________13
PENGANTAR____________________________________________________15
KOMPETENSI DASAR_____________________________________________17
A. Kompetensi Dasar dan Target Kompetensi 17
B. Indikator Pencapaian Kompetensi 18
APLIKASI DI DUNIA NYATA________________________________________20
A. Games atau Permainan 20
BAHAN PEMBELAJARAN_________________________________________24
A. Aktivitas Pembelajaran 24
Aktivitas 1 Pemrograman Visual Scratch 2.0 (online editor) 24
Aktivitas 2 Pemrograman Visual Scratch 2.0 (offline editor) 32
B. Lembar Kerja Peserta Didik 38
Lembar Kerja 1 38
Lembar Kerja 2 40
C. Bahan Bacaan 42
1. Sejarah Algoritma dan Logika 42
2. Definisi Algoritma 43
3. Dasar Penyusunan Algoritma 44
4. Penulisan Algoritma 44
4 1. Kalimat Deskriptif 45
4 2. Flowchart (Diagram alur) 46
5. Ilustrasi Pemahaman Algoritma 47
6. Pemrograman Visual Scratch 2.0 50
6 1. Asal mula Scratch 50
6 2. Pencipta Scratch 50
6 3. Segment Pengguna Scratch 51
6 4. Cara Kerja Scratch 51

11
6.5. Bahasa 51
7. Komposisi Scratch 2.0 52
8. Antarmuka Scratch 2.0 52
9. Scratch Blocks 55
9.1. Gerakan (motion) 55
9.2. Tampilan (looks) 56
9.3. Suara(sounds) 57
9.4. Pena(pen) 59
9.5. Data 59
9.6. Kejadian (events) 60
9.7. Kontrol (control) 61
9.8. Sensor (sensing) 62
9.9. Operator (operator) 64
9.10. Blok Lainnya 64
10. Algoritma Scratch 65
Posisi Scratch 66
Arah Scratch 67

PENGEMBANGAN PENILAIAN______________________________________70
A. Pembahasan Soal-soal 70
B. Mengembangkan Soal HOTS 74
KESIMPULAN____________________________________________________78
UMPAN BALIK___________________________________________________80

DAFTAR GAMBAR
Hal

Gambar 1 Games anak Cut the rope 20


Gambar 2 Games Pac-Man 20
Gambar 3 Online editor Scratch 2.0 28
Gambar 4 Halaman menu tutorials 29
Gambar 5 Menu bergabung dengan Scratch 30

12
Unit Pembelajaran
ALGORITMA

Gambar 6 Kartu Scratch (Scratch cards) 31


Gambar 7 Tampilan Scratch 2 offline editor 35
Gambar 8 Tampilan Scratch 2 offline editor 36
Gambar 9 Tampilan menu Tips 37
Gambar 10 . Abu Ja’far Mohammed Ibn Musa Al-Khowarizmi 42
Gambar 11 . Alur mengupas kentang 48
Gambar 12 . Flowchart mengupas kentang 49
Gambar 13 . brand name Scratch 50
Gambar 14 . Scratch sprite 52
Gambar 15 . Scratch interface 53
Gambar 16 . Kategori Blocks 55
Gambar 17 posisi scratch 67
Gambar 18 arah scratch 68

DAFTAR TABEL
Hal

Tabel 1 Kompetensi Dasar dan Target Kompetensi 17


Tabel 2 Indikator Pencapaian Kompetensi 18
Tabel 3 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1
25
Tabel 4 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 2
32
Tabel 5 Simbol -simbol flowchart 46
Tabel 6 Blocks Gerakan (motion) 56
Tabel 7 Blocks Tampilan (looks) 57
Tabel 8 Blocks Suara (sound) 58
Tabel 9 Blocks Pena (pen) 59
Tabel 10 Blocks Pena (pen) 60
Tabel 11 Blocks Kejadian (events) 61

13
Tabel 12 Blocks Kontrol (control) 62
Tabel 13 Blocks Sensor (sensing) 63
Tabel 14 Blocks Operator (operator) 64
Tabel 15 Blocks Lainnya (more block) 65

14
Unit Pembelajaran
ALGORITMA

PENGANTAR
Berdasarkan Permendikbud RI Nomor 37 tahun 2018 tentang Perubahan
atas Permendikbud Nomor 24 tahun 2016 tentang KI-KD Pelajaran pada
Kurikulum 2013 pada Pendidikan Dasar dan Pendidikan Menengah. Dalam
permendikbud tersebut diatur kedudukan mata pelajaran informatika pada
jenjang SMP/MTsN, SMA/MAN dapat dilaksanakan melalui tatap muka. Mata
pelajaran informatika bukan merupakan mata pelajaran wajib bagi satuan
pendidikan jenjang SMP/MTsN/SMA/MAN akan tetapi dikondisikan pada
satuan pendidikan akan ketersediaan tenaga pengajar dan sarana pendukung
yang memungkinkan diajarkannya mata pelajaran informatika.

Oleh karena itu, subunit ini disusun sebagai salah satu alternatif sumber
bahan ajar bagi guru untuk memahami topik pemrograman. Melalui
pembahasan materi yang terdapat pada subunit ini, guru dapat memiliki
dasar pengetahuan untuk mengajarkan materi yang sama ke peserta
didiknya yang disesuaikan dengan indikator yang telah disusun, terutama
dalam memfasilitasi kemampuan bernalar peserta didik. Selain itu, materi ini
juga aplikatif untuk guru sendiri sehingga guru dapat menerapkannya dalam
kehidupan sehari- hari.

Agar memudahkan guru untuk mempelajari konten dan cara


mengajarkannya, di dalam unit ini dimuat komptensi dasar terkait Permen
No.37 Tahun 2018 yang memuat target kompetensi dan indikator
pencapaian kompetensi, bahan bacaan tentang aplikasi nyata pemrograman
di kehidupan sehari-hari, deskriptif alternatif aktivitas pembelajaran, lembar
kerja peserta didik yang dapat digunakan guru untuk memfasilitasi
pembelajaran, bahan bacaan yang dapat dipelajari oleh guru maupun peserta
didik dan pembahasan soal-soal terkait pemrograman dan pengembangan
soal HOTS.

Komponen-komponen di dalam subunit ini dikembangkan dengan tujuan


agar guru dapat dengan mudah memfasilitasi peserta didik untuk
memahami
15
program visual dari demo dan tutorial, memahami struktur algoritma di
lingkungan pemrograman visual Scratch 2.0 sekaligus mendorong peserta
didik mengasah dan meningkatkan kreatifitas mereka dalam belajar
matematika dan konsep komputer, logika dan algoritma, penalaran atau
berfikir komputasional, pemecahan masalah serta kemampuan
berkolaborasi. Model yang digunakan dalam aktivitas pembelajaran ini
adalah model Problem-based Learning (PBL) dengan sintaks orientasi peserta
didik pada masalah; mengorganisasikan peserta didik untuk belajar;
membimbing penyelidikan individu maupun kelompok;mengembangkan dan
menyajikan hasil karya, menganalisis dan mengevaluasi proses pemecahan
masalah.

Topik pemrograman pada bahan bacaan terdiri atas sejarah algoritma dan
logika; definisi algoritma; dasar penyusunan algoritma; penulisan
algoritma;Illustrasi pemahaman algoritma;pemrograman visual Scratch 2.0
dan algoritma Scratch.
16
Unit Pembelajaran
ALGORITMA

KOMPETENSI DASAR

A. Kompetensi Dasar dan Target Kompetensi

1. Subunit pembelajaran ini dikembangkan berdasarkan Kompetensi


Dasar (KD) kelas VII Mata Pelajaran Informatika Jenjang SMP
sebagaimana tertuang dalam Permendikbud No.37 Tahun 2018,
seperti terlihat pada tabel 1 berikut:
Tabel 1 Kompetensi Dasar dan Target Kompetensi
Kompetensi Dasar Target Kompetensi Dasar

3.3.1. Memahami program visual 3.3.1.1. Memahami program visual dari


dari demo dan tutorial. demo.

3.3.1.2. Memahami program visual dari


tutorial.

3.3.2. Mengenal cara kerja dan 3.3.2.1. Memahami cara kerja


objek- objek lingkungan lingkungan pemrograman
pemrograman visual visual yang dipakai.
yang dipakai.
3.3.2.2. Memahami objek-objek
lingkungan pemrograman
visual yang dipakai.

4.3.1. Meniru (menulis ulang) 4.3.1.1. Membuat sebuah program


sebuah program sederhana di lingkungan visual,
sederhana di lingkungan untuk berkenalan dengan
visual, untuk berkenalan lingkungan.
dengan lingkungan.

17
B. Indikator Pencapaian Kompetensi

1. Indikator Pencapaian Kompetensi (IPK) merupakan turunan dari


Kompetensi Dasar (KD) kelas VII Mata Pelajaran Informatika Jenjang
SMP seperti disajikan pada tabel 2 berikut:

Tabel 2 Indikator Pencapaian Kompetensi


IPK Pengetahuan IPK Keterampilan
Kelas VII
IPK Pendukung IPK Pendukung
3.3.1.1. Menjelaskan konsep algoritma. 4.3.1.1. Menggunakan objek kerja
3.3.1.2. Menjelaskan konsep program (interface) untuk membuat
visual. animasi bergerak sederhana
3.3.1.3. Mempelajari program visual di lingkungan program
Scratch 2.0. Scratch 2.0.
3.3.1.4. Mempelajari cara kerja
program visual Scratch 2.0.
3.3.1.5. Mempelajari objek kerja
(interface) di program Scratch
2.0.
IPK Kunci IPK Kunci
3.3.2.1. Memahami program 4.3.1.2. Menerapkan cara kerja
visual dari demo. untuk membuat animasi
3.3.2.2. Memahami program bergerak sederhana di
visual dari tutorial. program visual Scratch 2.0.
3.3.2.3. Memahami cara kerja 4.3.1.3. Menerapkan penggunaan
pemrograman visual Scratch objek-objek di lingkungan
2.0. visual Scratch 2.0.
3.3.2.4. Memahami objek- objek
lingkungan pemrograman
visual Scratch 2.0.

18
Unit Pembelajaran
ALGORITMA

3.3.2.5. Memahami struktur algoritma


di lingkungan pemrograman
visual Scratch 2.0.
IPK Pengayaan IPK Pengayaan
3.3.2.6. Menerapkan konsep 4.3.1.4. Membuat program animasi
algoritma dalam membuat bergerak dengan
program menggunakan menggunakan algoritma di
program visual Scratch 2.0. pemrograman visual Scratch
2.0.

19
APLIKASI DI DUNIA NYATA

A. Games atau Permainan

Tentunya kalian tidak asing dengan salah satu permainan/Games seperti


gambar dibawah ini.

Gambar 1 Games anak Cut the rope


Sumber: http://blog.evercoss.com/2017/04/kumpulan- Game-android-anak-anak.html/

Gambar 2 Games Pac-Man


Sumber: https://play.google.com/store/apps/

20
Unit Pembelajaran
ALGORITMA

Ya, Game adalah permainan yang menggunakan media elektronik,


merupakan sebuah hiburan berbentuk multimedia yang dibuat semenarik
mungkin agar pemain bisa mendapatkan sesuatu atau kepuasan batin.
Tentunya kalian suka bermain Game karena bentuk multimedia dan alur
permainannya yang menyenangkan.

Tapi apakah kalian tahu bagaimana dalam membuat suatu Game atau
permainan yang dapat kita mainkan di gadget ?. Apakah kalian tahu bahwa
dalam membuat suatu Game atau permainan diperlukan suatu algoritma ?,
Kira-kira dalam membuat Game atau permainan dibagian manakah algoritma
itu diperlukan?.

Game komputer yang dapat kita mainkan adalah salah satu bentuk
pemrograman visual yang menggunakan desain antar muka (grapihcs) untuk
menarik para penggunanya. Untuk itu dalam membuat suatu Game
diperlukan suatu alur yang nyata (logis) yang disusun secara sistematis agar
Game atau permainan yang dibuat dapat dimengerti oleh akal atau pikiran
manusia dan manusia sebagai penggunanya dapat menentukan Game yang
dimainkan salah atau benar.

Dalam proses memainkan suatu permainan kita menyadari terdapat


prosedur atau urutan langkah-langkah untuk melakukan aktivitas tersebut.
Prosedur atau langkah-langkah itu menyatakan semacam algoritma.
Prosedur atau langkah-langkah itu merupakan suatu urutan yang memandu
orang untuk melakukan suatu proses.

Agar lebih memudahkan kita tentang algoritma, mari kita lihat dari contoh
permainan Cut the rope. Cut the rope adalah seri permainan fisika berbasis
permainan video teka-teki yang dikembangkan oleh ZeptoLab untuk
beberapa platform dan perangkat gadget. Dalam permainan ini tokoh
animasinya adalah Om Nom (si katak berwarna hijau), seperti nama Game-
nya , dalam permainan ini pemain (players) perlu memotong tali yang
terdapat permen yang terikat
21
dan kita harus membantu Om Nom agar permen tersebut dapat tepat jatuh
atau masuk kedalam mulutnya untuk dimakan. Sehingga kita harus
memperhatikan arah atau ayunan tali sebelum memotong agar tepat sasaran.

Nah, algoritma atau urutan langkah-langkah untuk memainkan permainan ini


ditulis sebagai berikut:

1. Mulai
2. Permen menggantung oleh satu atau beberapa tali.
3. Pemain harus memotong tali-tali memperhatikan arah ayunan tali.
4. Jika arah ayunan tepat;
5. Kemudian potong;
6. Selain itu gagal;
7. Jika permen tidak dimakan laba-laba atau duri;
8. maka gagal;
9. Kemudian permen masuk kedalam mulut Om Nom;
10. Hitung jumlah bintang yang terkumpul;
11. Jika jumlah waktu penyelesaian cepat;
12. Maka mendapat point;
13. Berhasil ke level selanjutnya;
14. Berhenti.

22
Unit Pembelajaran
ALGORITMA

Gambar 3 Games anak Cut the rope


Sumber: http://blog.evercoss.com/2017/04/kumpulan-Game-android-anak-anak.html/

Apa yang kalian fikirkan ketika melihat alur atau langkah-langkah dalam
permainan Cut the rope diatas ?. Pastinya langkah-langkah diatas dapat
dimengerti oleh logika kalian untuk bagaimana memainkan permainan
tersebut. Langkah-langkah instruksi dalam menyelesaikan suatu permainan
seperti cut the rope diatas disebut algoritma. Di dalam dunia komputer,
programmer menulis algoritma diatas sebagai instruksi kepada komputer
untuk menjalankan setiap langkah-langkah diatas.

Jadi, bagaimana menurut kamu tentang “algoritma”?. Ya, memang kata


“algoritma” terlihat susah atau terdengar terlalu matematis. Tetapi
sebenarnya konsep algoritma itu sebenarnya sangat mudah dan dapat
ditemui dalam kehidupan sehari-hari kita lainnya. Nah, jika kalian telah
mengerti, coba kalian tuliskan bagaimana algoritma dalam permainan pac-
man?
23
BAHAN PEMBELAJARAN

A. Aktivitas Pembelajaran

Proses belajar mengajar merupakan proses interaksi antara guru dengan

peserta didik, didalamnya banyak kegiatan atau aktivitas yang dilakukan.


yang disampaikan
diharuskan mampudengan variasi jenis aktivitas
memanfaatkan beragambelajar yang yang
aktivitas sesuai dengan
gaya belajardalam
dilakukan masing-masing.
pembelajaran agar mampu dengan mudah
materi yang disampaikan dan siswa juga dengan mudah memahami
Aktivitas belajar melibatkan indera-indera atau sensor dan alat yang
meliputi indera penglihatan (visual), pendengaran (listening), berbicara (oral),
manusia untuk melakukan sesuatu. Indera-indera tersebut antara
seluruh aktivitas fisik lain serta mental dan emosi.

Aktivitas pembelajaran pada kegiatan pembelajaran Algoritma ini


Langkah-langkah pembelajaran dalam aktivitas ini menggunakan
sebagai contoh pengembangan pembelajaran yang mengintegrasikan
pembelajaran
konsep berbasis
berdasarkan problem based
permasalahan). learning (peserta
Langkah-langkah didik
pembelajaran dalam

kegiatan ini juga dirancang dengan mengintegrasikan penguatan karakter


literasi.

Aktivitas 1 Pemrograman Visual Scratch 2.0 (online editor)

Aktivitas 1 dilakukan untuk pembelajaran memahami program visual dan


mengenal cara kerja algoritma dan objek-objek di lingkungan pemrograman
visual Scratch 2.0 menggunakan proses kerja secara online (online editor).
Aktivitas pembelajarannya dilakukan dengan menggunakan model Problem-

24
Unit Pembelajaran
ALGORITMA

based Learning (PBL). Adapun langkah-langkah pembelajarannya,


sebagaimana disajikan pada Tabel 3 berikut:

Tabel 3 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1


Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu

Orientasi peserta 1. Mengkondisikan dan 1.1. Bersiap untuk mengikuti “disesuaikan”


didik pada masalah memastikan kesiapan peserta aktivitas pembelajaran.
untuk mengikuti aktivitas 1.2. Peserta didik berdoa dan
pembelajaran; lanjut menyanyikan salah
2. Guru mengajak peserta didik satu lagu wajib nasional.
berdoa dilanjutkan dengan 1.3. Peserta didik menonton dan
menyanyikan salah satu lagu mengamati tutorial yang
wajib nasional; ditayangkan.
3. Guru menayangkan tutorial 1.4. Peserta didik
pemrograman visual (Scratch memperhatikan dan
2.0) pada online editor mengamati demo yang
berdasarkan Instruksi aktivitas dijelaskan oleh guru tentang
1 untuk guru (terlampir); tutorial yang telah
4. Guru menjelaskan dan men- ditayangkan.
demo-kan kembali tentang 1.5. Peserta didik membentuk
pemrograman visual Scratch kelompok sesuai arahan
2.0 pada online editor seperti guru.
tutorial yang telah ditayangkan; 1.6. Peserta didik
5. Guru menugaskan siswa agar menyelesaikan
membentuk kelompok permasalahan berdasarkan
sebanyak 4-6 kelompok; pertanyaan yang diberikan
6. Guru menyampaikan tugas dengan cara berdiskusi
yang akan diselesaikan peserta
didik melalui diskusi kelompok,
yakni:
a. Bacalah petunjuk kerja
pada lembar kerja 1 yang
telah dibagikan;

25
b. Ikutilah dan selesaikanlah
masalah yang pada
petunjuk kerja;
c. Diskusikan dengan
kelompokmu;
d. Tuliskan hasil diskusi
kelompok pada kertas
plano dalam format lembar
kerja 1 yang ada;
e. Paparkan/presentasikan
hasil diskusi setiap
kelompok di depan kelas.
Mengorganisasikan 1. Guru memastikan setiap 2.1. Peserta didik berdiskusi dan “disesuaikan”
peserta didik untuk peserta didik/anggota membagi tugas untuk
belajar kelompok memahami menyelesaikan persoalan
tugas masing-masing berdasarkan instruksi yang
kelompok yang harus diberikan.
diselesaikan; 2.2. Peserta didik bertanya
2. Guru memberikan kepada guru tentang
kesempatan kepada tentang hal yang belum
peserta didik untuk dipahami peserta didik
bertanya; terkait instruksi yang
3. Guru membagikan bahan diberikan.
bacaan terkait aktivitas 2.3. Masing-masing kelompok
yang telah disiapkan membaca bahan bacaan
kepada peserta didik. yang telah disiapkan.

Membimbing 1. Guru memantau 3.1. Peserta didik/anggota “disesuaikan”


penyelidikan keterlibatan peserta didik kelompok melakukan
individu maupun dalam mengumpulkan dan pengumpulan data
kelompok mengolah informasi yang untuk bahan diskusi dan
ditemukannya; menyelesaikan masalah.
2. Guru memantau dan 3.2. Peserta didik/anggota
mendampingi kelompok kelompok membaca
dalam memahami bahan dan memahami bahan
bacaan yang ada; bacaan.

26
Unit Pembelajaran
ALGORITMA

3. Memotivasi peserta didik 3.3. Pesera didik/anggota


(kelompok) untuk berfikir kelompok berfikir logis
logis dan mencari solusi dan mencari solusi
dalam menyelesaikan dalam menyelesaikann
persoalan. persoalan suai
instruksi.
Mengembangkan 1. Guru memantau diskusi dan 4.1. Kelompok melakukan “disesuaikan”
dan menyajikan membimbing pembuatan diskusi untuk
hasil karya laporan sehingga karya menghasilkan solusi
setiap kelompok siap untuk pemecahan masalah.
dipresentasikan; 4.2. Peserta didik/ anggota
2. Mengarahkan untuk bisa kelompok mem-
menghargai pendapat presentasikan/menyajikan
teman/kelompok lain ketika hasil diskusi dalam bentuk
menyampaikan/memaparkan karya.
hasil diskusi.
Menganalisis dan 1. Guru membimbing 5.1. Setiap kelompok “disesuaikan”
mengevaluasi presentasi; melakukan presentasi.
proses pemecahan 2. Guru mendorong kelompok 5.2. Kelompok yang lain
masalah memberikan penghargaan memberikan apresiasi.
serta masukan kepada 5.3. Bersama-sama guru
kelompok lain; merangkum/membuat
3. Guru bersama peserta didik kesimpulan sesuai
menyimpulkan materi. dengan masukan yang
diperoleh kelompok lain.

27
PETUNJUK AKTIVITAS 1 (UNTUK GURU)

Pemrograman Visual Scratch 2.0 (online editor)

1. Guru memahami dan mempelajari pengenalan pemrograman


visual Scratch 2.0 berdasarkan tutorial melalui link
https://Scratch.mit.edu/projects/editor/?tutorial=getStarted
ketika membuka link diatas maka tampilan yang muncul seperti
gambar 3 dibawah ini:

Gambar 4 Online editor Scratch 2.0


Sumber: https://Scratch.mit.edu/projects/editor/?tutorial=getStarted

2. Guru bisa mempelajari tutorial dasar pemrograman Scratch 2.0


melalui video pada no.1 yang ditunjukkan pada gambar 3 diatas atau
mempelajari tutorial pemrograman Scratch 2.0 melalui menu
tutorials seperti no.2 yang ditunjukkan pada gambar 3 diatas. Jika
guru memilih menu tutorials (no,2) tampilan sebagai berikut:

28
Unit Pembelajaran
ALGORITMA

Gambar 5 Halaman menu tutorials


Sumber: https://Scratch.mit.edu/projects/editor/?tutorial=getStarted

Pada halaman tutorials disajikan berbagai tutorial dalam mempelajari


pemrograman Scratch 2.0 dalam membuat animasi, seni (art), musik,
permainan (Games) dan sebuah cerita (stories) untuk pembelajaran
selanjutnya dan lebih lanjut.
3. Sebagai perkenalan terhadap pemrograman visual Scratch 2.0 guru
menayangkan tutorial pada no.1 seperti yang ditunjukan pada gambar 3
atau pada no.2 yaitu getting started seperti yang ditunjukkan pada gambar 4.
4. Guru diminta untuk men-demo-kan kembali tentang pemrograman visual
Scratch 2.0 secara online dengan menjelaskan:
a. objek-objek kerja di lingkungan pemrograman Scratch (dapat dibaca
pada bagian Bahan Bacaan);
b. pembentukan algoritma atau langkah-langkah kerja pada pemrograman
visual Scratch 2.0; dan
c. meniru kembali pembuatan program visual seprti yang ditampilkan di
video tutorial.

29
5. Agar peserta didik dapat membuat, menyimpan dan membagikan file hasil
kerjanya secara online pada pemrograman Scratch 2.0. Guru diminta men-
demo-kan cara membuat akun pada menu bergabung dengan Scratch (join
Scratch) yang ditunjukkan pada gambar 5 dibawah ini:

Gambar 6 Menu bergabung dengan Scratch


Sumber: https://Scratch.mit.edu/projects/editor/?tutorial=getStarted

Ikuti setiap langkah pembuatannya, kemudian masuk (sign in) dengan nama akun
yang telah dibuat.

Gambar 7 Menu sig-in di Scratch


Sumber: https://Scratch.mit.edu/projects/editor/?tutorial=getStarted

30
Unit Pembelajaran
ALGORITMA

6. Guru dapat mengunduh kartu belajar Scratch melalui


https://resources.Scratch.mit.edu/www/cards/en/Scratch-cards-all.pdf. Guru dapat
menggunakan Scratch_card sebagai bahan aktivitas kepada peserta didik dalam
memahami lebih lanjut pembuatan program visual dan objek-objek kerja di Scratch 2.0
online editor.

Gambar 8 Kartu Scratch (Scratch cards)


Sumber: https://resources.Scratch.mit.edu/www/cards/en/Scratch-cards-all.pdf.

31
Aktivitas 2 Pemrograman Visual Scratch 2.0 (offline editor)

Aktivitas 2 dilakukan untuk pembelajaran memahami program visual dan


mengenal cara kerja algoritma dan objek-objek di lingkungan pemrograman
visual Scratch 2.0 menggunakan proses kerja secara offline dengan
menggunakan (offline editor). Aktivitas pembelajarannya dilakukan dengan
menggunakan model Problem-based Learning (PBL). Adapun langkah-
langkah pembelajarannya, sebagaimana disajikan pada Tabel 4 berikut:

Tabel 4 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 2

Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi


Waktu

Orientasi peserta 1. Mengkondisikan dan memastikan 1.1. Bersiap untuk mengikuti “disesuaikan”
didik pada masalah kesiapan peserta untuk mengikuti aktivitas pembelajaran.
aktivitas pembelajaran; 1.2. Peserta didik berdoa dan
2. Guru mengajak peserta didik berdoa lanjut menyanyikan salah
dilanjutkan dengan menyanyikan satu lagu wajib nasional.
salah satu lagu wajib nasional; 1.3. Peserta didik melihat dan
3. Guru menjelaskan dan men-demo- mengamati demo yang
kan pemrograman visual (Scratch ditayangkan.
2.0) melalui menu tips di offline 1.4. Peserta didik membentuk
editor berdasarkan Instruksi aktivitas kelompok sesuai arahan
2 untuk guru (terlampir); guru.
4. Guru menugaskan siswa agar 1.5. Peserta didik
membentuk kelompok sebanyak 4-6 menyelesaikan
kelompok; permasalahan
5. Guru menyampaikan tugas yang akan berdasarkan pertanyaan
diselesaikan peserta didik melalui yang diberikan dengan
diskusi kelompok, yakni: cara berdiskusi.
a. Bacalah petunjuk kerja pada
lembar kerja 2 yang telah
dibagikan;

32
Unit Pembelajaran
ALGORITMA

b. Ikutilah dan selesaikanlah


masalah yang pada petunjuk
kerja;
c. Diskusikan dengan kelompokmu;
d. Tuliskan hasil diskusi kelompok
pada kertas plano dalam format
lembar kerja 2 yang ada;
e. Paparkan/presentasikan hasil
diskusi setiap kelompok di depan
kelas.
Mengorganisasikan 1. Guru memastikan setiap peserta 2.1. Peserta didik berdiskusi “disesuaikan”
peserta didik didik/anggota kelompok dan membagi tugas untuk
untuk belajar memahami tugas masing-masing menyelesaikan persoalan
kelompok yang harus berdasarkan instruksi
diselesaikan; yang diberikan.
2. Guru memberikan kesempatan 2.2. Peserta didik bertanya
kepada peserta didik untuk kepada guru tentang
bertanya; tentang hal yang belum
3. Guru membagikan bahan bacaan dipahami peserta didik
terkait aktivitas yang telah terkait instruksi yang
disiapkan kepada peserta didik. diberikan.
2.3. Masing-masing kelompok
membaca bahan bacaan
yang telah disiapkan.

Membimbing 1. Guru memantau keterlibatan 3.1. Peserta didik/anggota “disesuaikan”


penyelidikan peserta didik dalam mengumpulkan kelompok melakukan
individu maupun dan mengolah informasi yang pengumpulan data
kelompok ditemukannya; untuk bahan diskusi
2. Guru memantau dan mendampingi dan menyelesaikan
kelompok dalam memahami bahan masalah.
bacaan yang ada; 3.2. Peserta didik/anggota
3. Memotivasi peserta didik kelompok membaca
(kelompok) untuk berfikir logis dan dan memahami bahan
mencari solusi dalam bacaan.
menyelesaikan
persoalan.

33
3.3. Pesera didik/anggota
kelompok berfikir logis
dan mencari solusi
dalam menyelesaikann
persoalan suai
instruksi.

Mengembangkan 3. Guru memantau diskusi dan 4.1. Kelompok melakukan “disesuaikan”


dan menyajikan membimbing pembuatan laporan diskusi untuk
hasil karya sehingga karya setiap kelompok siap menghasilkan solusi
untuk dipresentasikan; pemecahan masalah.
4. Mengarahkan untuk bisa
menghargai pendapat 4.2. Peserta didik/ anggota
teman/kelompok lain ketika kelompok mem-
menyampaikan/mempresentasikan presentasikan/menyajikan
hasil diskusi. hasil diskusi dalam bentuk
karya.

Menganalisis dan 1. Guru membimbing presentasi; 5.1. Setiap kelompok “disesuaikan”


mengevaluasi 2. Guru mendorong kelompok melakukan presentasi.
proses pemecahan memberikan penghargaan serta 5.2. Kelompok yang lain
masalah masukan kepada kelompok lain; memberikan apresiasi.
3. Guru bersama peserta didik 5.3. Bersama-sama guru
menyimpulkan materi. merangkum/membuat
kesimpulan sesuai
dengan masukan yang
diperoleh kelompok lain.

34
Unit Pembelajaran
ALGORITMA

PETUNJUK AKTIVITAS 1 (UNTUK GURU)

Pemrograman Visual Scratch 2.0 (offline editor)

1. Guru mengunduh master Scratch 2.0 offline editor melalui link


https://Scratch.mit.edu/download/Scratch2;
2. Pasang atau install master Scratch 2.0 offline editor pada komputer dan di
setiap komputer yang akan dipakai peserta didik untuk aktivitas
pembelajaran;
3. Jalankan Scratch 2.0 offline editor, akan muncul tampilan Scratch 2.0 offline
editor seperti gambar dibawah ini:

Gambar 9 Tampilan Scratch 2 offline editor


Sumber: Scratch 2.0 offline editor

4. Guru mempelajari dan men-demo-kan berdasarkan tutorial bahasa


pemrograman visual Scratch 2.0 offline editor pada menu Tips (no.1)
atau no.2 seperti yang ditunjukkan pada gambar dibawah ini:

35
Gambar 10 Tampilan Scratch 2 offline editor
Sumber: Scratch 2.0 offline editor
5. Guru diminta untuk men-demo-kan kembali tentang pemrograman visual
pada Scratch 2.0 offline editor dengan menjelaskan:
a. objek-objek kerja di lingkungan pemrograman Scratch pada menu Tips.
Pada menu Tips terdapat tutorial tentang: Step by step (langkah-
langkah) kerja membuat project animasi; How To menjelaskan lebih
spesifik cara kerja atau obejek-objek kerja di Scrath 2.0 offline editor dan
Blocks menjelaskan lebih terperinci tentang penggunaan bagian-bagian
kerja yang terdapat pada bagian menu skrip, kostum dan Suara.
b. pembentukan algoritma atau langkah-langkah kerja pada pemrograman
visual Scratch 2.0; dan
c. meniru kembali pembuatan program visual seperti yang ditampilkan di
tutorial.

36
Unit Pembelajaran
ALGORITMA

Gambar 11 Tampilan menu Tips


Sumber: Scratch 2.0 offline editor
6. Guru dapat menggunakan Scratch_card yang telah diunduh sebagai bahan
aktivitas kepada peserta didik dalam memahami lebih lanjut pembuatan
program visual dan objek-objek kerja di Scratch 2.0 online editor.

Gambar 12 Scratch Card


Sumber: https://scratch.mit.edu

37
B. Lembar Kerja Peserta Didik

Lembar Kerja 1

Judul : Lembar Kerja 1


Tujuan : Peserta didik dapat:
 Memahami bahasa pemrograman visual Scratch 2.0
(online editor);
 Memahami cara kerja pemrograman visual Scratch
melalui online editor ;
 Memahami objek-objek kerja di pemrograman visual
Scratch 2.0 (online editor);
 Memahami konsep algoritma pada pemrograman visual
Scratch 2.0 (online editor)
Mata Pelajaran : Informatika
Petunjuk kerja :
1. Amatilah dan pahami tutorial dan demo pemrograman Scratch
2.0 yang ditampilkan;
2. Cobalah dan tirulah cara membuat program menggunakan
bahasa pemrograman visual Scratch 2.0 melalui online editor
berdasarkan tutorial dan demo yang telah ditampilkan dan
dijelaskan oleh gurumu;
3. Simpanlah hasil kerja percobaan dengan judul:
demo1_namakelompok,
misal: demo1_kel_01 atau demo1_kel_A;
4. Diskusikan dengan kelompokmu dan jawablah pertanyaan
nomor a dan b pada kolom format lembar kerja yang telah
disediakan!

38
Unit Pembelajaran
ALGORITMA

Format Lembar Kerja:

Jawaban berdasarkan hasil


Soal
diskusi
a. Jelaskanlah bagaimana cara
kerja dan objek-objek kerja di
program Scratch 2.0 pada
online editor ! .

b. Tuliskan langkah-langkah
instruksi atau algoritma yang
dilakukan dalam membuat
suatu program di Scratch 2.0
(online editor) seperti yang
telah didemokan
menggunakan bahasa natural
!.

39
Lembar Kerja 2

Judul : Lembar Kerja 2


Tujuan : Peserta didik dapat:
 Memahami bahasa pemrograman visual Scratch 2.0
(offline editor);
 Memahami cara kerja pemrograman visual Scratch
melalui offline editor;
 Memahami objek-objek kerja di pemrograman visual
Scratch 2.0 (offline editor);
 Memahami konsep algoritma pada pemrograman visual
Scratch 2.0 (offline editor)
Mata Pelajaran : Informatika
Petunjuk kerja :
1. Amatilah dan pahami demo pemrograman Scratch 2.0 pada
offline editor;
2. Cobalah dan tirulah cara pemrograman Scratch 2.0 berdasarkan
tutorial dan demo pada offline editor;
3. Simpanlah hasil kerja percobaan atau pe-niru-an dengan judul :
demo1_namakelompok,
misal: demo1_kel_01 atau demo1_kel_A;
4. Diskusikan dengan kelompokmu dan jawablah pertanyaan nomor
a, b dan c pada kolom format lembar kerja yang telah disediakan!.

Format Lembar Kerja:

Jawaban berdasarkan hasil


Soal
diskusi
a. Bagaimana cara kerja dan objek-
objek kerja di program Scratch
2.0 (offline editor)?.

40
Unit Pembelajaran
ALGORITMA

b. Bagaimana algoritma atau


langkah-langkah yang dilakukan
dalam membuat suatu program
menggunakan Scratch 2.0
(offline editor) seperti yang
telah didemokan?.

c. Apa perbedaan bahasa


pemrograman visual Scratch 2.0
pada online dan offline editor?.

41
C. Bahan Bacaan

1. Sejarah Algoritma dan Logika

Asal kata algoritma sendiri berasal dari nama Abu Ja’far Mohammed
Ibn Musa Al-Khowarizmi, ilmuan persia yang menulis buku berjudul
“Al Jabr W’ Al-Muqabala” (Rules of Restoration and Reduction) yang
diterbitkan pada tahun 825 M. Kata AL Khuwarizmi dibaca orang
barat menjadi Algorism yang kemudian lambat laun menjadi
algorithm. Algorithm diserap dalam Bahasa Indonesia menjadi
Algoritma.

2. Logika berasal dari bahasa Yunani yaitu LOGOS yang berarti ilmu.
Logika dapat diartikan ilmu yang mengajarkan cara berpikir untuk
melakukan kegiatan dengan tujuan tertentu.

Gambar 13 . Abu Ja’far Mohammed Ibn Musa Al-Khowarizmi


Sumber: https://jwsablog.wordpress.com/2017/09/17/biografi-abu-jafar-muhammad-bin-musa-
al-khawarizmi/

42
Unit Pembelajaran
ALGORITMA

2. Definisi Algoritma

Menurut Kamus Besar Bahasa Indonesia, algoritma adalah urutan


logis pengambilan keputusan untuk pemecahan masalah.

Algoritma dapat juga diartikan urutan penyelesaian masalah yang


disusun secara sistematis menggunakan bahasa yang logis untuk
memecahkan suatu permasalahan.

Dalam Ilmu komputer algoritma adalah suatu set instruksi atau


formula yang berisi langkah-langkah untuk pemecahan masalah (problem
solving).

Pengertian algoritma sangat lekat dengan kata logika, yaitu


kemampuan manusia untuk berfikir dengan akal tentang suatu
permasalahan, menghasilkan sebuah kebenaran, dibuktikan dan dapat
diterima akal. Logika sering dihubungkan dengan kecerdasan manusia.
Seorang manusia yang mampu berlogika dengan baik biasanya disebut
sebagai pribadi yang cerdas. Dalam menyelesaikan suatu masalahpun logika
mutlak diperlukan.

Dari penjelasan diatas dapat disimpulkan bahwa

Algoritma adalah ilmu yang mempelajari cara penyelesaian suatu masalah


berdasarkan urutan langkah-langkah yang disusun secara sistematis dan
menggunakan bahasa yang logis dalam memecahkan suatu masalah.
43
Tujuan dari belajar logika dan algoritma adalah agar dapat
membiasakan diri melakukan suatu perencanaan apabila menyelesaikan
suatu masalah. Permasalahan yang diselesaikan dengan suatu
perencanaan yang matang maka akan mendapatkan solusi yang lebih
optimal dibandingkan menyelesaikan masalah tanpa menggunakan suatu
perencanaan.

3. Dasar Penyusunan Algoritma

Ciri -ciri

Ada lima ciri penting yang perlu diperhatikan dalam menyusun


algoritma, yaitu:
1. Algoritma mempunyai awal dan akhir.
2. Memiliki instruksi yang jelas atau tidak ambigu yaitu setiap langkah
harus didefinisikan dengan tepat sehingga tidak memiliki makna
ganda.
3. Memiliki masukan (input) atau kondisi awal.
4. Memiliki keluaran (output) atau kondisi akhir.
5. Algoritma harus efektif (setiap langkah harus sederhana dalam waktu
yang tidak terlalu panjang).

4. Penulisan Algoritma

Dalam penulisan algoritma tidak ada aturan baku terkait


penulisan, yang penting mudah dibaca dan dipahami. Meskipun begitu,
untuk menghindari kekeliruan terhadap notasi algoritma, notasi yang
sering digunakan dalam menuliskan algoritma yaitu:
1. Kalimat deskriptif
2. Flowchart (diagram alur)

44
Unit Pembelajaran
ALGORITMA

4.1. Kalimat Deskriptif

Notasi penulisan algoritma menggunakan bahasa deskriptif


dilakukan dengan menuliskan instruksi-instruksi yang harus
dilaksanakan dalam bentuk kalimat deskriptif dengan menggunakan
bahasa natural atau sehari-hari.

Tidak ada aturan baku dalam penulisan notasi deskriptif sehingga


setiap orang dapat menuliskan aturan algoritmanya sendiri.

Notasi penulisan algoritma menggunakan bahasa deskriptif memiliki


kelebihan dan kekurangan dalam penggunaannya, yaitu:

KELEBIHAN
 Cocok untuk menuliskan algoritma yang pendek.
 Tidak ada aturan baku.
 Menggunakan bahasa natural atau sehari-hari.

KEKURANGAN
 Sulit diterjemahkan dalam bahasa pemrograman atau coding.
 Kurang efektif.

45
4.2. Flowchart (Diagram alur)

Penulisan algoritma dengan menggunakan flowchart adalah cara


penulisan algoritma dengan menggunakan notasi grafis.

Flowchart merupakan diagram atau bagan alur yang memperlihatkan


urutan dan langkah-langkah suatu program dan hubungan antar proses
beserta pernyataannya.
Di dalam diagram terdapat simbol-simbol yang mempunyai makna.
Simbol-simbol flowchart yang biasa dipakai adalah simbol-simbol
flowchart standar yang dikeluarkan oleh ANSI dan ISO. Simbol
flowchart dapat dilihat pada tabel 5 dibawah ini.

Tabel 5 Simbol -simbol flowchart

46
Unit Pembelajaran
ALGORITMA

Notasi penulisan algoritma menggunakan flowchart juga memiliki kelebihan


dan kekurangan dalam penggunaannya, yaitu:

KELEBIHAN
 Mudah digunakan dan dipahami dalam melakukan pengecekkan
bagian-bagian yang terlupakan dalam analisis masalah.

KEKURANGAN
 Kurang efektif untuk penulisan algoritma yang panjang karena
akan menghabiskan banyak tempat.

5. Ilustrasi Pemahaman Algoritma

Nah, setelah kita membaca dan memahami sejarah, definisi, dasar


penyusunan dan penulisan algoritma. Agar kalian lebih memahami lagi
tentang algoritma dan jika kalian masih binggung bagaimana konsep
algoritma itu, maka pada bagian ini kita akan melihat contoh ilustrasi dari
sebuah masalah dan cara penyelesaiannya menggunakan algoritma.
Contoh Ilustrasi yang digunakan adalah dalam menganalisa sebuah
masalah atau persoalan dalam mengupas kentang. Kita harus menganalisa
atau membuat kebutuhan yang diperlukan untuk menyelesaikan persoalan
dalam mengupas kentang. Secara sederhana analisa keperluan tersebut
dijelaskan sebagai berikut:
 Masalah/Persoalan: Mengupas Kentang
 Bila ingin makan kentang, tentunya kita perlu memiliki kentang
terlebih dahulu;

47
 Jika belum ada, maka beli kentang dahulu;
 Jika kentang sudah ada, maka kentang perlu dikupas;
 Setelah dikupas, kita harus memilih proses masak kentang,
apakah kita mau menggoreng kentang, merebus kentang atau
membuat sup.
Jika digambarkan berdasarkan alur logika diatas sebagai berikut:

Gambar 14 . Alur mengupas kentang

Nah, selanjutnya kita dapat menulis algoritma atau instruksi langkah-langkah


dalam menyelesaikan permasalahan mengupas kentang dalam penulisan
algoritma dengan menerapkan dasar penyusunan algoritma.

48
Unit Pembelajaran
ALGORITMA

1. Algoritma kalimat Deskriptif menggunakan bahasa natural

a. Mulai;
b. Periksa ketersediaan kentang;
c. Jika belum ada, maka beli kentang;
d. Jika sudah ada, maka kentang dikupas;
e. Kentang dikupas;
f. Tentukan proses memasak kentang;
g. Jika digoreng, maka goreng kentang;
h. Jika direbus, maka rebus kentang;
i. Jika dibuat sup, maka proses masak sup;
j. Proses measak kentang yang dipilih;
k. Selesai.

2. Algoritma Penulisan Flowchart (diagram alur)


Kita dapat membuat flowchart dengan menggunakan sombol-simbol
standar diagram alur seperti yang telah dijelaskan pada materi
sebelumnya.

Gambar 15 . Flowchart mengupas kentang

49
6. Pemrograman Visual Scratch 2.0

Scratch adalah Bahasa pemrograman visual atau grafis Open Source yang
dapat digunakan secara gratis. Hanya dengan drag and drop kita dapat
membuat animasi, games, musik atau cerita interaktif. Hasil kreasi yang
dibuat dapat di- unggah (upload) ke Internet.

6.1. Asal mula Scratch

Scratch adalah sebutan untuk cara kreatif seorang Disk Jockey (DJ)
dalam menggabungkan potongan musik. Teknik ini disebut menggores atau
“Scratch”. Nah, dari teknik tersebut para programmer terinspirasi untuk
menggabungkan beberapa media (gambar, foto, efek suara dan sebagainya)
dengan cara yang menarik untuk menciptakan sesuatu yang baru.

6.2. Pencipta Scratch

Berdasarkan asal mula diatas, para programmer dari Massachussetts


Insitute of Technology (MIT) yang tergabung dalam Media Lab’s Lifelong
Kindergarten Group menggembangkan proyek bahasa pemrograman visual
Scratch. Proyek ini didanai oleh US National Science Foundation (NSF) yang
merupakan Yayasan pengembangan Ilmu Pengetahuan di Amerika.

Gambar 16 . brand name Scratch


Sumber: https://Scratch.mit.edu

50
Unit Pembelajaran
ALGORITMA

6.3. Segment Pengguna Scratch

Scratch dikembangkan untuk dapat digunakan oleh anak-anak berusia


8 tahun keatas atau remaja. Tujuannya untuk membantu mereka
mengembangkan keterampilan dan kreatifitas. Anak-anak berusia 8 tahun
keatas atau remaja diajarkan bagaimana membuat suatu program komputer,
untuk mengasah dan meningkatkan kreatifitas mereka dalam belajar
matematika dan konsep komputer, logika dan algoritma, penalaran atau
berfikir komputasional, pemecahan masalah serta kemampuan
berkolaborasi.

Namun dalam perkembangan Scratch juga dapat digunakan untuk orang


dewasa dalam membantu memahami dasar-dasar logika pemrograman.

6.4. Cara Kerja Scratch

Scratch dirancang agar anak-anak atau remaja yang dsebut pemula


yang baru belajar pemrograman tidak melakukan kesalahan ketik syntax yang
dapat menyebabkan error. Oleh karena itu, dalam Bahasa pemrograman
visual Scratch, kita hanya tinggal menyeret (drag) dan menggabungkan
(drop) beberapa blok program yang telah disediakan pada antar muka grafis
Scratch.

Antar muka grafis Scratch memungkinkan pengguna dengan mudah


mengontrol cara berbagai jenis perintah atau instruksi perintah untuk
beraksi satu sama lain. Kita hanya perlu memahami alur logika atau
algoritma dalam menyusun intruksi-instruksi tersebut.

6.5. Bahasa

Scratch dapat digunakan dalam 50 bahasa termasuk Bahasa


Indonesia. Pada menu pemilihan Bahasa, dapat merubah tampilan Scratch ke
dalam Bahasa Indonesia akan memudahkan bagi anak-anak (pengguna) dan
juga pendidik dalam mehamami pemrograman.
51
7. Komposisi Scratch 2.0

Dalam membuat suatu proyek pemrograman menggunakan Bahasa


pemrograman Scratch, kita harus mengetahui komposisi utama dalam
membuat project di Scratch. Sebuah proyek Scratch terdiri atas:

 Project awal dibuat atau terdiri dari objek-objek yang disebut sprite.
Sprite adalah objek atau icon yang digunakan untuk menjalankan
instuksi program yang dibuat. Icon Sprite awal dari Scratch adalah
seekor kucing, namun kita dapat memilih atau membuat sprite jenis
lainnya yang tersedia pada program Scratch.

Gambar 17 . Scratch sprite


Sumber: https://Scratch.mit.edu

 Kita dapat memberikan instruksi kepada sprite, membuatnya


bergerak, memutar musik atau berinteraksi terhadap sprite lainnya.
 Untuk menjalankan sprite atau memberitahu sprite yang harus
dilakukan, kita dapat menggabungkan blok grafis menjadi sebuah
tumpukan instruksi algoritma yang disebut script.

8. Antarmuka Scratch 2.0

Antarmuka pada Scratch terdiri dari bagian-bagian objek kerja dalam


membuat program yang dapat ditampilkan atau dijalankan. Bagian-
bagian dari tampilan Scratch dapat dilihat pada gambar 15 berikut:

52
Unit Pembelajaran
ALGORITMA

Gambar 18 . Scratch interface


Sumber: https://portal.sd38.bc.ca/public/8zd3fg5/Pages/Scratch_interface.aspx

Terdapat 3 bagian utama dalam dalam menggunakan bahasa pemrograman


visual Scratch, yaitu:
1. Script area;
Digunakan untuk meletakkan atau men-drop block palette (blok
instruksi perintah) dari suatu algoritma. Beberapa blok dapat
dikombinasikan atau digabung dengan blok lain untuk membentu
sebuah skrip dan akhirnya menjadi sebuat proyek.
2. Sprites area
Berisi tampilan thumbnail dari semua jenis sprite yang disediakan
dalam berbagai kategori.

53
3. Stage
Adalah panggung bagi sprite untuk bereaksi terhadap instruksi blok yang
dibuat. Stage memilki fitur-fitur khusus yang berbeda dengan sprite lain.
Terdapat 3 tombol pada stage:

a. Green flag
Digunakan untuk menjalankan skrip.
b. Stop sign
Digunakan untuk menghentikan semua skrip dalam semua sprite.
c. Tombol presentasi
Digunakan untuk merubah mode tampilan (view) menjadi tampilan
penuh (full).

Sedangkan bagian-bagian antarmuka lain yang terdapat dalm bahasa


pemrograman visual Scratch yaitu:

a. Blocks Tabs
Digunakan untuk mengedit skrip, kostum dan suara.
b. Blocks Pallete
Berisi kumpulan program code task untuk memprogram sprite.
c. Edit stage
Digunakan untuk memilih, membuat, mengunduh latar belakang
(background) stage.
d. New sprite button
Tombol-tombol untuk membuat sprite baru.
e. X Y position
Untuk menunjukkan posisi koordinat X , Y kursor atau mouse.

54
Unit Pembelajaran
ALGORITMA

9. Scratch Blocks

Scratch blocks atau Blocks Pallette pada Scratch 2.0 terdiri dari 10
kategori yakni Gerakan (motion), Tampilan (looks), Suara (sound), Pena
(pen), Data, Kejadian (events), Kontrol (control), Sensor (sensing),
Operator (operators) dan Blok Lainnya (more bloks).

Gambar 19 . Kategori Blocks

9.1. Gerakan (motion)

Block gerakan (motion) berisikan blok-blok pemrograman yang dapat


digunakan untuk menggerakkan sprites dalam suatu proyek pengguna.
Penjelasan tentang blok-blok pada gerakan (motion) dapat dilihat pada
tabel 6 berikut:

55
Tabel 6 Blocks Gerakan (motion)

9.2. Tampilan (looks)

Block ini digunakan untuk mengganti Kostum sprites, background stage,


ukuran sprite dan sebagainya. Penjelasan tentang blok-blok pada
tampilan (looks) dapat dilihat pada tabel 7 berikut:

56
Unit Pembelajaran
ALGORITMA

Tabel 7 Blocks Tampilan (looks)

9.3. Suara(sounds)

Blok-blok yang mengatur penggunaan efek suara dapat ditemukan dalam


sound block ini. Penjelasan tentang blok-blok pada suara (sounds) dapat
dilihat pada tabel 8 berikut:

57
Tabel 8 Blocks Suara (sound)

58
Unit Pembelajaran
ALGORITMA

9.4. Pena(pen)

Mengatur penggunaan pen dan stamps di project. Penjelasan tentang


blok- blok pada pena (pen) dapat dilihat pada tabel 9 berikut:

Tabel 9 Blocks Pena (pen)

9.5. Data

Blok data digunkan untuk membuat variabel dan daftar (list) maupun
menghapusnya. Penjelasan tentang blok-blok pada data dapat dilihat
pada tabel 10 berikut:

59
Tabel 10 Blocks Pena (pen)

9.6. Kejadian (events)

Blok ini berisikan sejumlah blok utama script untuk membuat sprite
bergerak berdasarkan kejadian (events). Penjelasan tentang blok-blok
pada kejadian (events) dapat dilihat pada tabel 11 berikut:

60
Unit Pembelajaran
ALGORITMA

Tabel 11 Blocks Kejadian (events)

9.7. Kontrol (control)

Blok ini berisikan sejumlah blok struktur kendali untuk membuat sprite
bergerang secara perulangan (looping). Penjelasan tentang blok-blok
pada Kontrol (control) dapat dilihat pada tabel 12 berikut:

61
Tabel 12 Blocks Kontrol (control)

9.8. Sensor (sensing)

Blok ini berisikan hal-hal yang dapat dikerjakan sprites. Penjelasan tentang blok-

blok pada Sensor (sensing) dapat dilihat pada tabel 13 berikut:

62
Unit Pembelajaran
ALGORITMA

Tabel 13 Blocks Sensor (sensing)

63
9.9. Operator (operator)

Blok ini berisi berbagai operator aritmatika yang dapat digunakan


dalam project. Penjelasan tentang blok-blok pada operator (operator)
dapat dilihat pada tabel 14 berikut:

Tabel 14 Blocks Operator (operator)

9.10. Blok Lainnya

Digunakan untuk membuat blok lainnya dan menambahkan ekstensi


pemrograman pada bahasa pemrograman Scratch. Penjelasan tentang
blok-blok pada Blok lainnya dapat dilihat pada tabel 15 berikut:

64
Unit Pembelajaran
ALGORITMA

Tabel 15 Blocks Lainnya (more block)

10. Algoritma Scratch

Pembentukan algoritma pada bahasa pemrograman Scratch yaitu pada


penggunaan blocks yang disusun berdasarkan instruksi yang diinginkan
untuk menghasilkan suatu pemrograman visual. Di dalam bagian antar muka
Scratch telah dijelaskan bahwa terdapat 3 area utama dalam membuat
algoritma pada bahasa pemrograman visual Scratch.

Gambar 20 . Scratch offline editor

65
Berdasarkan gambar diatas kita dapat melihat bahwa:

 Bagian sebelah kiri atau yang disebut script area adalah area untuk
menyusun algoritma;
 Bagian tengah atau bloks pallete adalah library (pustaka) dari blocks
(statement) yang digunakan untuk membentuk suatu algoritma;
 Bagian kanan atau stage area adalah bagian yang menampilkan
eksekusi atau jalannya algoritma yang disusun dari sekumpulan
blocks.

Namun perlu diperhatikan bahwa

blocks disusun menurut algoritma atau langkah-langkah logis dalam


membuat suatu project Scratch.

Kita tidak dapat menggunakan blocks secara asal-asalan tanpa alur yang jelas.
Jika kita menggunakan blocks tanpa alur yang jelas maka sprite akan
menampilkan hasil yang tidak sesuai.

Posisi Scratch

Bahasa pemrograman Scratch disusun berdasarkan sistem koordinat


kartesisus pada bidang 2 dimensi (2D) yang menggunakan titik koordinat x
(absis) dan koordinat y (ordinat). Scratch menentukan tempat untuk
menampilkan atau menjalankan Sprite melalui sistem koordinat atau kotak
matematika dengan nilai tak terbatas. Sehingga jika kita lihat pada area
sprite, sprite berada diposisi tengah dengan titik koordinat x (0) dan y (0).

66
Unit Pembelajaran
ALGORITMA

Gambar 21 posisi scratch


Sumber: https://en.scratch-wiki.info/wiki/Coordinate_System

Nilai posisi X menentukan lokasi lokasi horizontal sprite dan posisi titik Y
menentukan lokasi atau ketinggian vertikal. Sprite stage (layar) sprite
berbentuk persegi dengan ukuran 480x360, sehingga posisi X berkisar dari
240 hingga -240, dimana 240 adalah posisi paling kanan sprite dan -240
adalah posisi paling kiri. Posisi Y berkisar dari 180 hingga -180, dimana 180
adalah yang tertinggi dan -180 adalah yang terendah. Sehingga dalam Scratch
posisi (0,0) dianggap sebagai bagian tengah layar; tidak seperti sistem
koordinat populer seperti Quartz 2D dan HTML5 canvas API, yang
menggunakan (0,0) sebagai sudut kiri atas atau kiri bawah.

Arah Scratch

Arah di Scratch ditentukan oleh sistem bilangan rotasi. Arah 0 lurus keatas.
Setiap 90 unit setara dengan seperempat putaran, dimana +90 adalah 90 O
searah jarum jam. Diagram dibawah ini menunjukkan cara kerjanya:

67
Gambar 22 arah scratch
Sumber: https://en.scratch-wiki.info/wiki/Coordinate_System

Arah di Scratch tidak pernah melebihi 180o atau bergerak di bawah -180o;
yang disimpan dalam batas-batas dengan fungsi seperti blok dibawah:

Namun biasanya blok diatas lebih bermanfaat untuk mengatur arah 0o ke


360o untuk menghasilkan arah yang baik. Setiap arah sama dengan 360 o +
arah (90o), sehingga 90o +360o=450o. Perhitungan arah ini mirip dengan
koordinat kutub, kecuali diputar 90o berlawanan arah jarum jam. Koordinat
kutub terdiri dari sudut dan jarak asalnya.

Agar lebih mudah mengerti tentang pembentukan algoritma pada bahasa


pemrograman Scratch, perhatikan contoh berikut:

Contoh Algoritma di Scratch


Tujuan: menjalankan sebuah statement (blocks) ketika bendera hijau diklik.
Rumusan masalah:
Kita ingin membuat algoritma dengan alur ketika pengguna menekan (klik)
bendera hijau, sprite berjalan 10 langkah dari titik aktual (asal).
Pertama, kita membutuhkan sebuah Pada blocks pallete (library), yang
block yang dapat mengaktifkan berisi perintah atau instruksi “Klik

68
Unit Pembelajaran
ALGORITMA

kejadian (event) “Klik bendera hijau” bendera hijau” terdapat pada block
dijalankan. Kejadian (events).
Pilih blok Events, tarik (drag) dan

letak (drop) block di


area algoritma atau script area.

Kedua, ketika “bendera hijau diklik” Pilih blok Gerakan (Motion), drag
maka sprite bergerak atau
dan drop block di
melangkah.
area algoritma atau script area.
Letakkan block ini dibawah blok
pertama, maka kedua block akan
tergabung membentuk set instruksi
algoritma.

Hasil Untuk menjalankan instruksi


algoritma yang dibuat, maka dapat
dilihat pada stage area (area
eksekusi).

69
PENGEMBANGAN PENILAIAN

A. Pembahasan Soal-soal

Berdasarkan hasil analisis literatur dari rujukan jurnal, buku dan artikel dari
luar, berikut ini pembahasan soal-soal Topik Algoritma:
1. Pada editor pemrograman Scratch, tempat untuk menuliskan skrip
instruksi algoritma disebut…..
A. Skrip
B. Stage
C. Skrip Area
D. Sprite
Penjelasan:
Terdapat 3 bagian utama dalam dalam menggunakan bahasa
pemrograman visual Scratch, yaitu:
Script area;
Digunakan untuk meletakkan atau men-drop block palette (blok
instruksi perintah) dari suatu algoritma. Beberapa blok dapat
dikombinasikan atau digabung dengan blok lain untuk membentu
sebuah skrip dan akhirnya menjadi sebuat proyek.
Sprites area
Berisi tampilan thumbnail dari semua jenis sprite yang disediakan
dalam berbagai kategori.
Stage
Adalah panggung bagi sprite untuk bereaksi terhadap instruksi blok
yang dibuat.
Jawaban : C

70
Unit Pembelajaran
ALGORITMA

2. Skrip gerakan mempunyai arti perintah


untuk menggerakkan sprite ……..
A. Sprite akan bergerak ke depan
B. Sprite akan berputar
C. Sprite akan bergerak ke atas
D. Sprite akan bergerak ke kanan
Penjelasan:
Bahasa pemrograman Scratch disusun berdasarkan sistem koordinat
kartesisus yang menggunakan titik koordinat x (absis) dan koordinat y
(ordinat). Jika x, y membentuk sudut 90O maka arah gerak sprite
bergerak ke kanan.
Jawaban: D

3. Jika kita ingin membuat Sprite berputar ke arah kanan sebesar 15


derajat, skrip gerakan apa yang digunakan……

A.

B.

C.

D.
Penjelasan
Berdasarkan penjelasan tips yang terdapat pada editor Scratch offline
untuk Skrip Gerakan yang membuat sprite berputar ke kanan dengan
menggunakan balok skrip seperti berikut :

71
Jawaban: B

4. Bahasa pemrograman Scratch dibuat berdasarkan sistem matematika


yang menentukan tiap titik dalam bidang dengan menggunakan
bilangan koordinat x (absis) dan koordinat y (oordinat). Sistem
matematika tersebut adalah…….
A. Sistem geometri
B. Sistem aljabar
C. Sistem koordinat kartesius
D. Sistem kuadran
Penjelasan
Bahasa pemrograman Scratch disusun berdasarkan sistem koordinat
kartesisus yang menggunakan titik koordinat x (absis) dan koordinat y
(ordinat).
Jawaban: C

72
Unit Pembelajaran
ALGORITMA

5. Perhatikan skrip balok program berikut:

Skrip diatas merupakan salah satu contoh skrip yang disusun secara tidak
efisien karena pernyataan (statement) pada program diatas harus dibuat
dengan balok pernyataannya. Bentuk pernyataan apa yang harus digunakan
untuk menjadikan program diatas menjadi efisien?
A. Pernyataan berulang (looping statement)
B. Pernyataan bersyarat (conditional statement)
C. Pernyataan berurutan (sequence statement)
D. Penyataan jika – maka -kemudian.
Penjelasan
Perulangan (Looping) adalah suatu atau serangkaian bentuk kegiatan
mengulang suatu statement sampai batas yang diinginkan. Berdasarkan
skrip yang ditunjukan pada soal dapat dilihat terjadi penulisan statement
yang ditulis dalam beberapa kode balok sehingga menjadikan program
menjadi tidak efisien untuk . Maka agar program diatas menjadi efisien harus
disusun dengan menggunakan pernyataan perulangan (looping statement).
Jawaban: A

73
B. Mengembangkan Soal HOTS

Pada bagian ini akan dimodelkan pembuatan soal yang memenuhi indikator
pencapaian kompetensi yang diturunkan dari kompetensi dasar
pengetahuan. Pengembangan soal diawali dengan pembuatan kisi-kisi agar
guru dapat melihat kesesuaian antara kompetensi, lingkup materi, dan
indikator soal. Selanjutnya, dilakukan penyusunan soal dikartu soal
berdasarkan kisi-kisi yang telah disusun sebelumnya. Contoh soal yang
dibuat menuntun proses berfikir level kognitif 3 Yaitu C4 (analisis), C5
(Evaluasi) dan C6 (Mengkreasi).

Contoh Penulisan Kisi-Kisi Soal Ujian Nasioan (UN)


Jenjang sekolah : Sekolah Menengah Pertama
(SMP) Mata pelajaran : Informatika
Jumlah Soal 3
Alokasi waktu : 90 menit
Tahun Pelajaran : 2019/2020

Indikator Materi Bentuk


Nomor Kompetensi yang Level
Pencapaian Indikator soal Kelas Soal
Soal Diuji kognitif
Kompetensi

1 3.3.1. Memahami Menerapkan Algoritma Disajikan sebuah C4 VIII Pilihan


program konsep fakta dan skrip Ganda
visual dari algoritma balok peserta
demo dan dalam didik dapat
tutorial. membuat menentukan arti
program dari perintah pada
menggunakan balok tersebut
program
visual Scratch
2.0.

2 3.3.2. Mengenal cara Menerapkan Algoritma Disajikan suatu C4 VIII Pilihan


kerja dan konsep skrip balok Ganda
objek- objek algoritma program peserta
lingkungan dalam didik dapat
pemrograman membuat menentukan
visual yang program algoritma
dipakai. menggunakan penyusunan skrip
program balok suatu
visual Scratch program
2.0.

74
Unit Pembelajaran
ALGORITMA

3 3.3.3. Mengenal cara Menerapkan Algoritma Disajikan blok C4 VIII Pilihan


kerja dan konsep algoritma peserta Ganda
objek- objek algoritma didik dapat
lingkungan dalam memahami
pemrograman membuat struktur algoritma
visual yang program di pemrograman
dipakai. menggunakan visual Scratch 2.0
program
visual Scratch
2.0.

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN


KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran: Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR : Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
3.3.1. Memahami program Keterampilan

visual dari demo dan Nomor RUMUSAN BUTIR SOAL


tutorial. Soal Pada pemrogram visual Scratch 2.0,
Pergerakkan Sprite dibuat berdasarkan alur
LINGKUP MATERI : matematika yaitu dengan sistem koordinat
1
Algoritma dan Pemrograman kartesius.
MATERI :
Algoritma Jika balok
INDIKATOR SOAL : mengartikan menggerakkan Scratch untuk
Kunci bergerak ke depan, maka untuk menggerakan
Disajikan sebuah fakta dan
skrip balok peserta Jawaban Scratch bergerak ke belakang digunakan
didik dapat menentukan arti B balok perintah ?
dari perintah pada balok
tersebut A.

B.

C.

D.

75
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN
KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran: Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR : Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
3.3.4. Memahami program Keterampilan

visual dari demo dan Nomor RUMUSAN BUTIR SOAL


tutorial. Soal

LINGKUP MATERI : 2
Algoritma dan Pemrograman
MATERI :
Algoritma
INDIKATOR SOAL : Kunci
Disajikan suatu skrip balok Skrip diatas adalah skrip untuk membuat suatu
Jawaban
program peserta program sederhana di Scratch, namun skrip
didik dapat menentukan
C
algoritma penyusunan skrip tersebut disebut skrip yang disusun dengan
balok suatu program algoritma yang tidak sesuai dalam membuat
suatu program, karena tidak mengandung ciri-
ciri atau sifat dari suatu algoritma.
Ciri-ciri atau sifat apa yang menyebabkan
ketidaksesuaian dalam penyusunan algoritma
pada skrip diatas ?
A. Skrip diatas disusun dengan
menggunakan masukkan (input) dan
keluaran (output).
B. Skrip diatas akan menyebabkan suatu
kesalahan dalam proses keluarannya
(outputnya).
C. Skrip diatas tidak memiliki awalan
untuk menjalankan suatu perintah dan
akhiran untuk menyelesaikan suatu
perintah.
D. Proses diatas tidak dapat dijalankan
karena tidak memiliki perintah akhir.

76
Unit Pembelajaran
ALGORITMA

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN


KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata : Informatika Nama Penyusun : Nurul Hayati
Pelajaran
KOMPETENSI Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
Keterampilan
DASAR :
3.3.2. Mengenal cara Nomor RUMUSAN BUTIR SOAL
kerja dan objek- Soal Pada pemrogram visual Scratch 2.0, ditulis instruksi
objek perintah algoritma seperti berikut:
lingkungan 3
pemrograman
visual yang
dipakai.
LINGKUP MATERI:
Algoritma dan
Pemrograman
MATERI :
Algoritma
INDIKATOR SOAL : Kunci
Disajikan blok Jawaban
algoritma peserta B
didik dapat memahami -
struktur algoritma di Hasil dari instruksi algoritma diatas adalah:
pemrograman visual A. Lakon/sprite akan bergerak maju dan
Scratch 2.0 mundur dengan mengeluarkan suara meong
sebanyak 10 kali ketika tombol bendera
diklik.
B. Lakon/sprite akan bergerak maju dan
mundur dengan mengeluarkan suara meong
diringi suara drum sebanyak 0.25 ketukan
yang diulang selama 10 kali ketika tombol
bendera diklik.
C. Lakon/sprite akan bergerak maju dan
mengeluarkan suara meong sebanyak 10 kali
ketika tombol bendera diklik.
D. Lakon/sprite akan bergerak maju dan
mundur dengan mengeluarkan suara meong
diringi suara drum sebanyak 0.25 ketukan
yang diulang selama 10 kali.

77
KESIMPULAN
Di dalam kehidupan sehari-hari ada banyak sekali contoh permasalahan yang
bisa dipecahkan menggunakan algoritma. Dengan mempelajari algoritma kita
dapat menyelesaikan suatu permasalahan dengan logis dan sistematis.
Hubungan interaksi antara manusia dan komputer mengharuskan kita untuk
memahami algoritma.

Dalam dunia informatika algoritma adalah bagian penting dan awal sebelum
membuat suatu program atau perangkat lunak. Dengan adanya algoritma,
suatu program dapat dibuat dengan struktur dan alur yang logis dan benar
dan juga dalam waktu yang efisien sehingga menghasilkan perangkat lunak
yang baik. Sebagai contoh pengaplikasiannya dengan mempelajari
pembentukan algoritma menggunakan bahasa pemrograman visual Scratch
2.0, kita dapat melihat dan menghasilkan suatu karya atau hasil kerja
pemrograman visual berdasarkan permasalahan yang ingin kita selesaikan.

Oleh karena itu dengan dipelajarinya algoritma pada subunit ini, guru
diharapkan dapat memiliki dasar pengetahuan untuk mengajarkan materi
algoritma ke peserta didik yang disesuaikan dengan indikator yang telah
disusun, terutama dalam memfasilitasi kemampuan bernalar peserta didik.
Selain itu, materi ini juga aplikatif untuk guru sendiri sehingga guru
diharapkan dapat menerapkannya dalam kehidupan sehari-hari.

Bagi peserta didik melalui pembelajaran pada subunit ini diharapkan dapat
mendorong, mengasah dan meningkatkan kreatifitas mereka dalam belajar
matematika dan konsep komputer, logika dan algortima, penalaran atau
berfikir komputasional, pemecahan masalah serta kemampuan
berkolaborasi.

Melalui model Problem-based Learning (PBL) yang digunakan dalam aktivitas


pembelajaran ini diharapkan juga guru dan peserta didik mampu
menerapkan
78
Unit Pembelajaran
ALGORITMA

dan mengaplikasikan kompetensi yang dipelajari hasil dalam kehidupan


sehari-hari.

79
UMPAN BALIK
Dalam rangka mengetahui pemahaman terhadap subunit ini, Saudara perlu
mengisi lembar persepsi pemahaman. Berdasarkan hasil pengisian
instrumen ini, Saudara dapat mengetahui posisi pemahaman beserta umpan
baliknya. Oleh karena itu, isilah lembar persepsi diri ini dengan objektif dan
jujur.

Lembar Persepsi Pemahaman Subunit

No Aspek Kriteria

1 2 3 4

1. Memahami indikator yang telah dikembangkan


berdasarkan Kompetensi Dasar

2 Mampu menghubungkan konten dengan


fenomena kehidupan sehari-hari

3 Merasa bahwa tahapan aktivitas pembelajaran


dapat mengembangkan HOTS peserta didik

4 Memahami tahapan aktivitas yang disajikan


dengan baik

5 Mampu dengan baik mengaplikasikan aktivitas


pembelajaran di dalam kelas

6 Memahami dengan baik Lembar Kerja peserta


didik yang dikembangkan

7 Mampu melaksanakan dengan baik Lembar Kerja


peserta didik yang dikembangkan

8 Memahami Konten secara menyuluh dengan baik

80
Unit Pembelajaran
ALGORITMA

9 Memami prosedur penyusunan soal HOTS


dengan baik

10 Mampu membahas soal HOTS yang disajikan


dengan tepat

Jumlah

Jumlah Total

Keterangan Pedoman Penskoran

1=tidak menguasai

2 = cukup Skor = Jumlah Total X 100

menguasai 3 = 40

menguasai

4 = Sangat Menguasai

Keterangan Umpan Balik

Skor Umpan Balik

< 70 : Masih banyak yang belum dipahami, di antara konten, cara


membelajarkannya, mengembangkan penilian dan
melaksanakan penilaian berorientasi HOTS. Saudara membaca
ulang subunit ini dan mendiskusikannya dengan dengan
fasilitator di MGMP sampai anda memahaminya.

81
70-79 : Masih ada yang belum dipahami dengan baik, di antara konten,
cara membelajarkan, mengembangkan penilian dan
melaksanakan penilaian berorientasi HOTS. Saudara perlu
mendiskusikan bagian yang belum dipahami dengan fasilitator
atau teman lain di MGMP.

80-89 : Memahami konten, cara membelajarkan, mengembangkan


penilian dan melaksanakan penilaian berorientasi HOTS dengan
baik.

> 90 : Memahami konten, cara membelajarkan, mengembangkan


penilian dan melaksanakan penilaian berorientasi HOTS dengan
sangat baik. Saudara dapat menjadi fasilitator bagi teman-teman
lain di MGMP untuk membelajarkan subunit ini.

82
Unit Pembelajaran
PROGRAM PENGEMBANGAN KEPROFESIAN BERKELANJUTAN (PKB)
MELALUI PENINGKATAN KOMPETENSI PEMBELAJARAN (PKP)
BERBASIS ZONASI

MATA PELAJARAN INFORMATIKA


SEKOLAH MENENGAH PERTAMA
(SMP)

PEMROGRAMAN
Penulis:
NURUL HAYATI

Desainer Grafis dan Ilustrator:


TIM Desain Grafis

Copyright © 2019
Direktorat Pembinaan Guru Pendidikan Dasar
Direktorat Jenderal Guru dan Tenaga Kependidikan
Kementerian Pendidikan dan Kebudayaan

Hak Cipta Dilindungi Undang-Undang


Dilarang mengopi sebagian atau keseluruhan isi buku ini untuk kepentingan komersial tanpa
izin tertulis dari Kementerian Pendidikan dan Kebudayaan.
Unit
Pembelajaran
PEMROGRAMAN

DAFTAR ISI

Hal

DAFTAR ISI_____________________________________________________87
DAFTAR GAMBAR________________________________________________88
DAFTAR TABEL__________________________________________________89
PENGANTAR____________________________________________________90
A. Kompetensi Dasar dan Target Kompetensi 92
B. Indikator Pencapaian Kompetensi 95
APLIKASI DI DUNIA NYATA________________________________________98
A. CERITA DAN GAME ANIMASI 98
BAHAN PEMBELAJARAN________________________________________100
A. Aktivitas Pembelajaran 100
Aktivitas 1 Membuat Interaksi Motion di Scratch 2.0 101
Kartu Kasus 1 104
Aktivitas 2 105
Kartu Kasus 2 108
B. Lembar Kerja Peserta Didik 109
Lembar Kerja 1 109
Lembar Kerja 2 110
C. Bahan Bacaan 111
1. Pemrograman Visual 111
2. Variabel 112
Penggunaan Variabel di Scratch 2.0 113
3. Dekomposisi 117
4. Sub Program (Prosedur dan Fungsi ) 119
5. Pernyataan (Statement) 124
6. Pernyataan berulang (looping statement) 127
7. Pernyataan bersyarat (conditional statement) 129

PENGEMBANGAN PENILAIAN________________________________________134
A. Pembahasan Soal-soal 134

87
B. Mengembangkan Soal HOTS 137
KESIMPULAN___________________________________________________144
UMPAN BALIK__________________________________________________145

DAFTAR GAMBAR
Hal

Gambar 1 cerita animasi anak 98


Gambar 2 permainan animasi anak 98
Gambar 3 Output program Sprite Bertanya 104
Gambar 4 Skrip algoritma balok kartu kasus 2 108
Gambar 5 Variabel 112
Gambar 6 Skrip variabel baru 113
Gambar 7 Stage Sprite program variabel 114
Gambar 8 output program variabel 115
Gambar 9 Ilustrasi dekomposisi 1 117
Gambar 10 Ilustrasi dekomposisi 2 117
Gambar 11 Skrip balok sub-program 1 120
Gambar 12 Skrip balok sub-program 2 121
Gambar 13 Skrip balok lainnya 121
Gambar 14 Skrip balok Baru 122
Gambar 15 Skrip balok Baru 122

88
Unit
Pembelajaran
PEMROGRAMAN

DAFTAR TABEL
Hal

Tabel 1 Kompetensi Dasar dan Target Kompetensi 92


Tabel 2 Kompetensi Dasar dan Target Kompetensi 93
Tabel 3 Indikator Pencapaian Kompetensi 95
Tabel 4 Indikator Pencapaian Kompetensi 96
Tabel 5 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1
101
Tabel 6 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 2
105
89
PENGANTAR

Berdasarkan Permendikbud RI Nomor 37 tahun 2018 tentang Perubahan


atas Permendikbud Nomor 24 tahun 2016 tentang KI-KD Pelajaran pada
Kurikulum 2013 pada Pendidikan Dasar dan Pendidikan Menengah. Dalam
permendikbud tersebut diatur kedudukan mata pelajaran informatika pada
jenjang SMP/MTsN, SMA/MAN dapat dilaksanakan melalui tatap muka. Mata
pelajaran informatika bukan merupakan mata pelajaran wajib bagi satuan
pendidikan jenjang SMP/MTsN/SMA/MAN akan tetapi dikondisikan pada
satuan pendidikan akan ketersediaan tenaga pengajar dan sarana pendukung
yang memungkinkan diajarkannya mata pelajaran informatika.

Oleh karena itu, subunit ini disusun sebagai salah satu alternatif sumber
bahan ajar bagi guru untuk memahami topik pemrograman. Melalui
pembahasan materi yang terdapat pada subunit ini, guru dapat memiliki
dasar pengetahuan untuk mengajarkan materi yang sama ke peserta
didiknya yang disesuaikan dengan indikator yang telah disusun, terutama
dalam memfasilitasi kemampuan bernalar peserta didik. Selain itu, materi ini
juga aplikatif untuk guru sendiri sehingga guru dapat menerapkannya dalam
kehidupan sehari- hari.

Agar memudahkan guru untuk mempelajari konten dan cara


mengajarkannya, di dalam unit ini dimuat komptensi dasar terkait Permen
No.37 Tahun 2018 yang memuat target kompetensi dan indikator
pencapaian kompetensi, bahan bacaan tentang aplikasi nyata pemrograman
di kehidupan sehari-hari, deskriptif alternatif aktivitas pembelajaran, lembar
kerja peserta didik yang dapat digunakan guru untuk memfasilitasi
pembelajaran, bahan bacaan yang dapat dipelajari oleh guru maupun peserta
didik dan pembahasan soal-soal terkait pemrograman dan pengembangan
soal HOTS.

90
Unit
Pembelajaran
PEMROGRAMAN

Komponen-komponen di dalam subunit ini dikembangkan dengan tujuan


agar guru dapat dengan mudah memfasilitasi peserta didik untuk memahami
konsep pemrograman visual, objek-objek kerja dilingkungan visual,
membuat program yang dapat berinteraksi dan menyelesaikan masalah
dengan konsep dekomposisi melalui sub-program (fungsi dan prosedur)
sekaligus mendorong peserta didik mengasah dan meningkatkan kreatifitas
mereka dalam belajar matematika dan konsep komputer, logika dan
algoritma, penalaran atau berfikir komputasional, pemecahan masalah serta
kemampuan berkolaborasi.

Model yang digunakan dalam aktivitas pembelajaran ini adalah model


Problem-based Learning (PBL) dengan sintaks orientasi peserta didik pada
masalah; mengorganisasikan peserta didik untuk belajar; membimbing
penyelidikan individu maupun kelompok; mengembangkan dan menyajikan
hasil karya dan menganalisis dan mengevaluasi proses pemecahan masalah.

Topik pemrograman pada bahan bacaan terdiri atas pemrograman visual,


pemrogramn visual Scratch 2.0; variabel dalam pemrograman visual;
dekomposisi dan sub-program (prosedur dan fungsi).

91
A. Kompetensi Dasar dan Target Kompetensi

1. Sub unit pembelajaran ini dikembangkan berdasarkan Kompetensi


Dasar kelas VIII Mata Pelajaran Informatika Jenjang SMP sebagaimana
tertuang dalam Permendikbud No.37 Tahun 2018, seperti terlihat
pada tabel 1 berikut:

Tabel 1 Kompetensi Dasar dan Target Kompetensi


Kompetensi Dasar Target Kompetensi Dasar

3.2. Memahami bahwa bagaimana 3.2.1. Memahami bahwa bagaimana


manusia berinteraksi dengan manusia berinteraksi dengan
komputer melalui algoritma, dan komputer melalui algoritma.
bahwa algoritma dirancang
3.2.2. Memahami bahwa algoritma
untuk mengeneralisasi solusi
dirancang untuk me-
berbagai situasi.
generalisasi solusi berbagai
situasi.

4.2.1. Membuat robot yang mampu 4.2.1.1. Membuat robot yang mampu
menggambar atau menulis menggambar dengan program
dengan program sederhana. sederhana.

4.2.1.2. Membuat robot yang mampu


menulis dengan program
sederhana.

4.2.2. Mendefinisikan variabel, 4.2.2.1. Memahami cara mendefinisikan


menyimpan data dan variabel pada bahasa
mengubahnya. pemrograman visual.

4.2.2.2. Memahami cara menyimpan


data pada bahasa
pemrograman visual.

92
Unit
Pembelajaran
PEMROGRAMAN

4.2.2.3. Memahami cara mengubah data


pada bahasa pemrograman
visual.

4.2.3. Memakai instruksi kondisional. 4.2.3.1. Memahami pemakaian instruksi


kondisional pada bahasa
pemrograman visual.

2. Sub unit pembelajaran ini dikembangkan berdasarkan Kompetensi


Dasar (KD) kelas IX Mata Pelajaran Informatika Jenjang SMP
sebagaimana tertuang dalam Permendikbud No.37 Tahun 2018,
seperti terlihat pada tabel 2 berikut:
Tabel 2 Kompetensi Dasar dan Target Kompetensi
Kompetensi Dasar Target Kompetensi Dasar

3.6. Memahami bahwa sebuah 3.6.1. Mengenal konsep


program dapat didekomposisi dekomposisi pada
menjadi sub-program. pemrograman visual dalam
menyelesaikan suatu
permasalah.

3.6.2. Mengenal penggunaan


prosedur pada bahasa
pemrograman visual.

3.6.3. Mengenal penggunaan


fungsi pada bahasa
pemrograman visual.

3.7. Memahami persoalan komputasi 3.7.1. Mengidentifikasi masalah


dan mengusulkan solusi. dengan menggunakan sub-

93
program dalam bahasa
pemrograman visual.

4.6. Mengimplementasi sebuah 4.6.1. Menerapkan bagaimana cara


program yang memakai atau mendefinisikan input/output
mengandung sub-program dari sebuah prosedur pada
(prosedur, fungsi). bahasa pemrograman visual.
4.6.2. Menerapkan bagaimana cara
menuliskan sebuah prosedur
pada bahasa pemrograman
visual.
4.6.3. Menerapkan bagaimana cara
memanggil sebuah prosedur
pada bahasa pemrograman
visual.

4.7.1. Merancang solusi untuk suatu 4.7.1.1. Menerapkan keseluruhan


persoalan dengan konsep algoritma dalam
mempertimbangkan penyelesaian masalah ke
beberapa keinginan, dan dalam bahasa pemrograman
mengetes program untuk visual.
memenuhi kepentingan.
4.7.2. Jika dimungkinkan, membuat 4.7.2.1. Membuat “robot” yang
“robot” yang mampu mampu mengerjakan tugas
mengerjakan tugas sederhana sederhana dari kit yang
dari kit yang disediakan. disediakan. Catatan: “robot”
Catatan: “robot” berupa berupa sistem komputer atau
sistem komputer atau hanya hanya perangkat lunak baik
perangkat lunak baik visual visual ataupun tak
ataupun tak ketinggalan. ketinggalan.

94
Unit
Pembelajaran
PEMROGRAMAN

B. Indikator Pencapaian Kompetensi

1. Indikator Pencapaian Kompetensi (IPK) merupakan turunan dari


Kompetensi Dasar (KD) kelas VIII Mata Pelajaran Informatika Jenjang SMP
seperti disajikan pada tabel 3 berikut:

Tabel 3 Indikator Pencapaian Kompetensi


IPK Pengetahuan IPK Keterampilan
Kelas VIII
IPK Pendukung IPK Pendukung
3.2.1. Mengenal bahasa pemrograman 4.2.1.1 Mempelajari bahasa
visual. pemrograman visual Scratch 2.0.
3.2.2. Mengenal penerapan algoritma pada 4.2.2.1 Menerapkan alur algoritma
bahasa pemrograman visual. dalam membuat robot dengan
3.2.3. Mengenal penerapan struktur dan bahasa pemrograman Scratch
tipe data untuk menyelesaikan suatu 2.0.
masalah atau solusi dengan 4.2.3.1 Membuat lakon/motion dengan
menggunakan bahasa pemrograman menyusun algoritma
visual. menggunakan bahasa
pemrograman visual Scratch
2.0.
IPK Kunci IPK Kunci
3.2.4. Memahami cara membuat 4.2.4.1 Membuat algoritma dengan
lakon/motion yang dapat menerapkan pernyataan
berinteraksi dengan kondisional menggunakan
menggunakan bahasa bahasa pemrograman visual
pemrograman visual Scratch 2.0. Scratch 2.0
4.2.5.1 Mendefiniskan variabel,
menyimpan data dan
mengubahnya pada bahasa
pemrograman visual Scratch
2.0.

95
4.2.6.1 Menerapkan instruksi
kondisional pada bahasa
pemrograman visual Scratch
2.0.
IPK Pengayaan IPK Pengayaan
3.2.5. Menerapkan penggunaan 4.2.5.2. Membuat lakon/motion (robot)
algoritma dalam membuat robot dengan bahasa pemrograman
dengan menggunakan bahasa visual Scratch 2.0 dengan
pemrograman visual Scratch penggunaan struktur data dan
2.0. tipe data.
3.2.6. Menerapkan penggunaan
variabel dalam menyimpan dan
mengubah data pada bahasa
pemrograman visual.
3.2.7. Membuat algoritma
pemrograman dengan
menggunakan instruksi
kondisional pada bahasa
pemrograman visual.

2. Indikator Pencapaian Kompetensi (IPK) merupakan turunan dari


Kompetensi Dasar (KD) kelas IX Mata Pelajaran Informatika Jenjang
SMP seperti disajikan pada tabel 4 berikut:

Tabel 4 Indikator Pencapaian Kompetensi


IPK Pengetahuan IPK Keterampilan
Kelas IX
IPK Pendukung IPK Pendukung
3.6.1.1. Mengenal konsep dekomposisi 4.6.1. Menerapkan konsep dekomposisi
program. dalam membuat suatu program
3.6.1.2. Mengenal proses dekomposisi pada visual.
pemrograman. 4.6.2. Membuat program visual yang
3.6.1.3. Mengenal sub-program mengandung prosedur.

96
Unit
Pembelajaran
PEMROGRAMAN

4.6.3. Membuat program visual yang


mengandung fungsi

IPK Kunci IPK Kunci


3.6.1.4. Memahami definisi dekomposisi 4.6.4. Membuat lakon/motion (robot)
3.6.1.5. Memahami sub-program pada pada pemrograman visual Scratch
pemrogaman visual Scratch 2.0 dengan mengandung prosedur.
2.0 4.6.5. Membuat lakon/motion (robot)
pada pemrograman visual Scratch
2.0 dengan mengandung fungsi.
IPK Pengayaan IPK Pengayaan
3.3.2.1. Menerapkan konsep dekomposisi 4.3.1.1. Membuat lakon/motion
dalam membuat sub program menggunakan bahasa
pada program visual. pemrograman Scratch 2.0 yang
menerapkan algoritma dan
mengandung sub-program

97
APLIKASI DI DUNIA NYATA

A. CERITA DAN GAME ANIMASI

Apa yang kalian fikirkan ketika melihat gambar-gambar dibawah ini ?

Gambar 1 cerita animasi anak


Sumber: https://www.youtube.com/watch?v=SpFPgAu30Cg

Gambar 2 permainan animasi anak


Sumber:http://blog.kgames.id/blog/page/2/

Terlihat menarik bukan ?. Ya, kalian tentu pernah memainkan sebuah


permainan atau mendengarkan cerita melalui gadget atau media elektronik.

98
Unit
Pembelajaran
PEMROGRAMAN

Tentunya dengan memainkan permainan tersebut atau mendengarkan cerita


animasi akan membuat kalian tertarik untuk memainkan dan mendengarkan
cerita, karena ditampilkan dengan gambar dan warna yang menarik.
Tentunya hal ini menggugah rasa keinginan tahu kalian untuk tahu
bagaimana sebuah games atau cerita animasi dibuat.

Ya, permainan atau games ini dibuat dengan menggunakan tampilan atau
objek-objek visual menggunakan suatu program visual. Dalam Ilmu
komputer ini disebut pemrograman visual. Jika kalian berfikir bahwa
membuat suatu permainan atau cerita dalam bentuk animasi itu akan sulit,
namun nyatanya tidak. Kalian dapat membuat sebuah permainan atau cerita
animasi dengan menggunakan bahasa pemrograman visual. Jika pada kelas
VII kalian telah mempelajari Algoritma dan mencoba mempelajari bahasa
pemrograman visual melalui aplikasi Scratch, maka kalian telah berhasil
memahami bagaimana langkah-langkah untuk membuat suatu permainan
dan cerita animasi interaktif.

99
BAHAN PEMBELAJARAN

A. Aktivitas Pembelajaran

Proses belajar mengajar merupakan proses interaksi antara guru dengan

peserta didik, didalamnya banyak kegiatan atau aktivitas yang dilakukan.


yang disampaikan
diharuskan mampudengan variasi jenis aktivitas
memanfaatkan beragambelajar yang sesuai
aktivitas yang dengan
gaya belajardalam
dilakukan masing-masing.
pembelajaran agar mampu dengan mudah
materi yang disampaikan dan siswa juga dengan mudah memahami
Aktivitas belajar melibatkan indera-indera atau sensor dan alat yang
meliputi indera penglihatan (visual), pendengaran (listening), berbicara (oral),
manusia untuk melakukan sesuatu. Indera-indera tersebut antara
seluruh aktivitas fisik lain serta mental dan emosi.

Aktivitas pembelajaran pada kegiatan pembelajaran Algoritma ini


Langkah-langkah pembelajaran dalam aktivitas ini menggunakan
sebagai contoh pengembangan pembelajaran yang mengintegrasikan
pembelajaran berbasis Problem based learning (peserta didik
literasi.
konsep berdasarkan permasalahan). Langkah-langkah pembelajaran
kegiatan ini juga dirancang dengan mengintegrasikan penguatan karakter

100
Unit
Pembelajaran
PEMROGRAMAN

Aktivitas 1 Membuat Interaksi Motion di Scratch 2.0

Aktivitas 1 dilakukan untuk pembelajaran memahami Memahami bahwa


bagaimana manusia berinteraksi dengan komputer melalui algoritma di
pemrograman visual Scratch 2.0. Aktivitas pembelajarannya dilakukan
dengan menggunakan model Problem-based Learning (PBL). Adapun
langkah-langkah pembelajarannya, sebagaimana disajikan pada Tabel 5
berikut:

Tabel 5 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1


Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu

Orientasi peserta 1. Mengkondisikan dan memastikan 1.1. Bersiap untuk mengikuti “disesuaikan”
didik pada masalah kesiapan peserta didik untuk mengikuti aktivitas pembelajaran.
aktivitas pembelajaran; 1.2. Peserta didik berdoa dan
2. Guru mengajak peserta didik berdoa lanjut menyanyikan salah
dilanjutkan dengan menyanyikan salah satu lagu wajib nasional.
satu lagu wajib nasional; 1.3. Peserta didik membentuk
3. Guru menugaskan siswa agar kelompok sesuai arahan
membentuk kelompok sebanyak 4-6 guru.
kelompok; 1.4. Peserta didik membaca dan
4. Guru membagikan kartu kasus 1 yang menganalisis kartu kasus
harus dianalisis bersama melalui diskusi yang diberikan.
kelompok (kartu kasus 1 terlampir); 1.5. Peserta didik
5. Guru menyampaikan tugas yang akan menyelesaikan
diselesaikan peserta didik melalui permasalahan berdasarkan
diskusi kelompok, yakni: pertanyaan yang diberikan
a. Bacalah kartu kasus yang telah dengan cara berdiskusi.
dibagikan;
b. Ikutilah dan selesaikanlah masalah
yang ada pada petunjuk kerja;
c. Diskusikan dengan kelompokmu;
d. Tuliskan hasil diskusi kelompok
pada kertas plano dalam format
lembar
kerja 1 yang ada;
101
e. Paparkan hasil diskusi setiap
kelompok di depan kelas.
Mengorganisasikan 1. Guru memastikan setiap peserta 2.1. Peserta didik berdiskusi “disesuaikan”
peserta didik didik/anggota kelompok memahami dan membagi tugas
untuk belajar tugas masing-masing kelompok yang untuk menyelesaikan
harus diselesaikan; persoalan berdasarkan
2. Guru memberikan kesempatan kepada instruksi yang diberikan.
peserta didik untuk bertanya; 2.2. Peserta didik bertanya
3. Guru membagikan bahan bacaan terkait kepada guru tentang hal
aktivitas yang telah disiapkan kepada yang belum dipahami
peserta didik. peserta didik terkait
instruksi yang diberikan.
2.3. Masing-masing kelompok
membaca bahan bacaan
yang telah disiapkan.

Membimbing 1. Guru memantau keterlibatan peserta 3.1. Peserta didik/anggota “disesuaikan”


penyelidikan didik dalam mengumpulkan dan kelompok melakukan
individu maupun mengolah informasi yang pengumpulan data untuk
kelompok ditemukannya; bahan diskusi dan
2. Guru memantau dan mendampingi menyelesaikan masalah.
kelompok dalam memahami bahan 3.2. Peserta didik/anggota
bacaan yang ada; kelompok membaca
3. Memotivasi peserta didik (kelompok) dan memahami bahan
untuk berfikir logis dan mencari solusi bacaan.
dalam menyelesaikan persoalan. 3.3. Peserta didik/anggota
kelompok berfikir logis
dan mencari solusi dalam
menyelesaikan persoalan
sesuai instruksi.

Mengembangkan 1. Guru memantau diskusi dan 4.1. Kelompok melakukan “disesuaikan”


dan menyajikan membimbing pembuatan laporan diskusi untuk
hasil karya sehingga karya setiap kelompok menghasilkan solusi
siap untuk dipresentasikan. pemecahan masalah;
2. Mengarahkan untuk bisa
menghargai pendapat

102
Unit
Pembelajaran
PEMROGRAMAN

teman/kelompok lain ketika 4.2. Peserta didik/ anggota


menyampaikan/mempresentasikan kelompok mem-
hasil diskusi. presentasikan/menyajikan
hasil diskusi dalam bentuk
karya.

Menganalisis dan 1. Guru membimbing presentasi; 5.1. Setiap kelompok “disesuaikan”


mengevaluasi 2. Guru mendorong kelompok memberikan melakukan presentasi.
proses pemecahan penghargaan serta masukan kepada 5.2. kelompok yang lain
masalah kelompok lain; memberikan apresiasi.
3. Guru bersama peserta didik 5.3. Bersama-sama guru
menyimpulkan materi. merangkum/membuat
kesimpulan sesuai
dengan masukan yang
diperoleh kelompok lain.

103
Kartu Kasus 1

SPRITE BERTANYA

Sprite diprogram untuk dapat berinteraksi dengan manusia melalui beberapa


104
pertanyaan. Sprite akan berinteraksi dengan menanyakan sebuah nama dan umur.
Ketika sprite mengajukan pertanyaan, pengguna (user) menjawab dengan cara
mengetikan nama dan umur pengguna (user). Jawaban yang diberikan akan
direspon oleh Sprite dengan menyebutkan kembali nama dan umur yang pengguna
(user) masukkan. Seperti yang digambarkan pada gambar dibawah ini

Gambar 3 Output program Sprite Bertanya

Mengingat Sprite melakukan interaksi dengan memberikan pertanyaan,


Bagaimana algoritma atau langkah-langkah (blocks) yang harus disusun agar sprite
dapat berinteraksi dan variabel apa yang dibuat agar sprite dapat melakukan
interaksi seperti diatas?
Unit
Pembelajaran
PEMROGRAMAN

Aktivitas 2

Aktivitas 2 dilakukan untuk pembelajaran memahami bagaimana konsep


dekomposisi diterapkan menjadi sub-program dalam bahasa pemrograman
visual. Aktivitas pembelajarannya dilakukan dengan menggunakan model
Problem-based Learning (PBL). Adapun langkah-langkah pembelajarannya,
sebagaimana disajikan pada Tabel 5 berikut:

Tabel 6 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 2


Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu

Orientasi peserta 1. Mengkondisikan dan 1.1. Bersiap untuk mengikuti “disesuaikan”


didik pada masalah memastikan kesiapan aktivitas pembelajaran.
peserta untuk mengikuti 1.2. Peserta didik berdoa
aktivitas pembelajaran; dan lanjut menyanyikan
2. Guru mengajak peserta salah satu lagu wajib
didik berdoa dilanjutkan nasional.
dengan menyanyikan salah 1.3. Peserta didik
satu lagu wajib nasional; membentuk kelompok
3. Guru menugaskan siswa sesuai arahan guru.
agar membentuk kelompok 1.4. Peserta didik membaca
sebanyak 4-6 kelompok; dan menganalisis kartu
4. Guru membagikan kartu kasus yang diberikan.
kasus 1 yang harus 1.5. Peserta didik
dianalisis bersama melalui menyelesaikan
diskusi kelompok (kartu permasalahan
kasus 2 terlampir); berdasarkan pertanyaan
5. Guru menyampaikan tugas yang diberikan dengan
yang akan diselesaikan cara berdiskusi.
peserta didik melalui diskusi
kelompok, yakni:
a. Bacalah kartu kasus yang telah
dibagikan;

105
b. Ikutilah dan selesaikanlah
masalah yang pada
petunjuk kerja;
c. Diskusikan dengan
kelompokmu;
d. Tuliskan hasil diskusi
kelompok pada kertas plano
dalam format lembar kerja 1
yang ada;
e. Presentasikan hasil diskusi
setiap kelompok di depan
kelas.
Mengorganisasikan 1. Guru memastikan setiap peserta 2.1. Peserta didik berdiskusi “disesuaikan”
peserta didik didik/anggota kelompok dan membagi tugas untuk
untuk belajar memahami tugas masing-masing menyelesaikan persoalan
kelompok yang harus berdasarkan instruksi yang
diselesaikan; diberikan.
2. Guru memberikan 2.2. Peserta didik/ anggota
kesempatan kepada peserta (kelompok) bertanya
didik/ anggota kelompok kepada guru tentang
untuk bertanya; tentang hal yang
3. Guru membagikan bahan belum dipahami
bacaan terkait aktivitas yang peserta didik terkait
telah disiapkan kepada peserta instruksi yang
didik. diberikan.
2.3. Masing-masing kelompok
membaca bahan bacaan
yang telah disiapkan.
Membimbing 1. Guru memantau keterlibatan peserta 3.4. Peserta didik/anggota “disesuaikan”
penyelidikan didik dalam mengumpulkan dan kelompok melakukan
individu maupun mengolah informasi yang pengumpulan data untuk
kelompok ditemukannya. bahan diskusi dan
2. Guru memantau dan mendampingi menyelesaikan masalah.
kelompok dalam memahami bahan 3.5. Peserta didik/anggota
bacaan yang ada; kelompok membaca dan
memahami bahan bacaan.

106
Unit
Pembelajaran
PEMROGRAMAN

3. Memotivasi peserta didik 3.6. Peserta didik/anggota


(kelompok) untuk berfikir logis dan kelompok berfikir logis
mencari solusi dalam dan mencari solusi dalam
menyelesaikan persoalan. menyelesaikan persoalan
sesuai instruksi.

Mengembangkan 1. Guru memantau diskusi dan 4.1. Kelompok melakukan “disesuaikan”


dan menyajikan membimbing pembuatan laporan diskusi untuk
hasil karya sehingga karya setiap kelompok menghasilkan solusi
siap untuk dipresentasikan. pemecahan masalah.
2. Mengarahkan untuk bisa
menghargai pendapat 4.2. Peserta didik/ anggota
teman/kelompok lain ketika kelompok mem-
menyampaikan/mempresentasikan presentasikan/menyajikan
hasil diskusi. hasil diskusi dalam bentuk
karya.

Menganalisis dan 1. Guru membimbing presentasi; 5.1. Setiap kelompok “disesuaikan”


mengevaluasi 2. Guru mendorong kelompok melakukan presentasi.
proses pemecahan memberikan penghargaan serta 5.2. Kelompok yang lain
masalah masukan kepada kelompok lain; memberikan apresiasi.
3. Guru bersama peserta didik 5.3. Bersama-sama guru
menyimpulkan materi. merangkum/membuat
kesimpulan sesuai
dengan masukan yang
diperoleh kelompok lain.

107
Kartu Kasus 2

SPRITE BERJALAN, MELOMPAT DAN BERPUTAR

108
Perhatikan algoritma Bloks berikut:

Gambar 4 Skrip algoritma balok kartu kasus


2

Sprite diprogram untuk dapat melakukan gerakan (berjalan, melompat dan berputar)
dengan blocks algoritma seperti diatas. Jika dilihat, blocks algoritma diatas terlalu sulit dan
membingungkan, karena blocks dibuat dalam satu blok tunggal yang panjang tanpa ada
struktur.

Berdasarkan skrip balok diatas, bagaimana caranya agar sprite dapat melakukan gerakan
(berjalan, melompat dan berputar) dengan membuat skrip balok yang lebih mudah ?

KATA KUNCI:
 Gunakan sub-program (fungsi atau prosedur)
Unit
Pembelajaran
PEMROGRAMAN

B. Lembar Kerja Peserta Didik

Lembar Kerja 1

Judul : Lembar Kerja 1


Tujuan : Peserta didik dapat:
 Memahami konsep pembuatan interaksi manusia dan
komputer.
 Memahami pembuatan robot yang dapat berinteraksi
dengan manusia pada bahasa pemrograman visual
Scratch 2.0.
 Memahami penggunaan variabel pada bahasa
pemrograman visual Scratch 2.0.
Mata Pelajaran : Informatika
Petunjuk kerja :
1. Diskusikanlah dalam kelompok dan selesaikanlah permasalahan kasus
berdasarkan katu kasus 1 yang diberikan.
2. Tuliskanlah jawabanmu pada kertas plano berdasarkan format lembar
kerja 1.
Format Lembar Kerja:

Jawaban berdasarkan hasil


Masalah
diskusi
a. Bagaimana algoritma atau
langkah-langkah (blocks) yang
harus disusun agar sprite dapat
berinteraksi ?

b. variabel apa yang dibuat agar


sprite dapat melakukan
interaksi seperti diatas?

109
Lembar Kerja 2

Judul : Lembar Kerja 2


Tujuan : Peserta didik dapat:
 Memahami konsep dekomposisi dalam program visual.
 Menyelesaikan permasalahn pada program visual
menggunakan sub program.
Mata Pelajaran : Informatika
Petunjuk kerja :
1. Diskusikanlah dalam kelompok dan selesaikanlah permasalahan
kasus berdasarkan kartu kasus 2 yang diberikan.
2. Selesaikanlah kasus tersebut dengan membuat program di Scratch 2.0
(online atau offline editor), dan simpanlah hasil kerja program kamu.
3. Diskusikan dengan kelompokmu dan jawablah pertanyaan nomor a
dan b pada kolom format lembar kerja yang telah disediakan!

Format Lembar Kerja:

Jawaban berdasarkan hasil


Masalah
diskusi
a. Bagaimana algoritma atau
langkah-langkah yang disusun
agar sprite dapat melakukan
gerakan (berjalan, melompat
dan berputar) kedalam sebuah
sub-program ?

b. Metode Sub-program apa yang


digunakan untuk menyelesaikan
kasus diatas ?

110
Unit
Pembelajaran
PEMROGRAMAN

C. Bahan Bacaan

1. Pemrograman Visual

Pemrograman visual adalah suatu metode pembuatan program dengan


menggunakan antarmuka yang dirancang secara visual atau berbasis GUI
(graphical User Interface) dan penulisan kode-kode programnya dilakukan
secara terpisah.

Bahasa pemrograman visual memiliki simbol-simbol grafis dan terdapat teks


yang mempunyari arti semantik yaitu menggunakan ekspresi visual seperti
gambar, grafik dan ikon yang sistematis dan mengacu pada aktivitas untuk
membuat sutau program.

Penulisan kode-kode program visual dibuat dengan drag dan drop dan
langsung dapat dilihat tampilannya sesuai apa adanya. Jadi, dalam Ilmu
komputer seorang programmer bisa menciptakan program dengan cara
mengklik ikon yang mewakili rutin-rutin pemrograman.

Kelebihan dari pemrograman secara visual adalah menghemat waktu dan


tenaga karena mudah dan kode yang dihasilkan dari desain secara visual
adalah “computer generated” sehingga mengurangi kemungkinan terjadinya
error atau kesalahan.

Salah satu contoh bahasa pemrograman yang menggunakan visual adalah


Scratch. Scratch adalah sebuah bahasa pemrograman visual untu lingkungan
pembelajaran yang memungkinkan pemula (murid, guru, pelajar atau orang
tua) untuk belajar membuat program tanpa harus memikirkan salah-benar
penulisan sintaks.

Pada unit algoritma kita telah mempelajari tentang antarmuka dan objek-
objek kerja pada pemrograman Scratch2.0. Selanjutnya kita akan
mempelajari bagaimana membuat algoritma lebih lanjut dalam
mendefinisikan variabel,
111
menyimpan dan mengubah data, pemakaian instruksi perulangan dan
kondisional serta memecahkan masalah pemrograman dengan metode
dekomposisi menggunakan prosedur dan fungsi.

2. Variabel

Variabel digambarkan sebagai sebuah wadah yang dapat menampung


suatu informasi sekaligus, seperti kata atau angka.

Dalam pemrograman komputer, variabel digunakan untuk menyimpan suatu


nilai. Nilai dapat berupa numerik (angka) atau alphanumerik (kata).

Kemampuannya dalam menampung dan menyimpan suatu informasi


menjadikannya sebagai referensi dan dapat dimanipulasi dibanyak tempat
yang berbeda dalam suatu program sehingga variabel sangat berguna dalam
pemrograman.

Gambar 5 Variabel
Sumber: https://www.codingkids.com.au

Variabel di dalam pemrograman di deklarasikan secara global atau lokal.


Maksudnya jika variabel dideklarasikan secara global maka nilai yang
disimpan dalam variabel dapat digunakan diseluruh statement atau barisan
pemrograman. Sedangkan jika variabel dideklarasikan secara lokal, maka
nilai yang disimpan dalam variabel hanya dapat digunakan pada statement
atau barisan tertentu yang menggunakan variabel.

112
Unit
Pembelajaran
PEMROGRAMAN

Nah, setelah kita memahami arti dan penggunaanya variabel diatas.


Selanjutnya kita akan mempelajari bagaimana variabel digunakan dalam
bahasa pemrograman visual Scratch 2.0.

Penggunaan Variabel di Scratch 2.0

Untuk mempelajari bagaimana variabel digunakan di Scratch, disini kita akan


membuat suatu program yang dapat men-generate angka secara acak. Sprite
akan menampilkan angka acak dari dua buah angka yang kita inisiasikan.
Nah, perhatikan dan cobalah bagaimana pembuatannya:

Pertama, kita harus membuat dua variabel yang dapat menyimpan angka
secara acak. Caranya kita menggunakan Script block data untuk membuat
variabel. Variabel pertama dinamakan rand1 dan kedua dinamakan rand2.
Dua variabel yang dibuat dideklarasikan secara global (digunakan untuk
semua sprite).

Gambar 6 Skrip variabel baru

Setelah kita membuat variabel tersebut, variabel akan ditampilkan seperti


gambar dibawah ini:

113
Gambar 7 Stage Sprite program variable

Kedua, kita harus men-set nilai dari dua variabel tersebut menjadi angka
acak setiap kali ketika bendera hijau diklik. Disini ada suatu aksi atau
kejadian yang dibutuhkan yaitu “ketika bendera hijau diklik”. Maka kita
mengunakan block

Event (Kejadian) dan pilih .

Untuk men-set angka maka kita gunakan blok .


Untuk memberikan nilai pada variabel rand1 dan rand2 yaitu antara 1

sampai 10, maka kita gunakan block dan drag block ini

kedalam block seperti berikut

.
Sehingga algoritmanya terbentuk seperti berikut:

114
Unit
Pembelajaran
PEMROGRAMAN

Variabel rand1 dan rand2 diset untuk dapat memilih angka secara acak
antara 1 sampai 10. Oleh karena itu, ketika bendera hijau diklik, kedua
variabel akan diberikan angka acak antara 1 samapi 10 untuk disimpan.
Ketiga, kita akan membuat Sprite Cat menampilkan dua angka yang diset. Kita

akan menggunakan block Tampilan . Agar


Sprite Cat menampilkan angka maka pada kolom Hello kita masukkan block

Operator dan masukkan variabel rand1 dan rand 2 pada

setiap kolomnya menjadi seperti

Sehingga algoritmanya yang terbentuk menjadi seperti berikut:

Maka ketika dijalankan Sprite akan menampilkan dua angka seperti berikut

Gambar 8 output program variabel

115
Pada gambar diatas, kita bisa melihat Scratch Cat memberi tahu kita nilai
rand1 (adalah 2) dan rand2 (adalah 4). Tapi hasil keluaran (output) itu
terlihat anehkan ? karena angka ditampilkan berdampingan tanpa spasi. Nah,
untuk membuatnya agar menampilan angka dengan spasi atau mudah
dibedakan dan dimengerti. Maka kita akan menggunakan Block Operator

gabung menjadi seperti

dan buat lagi

. Kemudian Blok Operator gabung tersebut


dimasukkan kedalam Block Tampilan Katakan seperti berikut

Sehingga algoritmanya yang terbentuk menjadi seperti berikut:

Scratch Cat akan menyebutkan angka dua angka random yang diset seperti
berikut:

116
Unit
Pembelajaran
PEMROGRAMAN

Nah, apakah sekarang kalian sudah paham bagaimana cara membuat variabel
di Scratch. Untuk mempelajari lebih lanjut kalian dapat membaca melalui e-
book pada link berikut:
https://www.it.iitb.ac.in/~vijaya/ssrvm/dokuwiki/media/ Scratch_5.pdf.

3. Dekomposisi

Jika kalian mempelajari tentang berfikir secara komputasional atau


Computational Thinking tentu kalian pernah mendengar istilah dekomposisi.
Dekomposisi adalah sebuah konsep dari berfikir secara kompitasional untuk
memecahkan suatu masalah yang kompleks melalui proses pembagian atau
bertahap untuk dijadikan lebih kecil atau rinci agar mudah untuk
diselesaikan.

Masalah atau Solusi


Tugas

Gambar 9 Ilustrasi dekomposisi 1

Nah, agar kalian lebih mudah memahami konsep dekomposisi mari kita lihat
salah satu penyelesaian masalah yang mudah dalam membuka sebuah pintu.
Jika tugas atau permasalahannya adalah membuka pintu maka langkah-
langah penyelesaiannya adalah:

 Jalan menuju pintu, kemudian;


 Buka pintu
Membuka pintu
Jalan menuju pintu
Buka pintu

Gambar 10 Ilustrasi dekomposisi 2

117
Nah, bagaimana jika masalahnya tugasnya lebih sulit, contohnya pergi
belanja bulanan. Tentu prosesnya akan lebih panjang, nah kita dapat
membuat proses tersebut ke dalam beberapa tugas yang lebih mudah.
Langkah-langkah atau tugas tersebut yaitu:

1. Keuangan: Berapa banyak uang harus kamu siapkan


2. Listing : Membuat list barang-barang apa saja yang habis atau harus
dibeli
3. Lokasi belanja : Menentukan tempat belanja atau toko untuk membeli
barang-barang yang telah dilist.
4. Perjalanan : menentukan kendaraan atau bagaimana cara menuju
tempat perbelanjaan.
5. Berbelanja : Memilih dan mengambil barang-barang berdasarkan list
yang dibuat, packing barang, lakukan pembayaran, kembali kerumah,
menyusun barang-barang yang dibeli, masukkan ke dalam temapat
penyimpanan.

Nah, lima langkah-langkah atau tugas diatas adalah proses dekomposisi.


Kenapa ? karena proses Belanja bulanan dibagai dalam 5 tahapan tugas
sederhana yang lebih mudah dan terstruktur.

Jika kalian telah memahami tentang dekomposisi berdasarkan penjelasan


diatas, selanjutnya bagaimana konsep dekomposisi diterapkan dalam
menyelesaikan persoalan di dalam membuat suatu program komputer.

Di dalam ilmu komputer, penerapan konsep dekomposisi dilakukan dalam


membuat sebuah program komputer. Dekomposisi diperlukan untuk
menyelesaikan permasalah dalam pembuatan kode program yang terlalu
panjang dan berulang. Sehingga proses dekomposisi di pemrograman dibuat
menjadi sub-program yang menggunakan sebuah fungsi atau prosedur.

118
Unit
Pembelajaran
PEMROGRAMAN

Agar kalian memahami proses dekomposisi dalam pembuatan program, kita


akan membahas di topik selanjutnya yaitu penggunaan konsep dekomposisi
dalam bahasa pemrograman visual Scratch 2.0.

4. Sub Program (Prosedur dan Fungsi )

Di dalam dunia pemrograman, ketika suatu algoritma ditulis dalam jumlah


baris kode yang banyak dan memakai pernyataan yang berulang-ulang, ini
menjadi suatu permasalahan karena algoritma tidak efisien dan sulit untuk
dibaca. Solusinya, agar algoritma dapat dibaca dan efisien dalam penulisan
kode dan tidak berulang, maka algoritma dapat dibagi menajdi beberapa
bagian prosedur atau fungsi.

Prosedur adalah bagian kode yang dapat dijalankan berulang kali, yang
berguna agar kita tidak harus menulis ulang kode yang sama beberapa kali.

Fungsi juga merupakan bagian dari kode yang dapat dijalankan berulang-
ulang, dengan satu perbedaan utama yaitu: fungsi harus memiliki setidaknya
satu input dan output. Input ke fungsi disebut argumen dan output disebut
return (pengembalian).

Prosedur atau fungsi dapat didefinisikan sebagai sub-algoritma yang


mengambil beberapa input dan menggunakannya dalam proses komputasi
untuk menghasilkan suatu hasil

Di dalam bahasa pemrograman visual Scratch penggunaan prosedur dan


fungsi akan membantu kita untuk menyederhanakan potongan blocks dalam
suatu set blocks yang panjang atau berulang.

Scratch memungkinkan pengguna untuk mendefinisikan balok baru atau


membuat balok baru atau lainnya untuk mendefiniskan sub-algoritma.
Namun pembuatan block baru ini terbatas, karena block baru tidak dapat

119
mengembalikan nilai apapun, atau memodifikasi parameter input-nya namun
hanya dapat memodifikasi variabelnya secara langsung.

Agar lebih memahami penggunaan prosedur dan fungsi dalam bahasa


pemrograman visual Scratch, diberikan contoh dalam membuat suatu
program di Scratch.

Kita akan membuat Sprite bergerak ke kanan ketika tombol panah kanan
pada keyboard ditekan atau ketika tombol K ditekan. Nah, algoritma blocks
ditulis seperti berikut:

Gambar 11 Skrip balok sub-program 1

Perhatikan blocks algoritma diatas, dapatkah kalian tunjukkan penggunaan


kode yang berulang ?.

Berdasarkan block algoritma diatas jika program dibuat tidak menggunakan


prosedur maka terdapat block kode yang harus ditulis sama dua kali, yaitu
block kode untuk menginisasi tombol panah kanan ditekan dan satu lagi
untuk menginisiasi tombol K ketika ditekan.

120
Unit
Pembelajaran
PEMROGRAMAN

Start Block Kode


Jika tombol panah kanan keyboard ditekan,
Block
gerakkan sprite dan kemudian lanjut ke
algoritma clok kode selanjutnya
Kode yang
berulang Jika tombol D keyboard ditekan, gerakkan
untuk sprite dan kemudian lanjut ke algoritma
mendefinisk bclok kode selanjutnya

Gambar 12 Skrip balok sub-program 2

Seperti yang kalian lihat diatas, terdapat block kode yang ditulis beberapa
kali, sehingga menjadi tidak efisien. Jika kita ingin menambahkan instruksi
gerakan lain maka kita harus menuliskan balok kode yang sama kembali.
Kita dapat memperbaiki permasalahan diatas dengan menggunakan sebuah
prosedur, di Scratch pembuatan prosedur ada di Block Balok Lainnya.

Gambar 13 Skrip balok lainnya

Klik Buat sebuah Balok, akan muncul tampilan seperti berikut:

121
Gambar 14 Skrip Balok Baru

Tulislah sebuah nama fungsi yang akan dibuat, disini kita akan membuat
fungsi dengan nama bergerak ke kanan. Setelah kita menuliskan nama
fungsi klik OK kemudian pada script area akan muncul sebuah fungsi yang
mengartikan fungsi bergerak ke kanan seperti berikut:

Mendeklarasikan
fungsi Bergerak
ke kanan

Gambar 15 Skrip balok Baru

Selanjutnya kita akan menggunakan Balok fungsi yang telah kita seperti
berikut:

122
Unit
Pembelajaran
PEMROGRAMAN

Pendeklarasian
Prosedur 1 fungsi, gerak dan
langkah berikutnya
Prosedur 2

Berdasarkan algoritma diatas kita dapat melihat yaitu:

1. Kita tidak harus menginisiasi proses secara berulang seperti pada


algoritma sebelumya, meskipun disini menggunakan baris kode yang
sama. Kita telah membuat fungsi gerak ke kanan yang dideklarasikan
untuk melakukan setiap task.
2. Untuk Task ketika ditekan tombol panah kanan dan Task ketika
ditekan tombol K kita hanya meletakkan fungsi Gerak ke kanan
sebagai input. Kita tidak harus menginisiasi gerakan pada setiap task
tersebut seperti sebelumnya.
3. Prosedur pertama menunjukkan pendeklarisan fungsi Gerak ke
kanan, dengan tipe datanya.
4. Prosedur kedua menunjukkan proses yang harus dilakukan.

Dengan menggunakan sub-program (prosedur dan fungsi) algoritma


menjadi terlihat mudah untuk dibaca dan dimengerti serta efisien.

Untuk mempelajari lebih lanjut tentang penggunaan sub-program di


Scratch, bisa dipelajari melalui link berikut www.agropolis.org/miss-
abms/initiationto-algorithmics-with-Scratch.pdf.

123
5. Pernyataan (Statement)

Seperti yang kita ketahui, suatu algoritma merupakan urutan


langkah- langkah komputasi yang mengubah masukkan (input)
menjadi keluaran atau (output). Kita dapat mendefinisikan setiap
langkah ini sebagai pernyataan (statement). Terdapat beberapa jenis
pernyataan dalam pemrogramaan yaitu (pernyataan berulang,
pernyataan kondisional, pernyataan pendeklarasian variabel dan
lainnya). Untuk menghitung output dari input, diperlukan beberapa
pernyataan yang dapat dieksekusi secara berurutan.

Secara khusus, urutan pernyataan diperlukan untuk melakukan


perhitungan komputasi, menyimpan nilai suatu variabel, mengulang
beberapa kali bagian yang sama dari pernyataan dengan berbagai
nilai pada suatu variabel, atau menjalankan dua atau lebih
pernyataan atau melakukan interaksi dengan pengguna.

Nah, kita dapat membedakan dua jenis pernyataan:


1. Pernyataan sederhana (simple statement)
Pernyataan ini merupakan perintah yang sangat penting, yang
terdiri dari 1 baru kode atau 1 balok skrip di Scratch.
2. Pernyataan sisipan (embedding statement)
Pernyataan ini melampirkan urutan pernyataan, contohnya
suatu pernyataan loop (pengulangan) atau pernyataan
bersyarat (kondisional). Pernyataan pengulangan (looping)
akan mengeksekusi urutan pernyataan terlampir beberapa
kali, sedangkan pernyataan bersyarat (kondisional) akan
mengeksekusi urutan pernyataan terlampir jika suatu kondisi
tertentu terpenuhi.
Sekarang kita akan membuat contoh pernyataan (statement) dengan
menggunakan bahasa pemrograman Scratch 2.0. Perhatikan dan cobalah
contoh berikut ini.

124
Unit
Pembelajaran
PEMROGRAMAN

Program 1 menggabungkan beberapa pernyataan

1. Buatlah skrip program seperti berikut:

Skrip diatas adalah contoh penggabungan dari beberapa pernyataan


sederhana.
2. Tambahkan pernyataan berikut ini:

Skrip program akan menjadi seperti berikut:

3. Jalankan (run) program

Apa yang akan terjadi pada Sprite ?

Program 2 menambahkan pernyataan pengulangan (looping statement)

1. Pada program 1, tambahkan skrip skrip ini merupakan sebuah

pernyataan pengulangan. Di Scratch skrip ini berada di bagian Kontrol.


2. Skrip pengulangan diatas berbentuk seperti huruf C yang memiliki bagian
kosong ditengahnya, bagian itu adalah tempat untuk menyisipkan beberapa
skrip sederhana.

125
3. Sisipkanlah Skrip pada skrip looping

menjadi seperti berikut ini

sehingga program menjadi seperti berikut:

Kemudian jalankan (run) program tersebut dan lihat hasilnya.

Nah, setelah kalian mencoba membuat dua contoh program diatas apa yang
dapat kalian pelajari melalui hasilnya?. Ya berdasarkan dari 2 percobaan
program diatas kita telah mempelajari yaitu:

 Pada program 1, kita mempelajari bagaimana menggabungkan


pernyataan sederhana menjadi sebuah algoritma untuk membuat
program di Scratch. Hasil dari Program 1 kita dapat lihat bahwa
Scratch akan bertambah besar setiap kali kita jalankan (run) dengan
mengklik bendera hijau .
Nah, disini kalian akan bertanya bagaimana jika kita ingin agar Scratch
bertambah besar tanpa harus dijalankan (run) dengan meng-klik
bendera hijau ?. Jawaban dari pertanyaan dapat kita lihat
pada Program 2.

126
Unit
Pembelajaran
PEMROGRAMAN

 Pada program 2, kita mempelajari bagaimana menggunakan statement


perulangan (looping) di Scratch. Pernyataan perulangan (looping) di
Scratch terletak pada Skrip Kontrol. Hasil dari program ini, Scratch akan
bertambah besar secara otomatis atau terus menerus tanpa harus meng-
klik bendera hijau setiap kalinya. Namun jika kalian perhatikan masih
terdapat permasalahan pada program tersebut, apa itu ?. Ya karena kita
menggunakan pernyataan perulangan selamanya, maka output program
tersebut akan selamanya menjalankan perintah tersebut tanpa berhenti.
Jenis pernyataan perulangan itu selamanya disebut pernyataan
perulangan tak terbatas (infinite loop).

6. Pernyataan berulang (looping statement)

Dalam algoritma, seringkali berguna untuk mengulangi beberapa pernyataan


yang sama, tujuannya untuk mempermudah pengerjaan program dan untuk
mempersingkat instruksi program. Nah bagaimana membuat suatu algoritma
menggunakan pernyataan berulang menggunakan bahasa pemrograman
Scratch ?. Perhatikan contoh berikut:

Program: Keliling lapangan.

Bagaimana jika kita membuat Sprite bergerak membentuk arah segiempat.


Algoritmanya adalah kita harus menuliskan pernyataan sebanyak 4 kali.

 Mulai
 Sprite gerak 100 langkah;
 Sprite gerak berputar kearah atas (kiri 90o);
 Ulangi gerakan sebanyak 4 kali;
 Selesai

Nah bagaimana jika kita ingin Sprite melakukan gerakan dengan arah
membentuk segiempat sebanyak 100 kali. Berarti kita harus menuliskan 400
pernyataan dengan menggunakan 1200 balok skrip. Pastinya kita akan
sangat
127
lelah karena membutuhkan waktu lama dan membuang banyak tenaga
sehingga program yang dibuat tidak efektif dan efisien. Nah bagaimana
solusinya ? Kita menggunakan pernyataan perulangan (repeat).

1. Kita harus memulai dengan menuliskan skrip gerakan


Skrip tersebut berarti bahwa ketika dimulai Sprite berada diposisi awal.
2. Kemudian, sprite bergerak 100 langkah, kita menggunakan nilai 100 agar
langkah sprite telihat lebih panjang ketika dijalankan.
3. Kemudian, setelah sprite bergerak maju 100 langkah, sprite akan memutar
ke kiri sebesar 90O;
4. Kemudian, ulangi sebanyak 4 kali;

Maka penulisan algoritmanya seperti berikut:

Nah, ketika kalian jalankan maka sprite akan melakukan gerakan dengan arah
membentuk segiempat. Jika kalian perhatikan dari skrip program diatas
terdapat skrip apakah kalian tahu arti dari skrip tersebut ?,
coba kalian keluarkan skrip tersebut dari set balok algoritma diatas dan lihat
hasilnya. Kalian akan menemukan kegunaan skrip tersebut.

Jika kalian tidak menggunakan pernyataan berulang (looping statement)


maka balok programnya untuk satu kali gerakan seperti berikut :

128
Unit
Pembelajaran
PEMROGRAMAN

Bayangkan jika kalian ingin membuat gerakan secara berulang sebanyak


beberapa kalo ?. Tentunya kalian membutuhkan banyak skrip balok yang
ditulis dalam beberapa kali. Untuk mempelajari lebih lanjut tentang
penggunaan pernyataan berulang (looping statement), kalian dapat
mempelajarinya melalui video di link berikut ini:
https://www.youtube.com/watch?v=m57Gmc7wFIM.

7. Pernyataan bersyarat (conditional statement)

Setelah kita mempelajari pernyataan berulang (looping statement),


selanjutnya kita akan mempelajari pernyataan bersyarat (conditional
statement). Alur algoritma harus dapat beradaptasi dengan berbagai macam
variabel atau suatu nilai input. Untuk itu algoritma memiliki penyataan
bersyarat (conditional statement). Pernyataan-pernyataan ini dapat
mengeksekusi seperangkat pernyataan jika dan hanya jika, pada suatu
kondisi benar atau memilih antar dua pernyataan tergantung pada nilai
kondisi.

Bentuk pernyataan bersyarat dapat ditulis dalam dua bentuk seperti berikut:
129
IF (kondisi bernilai benar)
THEN
Eksekusi pernyataan;
END IF
Atau

IF (kondisi bernilai benar)


THEN
Eksekusi pernyataan 1;
ELSE
Eksekusi pernyataan 2;
END IF

Kondisi yang terdapat pada pernyataan ini dapat berupa variabel (x=y),
(x>0), atau variabel lain yang dapat diartikan bernilai benar atau salah.
Pada bahasa pemrograman Scratch, bentuk pernyataan bersyarat
(conditional statement) terdapat pada skrip kontrol, seperti berikut:

Untuk lebih memahami, bagaimana pernyataan bersyarat (conditional


statement) digunakan dalam bahasa pemrograman Scratch, perhatikan
contoh program berikut:

Program: Pulang-Pergi

Kita akan membuat sprite bergerak maju dan ketika sampai diujung stage,
sprite akan kembali balik memutar menuju arah awal. Algoritma untuk dapat
membuat sprite bergerak pulang dan pergi adalah:

130
Unit
Pembelajaran
PEMROGRAMAN

Pada1.bahasa
Mulaipemrograman Scratch. Algoritma diatas dilakukan dengan cara:
2. Sprite bergerak 10 langkah;
1.3. Drag skrip geraka
Jika posisi x > 200nmaka sprite berputar 180o;
2.4. Untuk skripposisi
Kemudian pernyataan kondisional
x < -200 di Scratch terdapat di bagian Kontrol.
sprite berputar
180oskrip
3. Drag ;

4. Kemudian kita akan menyisipkan nilai kedalam balok skrip jika-maka. Untuk
membuat skrip nilai x >200, terdapat di bagian Operator.

5. Drag operator kemudian isikan skrip posisi x yang terletak di


bagian Gerak pada kolom pertama dan 200 pada kolom
kedua. Sehingga menjadi skrip seperti

6. Drag operator dan sisipkan kedalam skrip


Sehingga menjadi seperti

7. Kemudian, masukkan skrip berputar ke kanan 180o di bagian Gerakan

ke bagian tengah skrip pernyataan if sehingga


menjadi

8. Kemudian skrip posisi x < -200 sprite berputar 180o dilakukan dengan
kembali membuat skrip if dengan cara yang sama pada no (3-7) namun
perhatikan penggunaan operator untuk menuliskan skrip x < -200.

131
Sehingga menjadi skrip balok algoritma seperti dibawah ini:

Kemudian coba jalankan dan lihat bagaimana hasilnya ? Sprite akan bergerak
seperti arah pergi dan pulang namun pada arah pulang sprite menjadi
terbalik. Terlihat lucu dan menyenangkan bukan ? namun agar output atau
sprite yang dihasilkan bergerak secara teratur atau dengan arah yang tepat
maka coba kalian tambahkan skrip

yang terletak di bagian Gerakan. Drag skrip


tersebut dan letakkan dibawah skrip ketika bendera hijau diklik. Sehingga
skrip program menjadi seperti berikut:

Kemudian cobalah jalankan kembali dan lihat bagaimana hasilnya ? .


Pernyataan bersyarat (conditional statement) pada balok skrip
Memberitahu Scratch untuk memeriksa apakah

132
Unit
Pembelajaran
PEMROGRAMAN

posisi x sprite lebih besar dari 200 jika berada ditepi kanan stage, Jika
bernilai benar, Scratch memutar sprite 180o, jika tidak, maka tidak ada yang
terjadi. Pada penyataan kondisional juga terdapat balok jika-maka-jika tidak
(if-then- else) yang dapat digunakan untuk melakukan sesuatu yang
lain jika kondisi salah.

Terlihat menyenangkan bukan untuk belajar algoritma pada bahasa


pemrograman Scratch. Untuk mempelajari lebih lanjut tentang pernyataan
bersyarat (conditional statement) dapat dipelajari melalui video pada link
berikut https://www.youtube.com/watch?v=miVAZKzToqU.

133
PENGEMBANGAN PENILAIAN

A. Pembahasan Soal-soal

Topik Pemrograman Visual merupakan topik yang baru untuk dipelajari oleh
peserta didik Sekolah Menengah Pertama di Indonesia. Berdasarkan hasil
analisis literatur dari rujukan jurnal, buku dan artikel dari luar, berikut ini
pembahasan soal-soal Topik Pemrograman Visual:

1. Soal: Pemrograman Visual


Di dalam Ilmu Komputer, bahasa pemrograman visual adalah bahasa
pemrograman yang memungkinkan pengguna untuk membuat suatu
program dengan elemen-elemen program secara graphics. Scratch
merupakan salah satu bahasa pemrograman visual yang dikembangkan
oleh Research Group MIT yang dapat membuat animasi gerak menjadi
sebuah permainan komputer.
Berdasarkan penjelasan diatas, yang tidak termasuk dalam elemen-
elemen dari suatu permainan komputer adalah:
A. Antarmuka (user interface)
B. Grafik (graphics)
C. Kisah (story)
D. Kode (coding)

Penjelasan:
Scratch merupakan bahasa pemrograman visual yang dikembangkan oleh
Research Group MIT yang dapat membuat animasi gerak menjadi sebuah
permainan komputer. Menurut ahli komputer Sadigh terdapat lima
eleman utama dari suatu permainan komputer. Yakni graphics (grafik),
sound (suara), interface (antarmuka), gameplay (alur permainan dan story
(kisah). Jawaban: D

134
Unit
Pembelajaran
PEMROGRAMAN

2. Soal: Pemrograman Visual


Pemrograman visual memiliki alur kerja (work flow) yang berbeda dari
pemrograman non visual. Berikut yang termasuk alur kerja pemrograman
visual adalah:
A. Coding-compiling-testing
B. User interface-coding-compiling-testing
C. User interface-coding-pseudocode-compiling-testing
D. Coding-running-compiling-testing

Penjelasan:
Pemrograman visual adalah pembuatan program yang perancangan
antarmukanya dilakukan secara visual dan berbasis GUI (graphical user
interface) dan terpisah dari penulisan kode-kode program. Sedangkan
pemrograman non visual perancangan antar muka dilakukan pada proses
coding. Sehingga alur kerja pemrograman visual dimulai dari:
User interface – coding – compiling dan testing.
Jawaban: B

3. Scratch merupakan suatu bahasa pemrograman baru yang memudahkan


para pengguna dalam membuat animasi, cerita interaktif atau game
interaktif.
Pada pemrogram visual Scratch 2.0, objek antar muka yang digunakan
untuk membuat alur algoritma dengan meletakkan instruksi perintah
disebut:
A. Blok gerakan
B. Script area
C. Bendera hijau
D. Stage

Penjelasan:
Pada pemrogram visual Scratch 2.0, objek antar muka yang digunakan
untuk membuat alur algoritma dengan meletakkan instruksi perintah
disebut Script area.
Jawaban: B

135
4. Ciri-ciri dari suatu algoritma adalah memiliki masukan (input) atau
kondisi awal dan keluaran (output) atau kondisi akhir. Berdasarkan
gambar pada antar muka pemrograman visual Scratch dibawah ini,
masukan (input) dan keluaran (output) ditujukan pada bagian nomor:

A. 1 dan 3
B. 1 dan 2
C. 2 dan 4
D. 4 dan 3

Penjelasan:
Berdasarkan antarmuka pada bahas pemrograman Scratch,
 Input (masukan) yang berfungsi memberikan dan menuliskan
instruksi algoritma berada pada bagian script area. Pada gambar
ditujukan pada No. 1 dan;
 output (keluaran) yang berfungsi untuk menjalankan perintah
algoritma yang dituliskan berada pada bagian Stage. Pada gambar
ditujukan pada No. 2.
Jawaban: B

136
Unit
Pembelajaran
PEMROGRAMAN

B. Mengembangkan Soal HOTS

Pada bagian ini akan dimodelkan pembuatan soal yang memenuhi indikator
pencapaian kompetensi yang diturunkan dari kompetensi dasar
pengetahuan. Pengembangan soal diawali dengan pembuatan kisi-kisi agar
guru dapat melihat kesesuaian antara kompetensi, lingkup materi, dan
indikator soal. Selanjutnya, dilakukan penyusunan soal dikartu soal
berdasarkan kisi-kisi yang telah disusun sebelumnya. Contoh soal yang
dibuat menuntun proses berfikir level kognitif 3 Yaitu C4 (analisis), C5
(Evaluasi) dan C6 (Mengkreasi).
Contoh Penulisan Kisi-Kisi Soal Ujian Nasioan (UN)
Jenjang sekolah : Sekolah Menengah Pertama
(SMP) Mata pelajaran : Informatika
Jumlah Soal 4
Alokasi waktu : 90 menit
Tahun Pelajaran : 2019/2020

Indikator Materi Bentuk


Nomor Kompetensi yang Level
Pencapaian Indikator soal Kelas Soal
Soal Diuji kognitif
Kompetensi

1 1.2. Memahami Menerapkan Pemrograman Disajikan balok C4 VIII Pilihan


bahwa penggunaan algoritma peserta Ganda
bagaimana algoritma didik menganalisis
manusia dalam baris balok yang
berinteraksi membuat hilang
dengan robot dengan
komputer menggunakan
melalui bahasa
algoritma, dan pemrograman
bahwa visual Scratch
algoritma 2.0
dirancang
untuk
mengeneralisasi
solusi berbagai
situasi.

2 3.2. Memahami Menerapkan Pemrograman Disajikan balok C4 VIII Pilihan


bahwa penggunaan algoritma peserta Ganda
bagaimana variabel dalam didik menganalisis
manusia menyimpan keluaran (output)
berinteraksi dan mengubah dari program
dengan data pada
komputer bahasa
melalui pemrograman
algoritma, dan visual.
bahwa
137
algoritma
dirancang
untuk
mengeneralisasi
solusi berbagai
situasi.

3 3.6. Memahami Menerapkan Pemrograman Disajikan dua balok C4 VIII Pilihan


bahwa sebuah konsep algoritma program Ganda
program dapat dekomposisi peserta didik
didekomposisi dalam menganalisis
menjadi sub- membuat sub perbedaan dari dua
program. program pada jenis balok algoritma
program tersebut
visual.

4 3.6. Memahami Menerapkan Pemrograman Disajikan balok C4 VIII Pilihan


bahwa sebuah konsep algoritma sebuah Ganda
program dapat dekomposisi program, peserta
didekomposisi dalam didik memahami arti
menjadi sub- membuat sub dari skrip balok
program. program pada fungsi yang terdapat
program pada program
visual. tersebut

138
Unit
Pembelajaran
PEMROGRAMAN

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN


KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran: Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR Buku Sumber:
Pengetahuan/
Aplikasi ☑
Keterampilan Penalaran
:
3.6. Memahami bahwa
bagaimana manusia Nomor RUMUSAN BUTIR SOAL
berinteraksi dengan Soal Dibawah ini adalah balok program sederhana.
komputer melalui 1 Pada baris akhir balok program hilang.
algoritma, dan bahwa
algoritma dirancang
untuk mengeneralisasi
solusi berbagai situasi.
LINGKUP MATERI :
Algoritma dan
Pemrograman
MATERI :
Pemrograman Kunci
INDIKATOR SOAL : Jawaban
Disajikan balok algoritma
C
peserta didik
menganalisis baris balok
yang hilang
Ketika dieksekusi pengguna akan memasukkan
nama yaitu Ani. Jika kita ingin Sprite
menampilkan “Halo Ani”, balok program apa
yang harus ditulis dibagian akhir program ?

A.

B.

C.
139
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN
KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran: Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
Keterampilan
:
3.2. Memahami bahwa
bagaimana manusia Nomor RUMUSAN BUTIR SOAL
berinteraksi dengan Soal Budi menulis sebuah program untuk
komputer melalui membaca input (masukkan) dari pengguna.
algoritma, dan bahwa 2 Dia membuat sebuah variabel yang bernama
algoritma dirancang input. Apa yang akan menjadi nilai akhir
untuk mengeneralisasi variabel tersebut ketika program dieksekusi ?
solusi berbagai situasi.
LINGKUP MATERI :
Algoritma dan
Pemrograman
MATERI :
Pemrograman
Kunci
INDIKATOR SOAL : Jawaban
Disajikan balok algoritma
A
peserta didik menganalisis A. Halo !.
keluaran (output) dari
program B. Name pengguna.
C. Nama teman pengguna.
D. Jawaban.
140
Unit
Pembelajaran
PEMROGRAMAN

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN


KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran : Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR : Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
3.6. Memahami bahwa Keterampilan

sebuah program Nomor RUMUSAN BUTIR SOAL


dapat didekomposisi Soal Perhatikan dua balok program dibawah ini:
menjadi sub-program.
LINGKUP MATERI : 3
Algoritma dan Pemrograman
MATERI :
Pemrograman
INDIKATOR SOAL : Kunci
Disajikan dua balok
Jawaban
algoritma program peserta
didik menganalisis
D
perbedaan dari dua jenis
balok algoritma tersebut

Kedua Program diatas akan menghasilkan


output Sprite bergerak ke kanan ketika
tombol arah panah dan tombol k pada
keyboard ditekan. Perbedaan penyusunan
program apa yang dapat kalian lihat pada
Program 1 dan Program 2 untuk menjalankan
dua task (tugas) perintah untuk
menyelesaikan suatu permasalahn?
A. Program 1 menggunakan balok
gerakan disetiap inisiasi tugas (task)
141
sedang Program 2 tidak menggunakan
balok gerakan disetiap inisiasi tugas
(task).
B. Setiap tugas (task) pada program 1
harus diinisiasikan kembali dalam
setiap prosesnya sedangkan tugas
(task) pada program 2 hanya
dinisiasikan sekali dengan
menggunakan deklarasi fungsi.
C. Algoritma pada program 1 dibentuk
dalam 1 set balok program sedangkan
algoritma pada program 2 dibentuk
dalam 2 set balok program.
D. Program 1 tidak terdapat pembuatan
skrip Balok lainnya sedangkan
program 2 terdapat pembuatan skrip
Balok lainnya.

142
Unit
Pembelajaran
PEMROGRAMAN

KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN


KARTU SOAL
Tahun Pelajaran 2019/2020
PAKET - …
Jenis Sekolah : SMP Kurikulum : 2013
Kelas : VII Bentuk Soal : Pilihan Ganda
Mata Pelajaran : Informatika Nama Penyusun : Nurul Hayati
KOMPETENSI DASAR Buku Sumber:
☑ Pengetahuan/ Aplikasi Penalaran
Keterampilan
:
3.6. Memahami bahwa
sebuah program Nomor RUMUSAN BUTIR SOAL
dapat didekomposisi Soal Perhatikan balok program dibawah ini:
menjadi sub-program.
LINGKUP MATERI : 4
Algoritma dan
Pemrograman
MATERI :
Pemrograman
Kunci
INDIKATOR SOAL :
Jawaban
Disajikan balok algoritma
sebuah program, peserta
B
didik memahami arti dari
skrip balok fungsi yang
terdapat pada program
tersebut Program diatas menggunakan sub-program
prosedur dan fungsi dalam penyusunan
algoritmanya. Pembuatan fungsi dilakukan
dengan membuat balok baru yaitu Gerak ke
kanan.
Berdasarkan penjelasan program diatas, skrip
balok

Memiliki arti………
A. Menginisiasi perintah untuk
melakukan gerakan ke kanan.
B. Balok pendeklarasian fungsi untuk
input Gerak ke kanan.
C. Mengartikan perintah bergerak ke
kanan.
D. Sebagai perintah awal pada penulisan
program.
143
KESIMPULAN

Pemrograman visual yang dipelajari pada unit ini merupakan salah satu
materi yang digunakan dalam perkembangan suatu teknologi. Para anak dan
remaja di luar negeri diajarkan untuk dapat memahami cara pembuatan
program komputer dengan menggunakan pemrograman visual. Ini dilakukan
dengan tujuan untuk mengasah kemampuan berfikir dan penalaran mereka
sejak dini untuk menghasilkan suatu karya teknologi dimasa depan.

Untuk itu dengan dipelajarinya pemrograman visual pada subunit ini, guru di
Indonesia diharapkan dapat memiliki dasar pengetahuan untuk mengajarkan
materi pemrograman visual ke peserta didik yang disesuaikan dengan
indikator yang telah disusun, terutama dalam memfasilitasi kemampuan
bernalar peserta didik. Selain itu, materi ini juga aplikatif untuk guru sendiri
sehingga guru diharapkan dapat menerapkannya dalam kehidupan sehari-
hari.

Bagi peserta didik melalui pembelajaran pada subunit ini diharapkan dapat
mendorong, mengasah dan meningkatkan kreatifitas mereka dalam belajar
matematika dan konsep komputer, logika dan algoritma, penalaran atau
berfikir komputasional, pemecahan masalah serta kemampuan
berkolaborasi, serta diharapkan dapat menjadi dasar pengetahuan bagi
mereka untuk menghasilkan suatu karya teknologi dan menjadikan mereka
sebagi manusia yang produktif

Melalui model Problem-based Learning (PBL) yang digunakan dalam aktivitas


pembelajaran ini diharapkan juga guru dan peserta didik mampu menyajikan
hasil karya pemrograman visual sederhana.

144
Unit
Pembelajaran
PEMROGRAMAN

UMPAN BALIK

Dalam rangka mengetahui pemahaman terhadap subunit ini, Saudara perlu


mengisi lembar persepsi pemahaman. Berdasarkan hasil pengisian
instrumen ini, Saudara dapat mengetahui posisi pemahaman beserta umpan
baliknya. Oleh karena itu, isilah lembar persepsi diri ini dengan objektif dan
jujur.

Lembar Persepsi Pemahaman Subunit

No Aspek Kriteria

1 2 3 4

1. Memahami indikator yang telah


dikembangkan berdasarkan
Kompetensi Dasar
2 Mampu menghubungkan konten
dengan fenomena kehidupan sehari-
hari
3 Merasa bahwa tahapan aktivitas
pembelajaran dapat
mengembangkan HOTS peserta
didik
4 Memahami tahapan aktivitas yang
disajikan dengan baik
145
5 Mampu dengan baik
mengaplikasikan aktivitas
pembelajaran di dalam kelas
6 Memahami dengan baik Lembar
Kerja peserta didik yang
dikembangkan
7 Mampu melaksanakan dengan baik
Lembar Kerja peserta didik yang
dikembangkan
8 Memahami Konten secara menyuluh
dengan baik
9 Memami prosedur penyusunan soal
HOTS dengan baik
10 Mampu membahas soal HOTS yang
disajikan dengan tepat

Jumlah

Jumlah Total

146
Unit
Pembelajaran
PEMROGRAMAN

Keterangan Pedoman Penskoran

1=tidak menguasai

2 = cukup menguasai Skor = Jumlah Total X 100

3 = menguasai 40

4 = Sangat Menguasai

Keterangan Umpan Balik

Skor Umpan Balik

< 70 : Masih banyak yang belum dipahami, di antara


konten, cara membelajarkannya,
mengembangkan penilian dan melaksanakan
penilaian berorientasi HOTS. Saudara membaca
ulang subunit ini dan mendiskusikannya
dengan dengan fasilitator di MGMP sampai anda
memahaminya.

70- : Masih ada yang belum dipahami dengan baik, di


79 antara konten, cara membelajarkan,
mengembangkan penilian dan melaksanakan

147
penilaian berorientasi HOTS. Saudara perlu
mendiskusikan bagian yang belum dipahami
dengan fasilitator atau teman lain di MGMP.

80- : Memahami konten, cara membelajarkan,


89 mengembangkan penilian dan melaksanakan
penilaian berorientasi HOTS dengan baik.

> 90 : Memahami konten, cara membelajarkan,


mengembangkan penilian dan melaksanakan
penilaian berorientasi HOTS dengan sangat
baik. Saudara dapat menjadi fasilitator bagi
teman- teman lain di MGMP untuk
membelajarkan subunit ini.

148
Paket Unit Pembelajaran
Algoritma dan Pemrograman

PENUTUP

Paket unit pembelajaran Algoritma dan Pemrograman terdiri dari 2 subunit


pembelajaran, yaitu subunit pembelajaran 1 terkait algoritma serta sub unit
2 terkait pemrograman. Subunit pembelajaran 2 merupakan kelanjutan dari
subunit pembelajaran 1. Untuk dapat menguasai subunit pembelajaran 2,
Anda perlu menguasai terlebih dahulu subunit pembelajaran 1 karena
merupakan satu kesatuan.

Unit ini dikembangkan dari pemetaan dan analisis Kompetensi Dasar (KD)
berdasarkan Peraturan Menteri Pendidikan dan Kebudayaan RI Nomor 37
Tahun 2018. Berdasarkan Permendikbud RI Nomor 37 tahun 2018 tentang
Perubahan atas Permendikbud Nomor 24 tahun 2016 tentang KI-KD
Pelajaran pada Kurikulum 2013 pada Pendidikan Dasar dan Pendidikan
Menengah. Dalam permendikbud tersebut diatur kedudukan mata pelajaran
informatika pada jenjang SMP/MTsN, SMA/MAN dapat dilaksanakan melalui
tatap muka. Mata pelajaran informatika bukan merupakan mata pelajaran
wajib bagi satuan pendidikan jenjang SMP/MTsN/SMA/MAN akan tetapi
dikondisikan pada satuan pendidikan akan ketersediaan tenaga pengajar dan
sarana pendukung yang memungkinkan diajarkannya mata pelajaran
informatika.

Oleh karena itu, paket unit Algoritma dan Pemrograman berupaya dibuat
secara optimal untuk menghadirkan materi atau bahan bacaan yang terkait
dengan Kompetensi Dasar mata pelajaran Informatika jenjang SMP
berdasarkan permendikbud nomor 37 tahun 2018 tentang KI-KD. Materi
bahan bacaan, telah dianalisis berdasarkan keterkaitan antara modul PKB
dengan KD pada permendikbud nomor 37 tahun 2018 tentang KI-KD jenjang
SMP. Hasil analisis tersebut dapat diketahui materi modul PKB yang tidak
berelasi dengan KD sehinga dasar inilah yang menjadi pijakan penulis dalam
melahirkan bahan bacaan sebagai unit pembelajaran yang dapat dijadikan

15
1
rujukan pada kegiatan PKB berbasis zonasi bagi MGMP Informatikan jenjang
SMP.

Dengan belajar menggunakan modul ini diharapkan Anda dapat


meningkatkan kompetensi pembelajaran terkait algoritma dan pemrograman
dan juga meningkatkan kemampuan dalam mengembangkan dan
menyelesaikan soal Higher Order Thinking Skills (HOTS) terkait kedua materi
tersebut.

15
2
Paket Unit Pembelajaran
Algoritma dan Pemrograman

DAFTAR PUSTAKA

1. K-12 Computer Science Framework Steering Comitte. https://k12cs.org/wp-


content/uploads/2016/09/K%E2%80%9312-Computer-Science-Framework.pdf
(diakses 12 Maret).
2. K-12 Computer Computer Science Steering Comitte. https://k12cs.org/wp-
content/uploads/2016/09/K%E2%80%9312-CS-Framework-Guidance-for-Standards-
Developers.pdf (diakses 12 Maret).
3. Scratch. https://scratch.mit.edu (diakses 12 Maret).
4. Getting Started With Scratch version 2.0. https://cdn.scratch.mit.edu/scratchr2. (diakses
12 Maret).
5. Ronald Bourret. An Introduction to Programming with Scratch.
http://www.rpbourret.com/scratch/Bourret-ScratchProgramming.pdf (diakses 12
Maret).
6. Benoit Gaudou.2015. Initiation to Algorithmics with Scratch.
http://www.agropolis.org/miss-abms/initiationto-algorithmics-with-scratch.pdf
(diakses 12 Maret).
7. Introduction to Scratch. http://www.it.iitb.ac. (diakses 12 Maret).
8. Advanced Scratch Programming. http://www.it.iitb.ac. (diakses 12 Maret).
9. Simple Animation with Scratch. http://www.it.iitb.ac. (diakses 12 Maret).
10. Programming Multiple Sprites in Scratch. http://www.it.iitb.ac. (diakses 12 Maret).
11. Scratch Primary Lesson 1. http://creativecomputerlab.com (diakses 12 Maret).
12. Scratch Primary Supplemental Lessons Tutors Manual Diving Deeper With Scratch.
http://creativecomputerlab.com (diakses 12 Maret).
13. Introduction to Programming with Scratch 2. http://www.belpercomputing.com/year-
7/term-3-snap-programming/introduction-to-programming-with-scratch-1-4/.
(diakses 12 Maret).
14. Selection in Scratch. http://www.belpercomputing.com/year-7/term-3-snap-
programming/2-selection-in-scratch/. (diakses 12 Maret).
15. Making Variables and List in Scratch. http://www.belpercomputing.com/year-7/term-
3-snap-programming/making-variables-and-lists-in-scratch/. (diakses 12 Maret).
16. Developing Math through Scratch. http://code-it.co.uk/wp-
content/uploads/2015/05/scratchmaths.pdf. (diakses 12
Maret).

15
3
17. Scratch Online Interface.
https://portal.sd38.bc.ca/public/8zd3fg5/Pages/scratch_interface.aspx. (diakses
12 Maret).
18. Seng Hansun. 2014. Scratch Pemrograman Visual untuk Semuanya. ULTIMA
InfoSys. 5(1):14-48.
19. Joko H, Prasetyo. Belajar Pemrograman Scratch Bagian1.
https://www.slideshare.net/jokohprasetyo/belajar-pemrograman-scratch-part-
1. (diakses 12 Maret).
20. Variables And How To Use Them In Scratch.
https://www.codingkids.com.au/blog/variables-and-how-to-use-them-in-
scratch/. (diakses 12 Maret).
21. What is variable in computing. https://www.theschoolrun.com/what-is-a-
variable-in-computing. (diakses 12 Maret).
22. What are procedures or functions. https://www.theschoolrun.com/what-are-
procedures-and-functions. (diakses 12 Maret).
23. Tim Pengajar Institute Teknologi Bandung. 2013. Pengantar Berpikir
Komputasi dan Pemrograman Prosedural.
https://slideplayer.info/slide/13919404/. (diakses 12 Maret).
24. Abdul Karim Syahputra. Pengantar Pemrograman Visual Dan Pengenalan
Visual Studio 2010.
25. Scratch Cards. https://resources.scratch.mit.edu/www/cards/en/scratch-cards-
all.pdf. (Diakses 12 Maret).
26. Shaker Mohammad.,et al. 2013. Evolving Playable Content for Cut the Rope
through a Simulation-Based Approach. Proceeding of the Ninth AAAI
Conference on Artificial Intelligence and Interactive Digital Entertainment.
27. Review Cut the Rope:Magic-Sihir Om Nom. https://id.techinasia.com/review-cut-
the-rope-magic (diakses 12 Maret).
28. Review Cut the Rope: Time Travel-A Must Have Game.
https://id.techinasia.com/review-cut-the-rope-time-travel (diakses 12 Maret).

15
4

Anda mungkin juga menyukai