mata pelajaran informatika dasar-dasar pemrograman · dasar dasar pemrograman. program pkb melalui...
TRANSCRIPT
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAANLEMBAGA PENGEMBANGAN DAN PEMBERDAYAAN
PENDIDIK DAN TENAGA KEPENDIDIKANBIDANG KELAUTAN PERIKANAN
TEKNOLOGI INFORMASI DAN KOMUNIKASI2019
MODULINSPIRASI
Unit PembelajaranProgram Pengembangan Keprofesian Berkelanjutan (PKB)melaluiPeningkatan Kompetensi Pembelajaran (PKP)Berbasis Zonasi
Dasar-DasarPemrograman
Mata Pelajaran
Informatika
Unit Pembelajaran
PROGRAM PENGEMBANGAN KEPROFESIAN BERKELANJUTAN (PKB)
MELALUI PENINGKATAN KOMPETENSI PEMBELAJARAN (PKP)
BERBASIS ZONASI
MATA PELAJARAN FISIKA SEKOLAH MENENGAH ATAS (SMA)
DASAR-DASAR
PEMROGRAMAN
Penulis:
NURUL HAYATI, S.TI
Penyunting:
Arnis
Desainer Grafis dan Ilustrator:
TIM Desain Grafis
Copyright © 2019
Direktorat Pembinaan Guru Pendidikan Menengah dan Pendidikan Khusus
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
DASAR DASAR PEMROGRAMAN
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
2
KATA SAMBUTAN
Peran guru profesional dalam proses pembelajaran sangat penting sebagai
kunci keberhasilan belajar peserta didik. Guru professional adalah guru yang
kompeten dalam membangun dan mengembangkan proses pembelajaran
yang baik dan efektif sehingga dapat menghasilkan peserta didik yang pintar
dan pendidikan yang berkualitas. Hal tersebut menjadikan guru sebagai
komponen yang menjadi fokus perhatian pemerintah pusat maupun
pemerintah daerah dalam peningkatan mutu pendidikan terutama
menyangkut kompetensi guru.
Pengembangan profesionalitas guru melalui Program Peningkatan
Kompetensi Pembelajaran (PKP) merupakan upaya Kementerian Pendidikan
dan Kebudayaan melalui Direktorat Jenderal Guru dan Tenaga Kependikan
dalam upaya peningkatan kompetensi guru. Program PKP bertujuan untuk
meningkatkan kompetensi peserta didik melalui pembinaan guru dalam
merencanakan, melaksanakan sampai dengan mengevaluasi pembelajaran
yang berorientasi pada keterampilan berpikir tingkat tinggi (Higher Order
Thinking Skills/HOTS).
Pusat Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependidikan
(PPPPTK), Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga
Kependidikan Kelautan Perikanan Teknologi Informasi dan Komunikasi
(LP3TK KPTK) dan Lembaga Pengembangan dan Pemberdayaan Kepala
Sekolah (LP2KS) merupakan Unit Pelaksana Teknis di lingkungan Direktorat
Jenderal Guru dan Tenaga Kependidikan yang bertanggung jawab dalam
mengembangkan perangkat dan melaksanakan peningkatan kompetensi
guru sesuai bidangnya.
3
Adapun perangkat pembelajaran yang dikembangkan tersebut adalah Unit
Pembelajaran. Unit pembelajaran ini berisi materi pembelajaran sesuai target
Kompetensi Dasar, contoh-contoh aktivitas pembelajaran dan penilaian yang
bisa menginspirasi guru dalam pelaksanaan pembelajaran yang berorientasi
pada keterampilan berpikir tingkat tinggi. Mari kita sukseskan Program
Peningkatan Kompetensi Pembelajaran ini untuk mewujudkan Guru Mulia
Karena Karya.
Direktur Pembinaan Guru
Pendidikan Menengah dan
Pendidikan Khusus,
Ir. Sri Renani Pantjastuti, MPA NIP 196007091985032001
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
4
KATA PENGANTAR
Peningkatan kompetensi merupakan salah satu program yang menjadi fokus
Kementerian Pendidikan dan Kebudayaan. Bukan hanya peningkatan
kompetensi pendidik dan tenaga kependidikan saja, namun juga peningkatan
kompetensi peserta didik. Karena guru profesional adalah guru yang
kompeten dalam membangun dan mengembangkan proses pembelajaran
yang baik dan efektif sehingga dapat menghasilkan peserta didik yang pintar
dan pendidikan yang berkualitas.
Peningkatan kompetensi bagi peserta didik salah satunya dilakukan melalui
Program Peningkatan Kompetensi Pembelajaran yang selanjutnya disingkat
dengan Program PKP. Program ini bertujuan untuk meningkatkan
kompetensi peserta didik melalui pembinaan guru dalam merencanakan,
melaksanakan sampai dengan mengevaluasi pembelajaran yang berorientasi
pada keterampilan berpikir tingkat tinggi (Higher Order Thinking
Skills/HOTS). Program ini merupakan salah satu pendukung program
Pengembangan Keprofesian Berkelanjutan (PKB). Jika program PKB fokus
pada peningkatan kompetensi guru baik pedagogi maupun profesional, maka
program PKP lebih berfokus pada upaya memintarkan peserta didik melalui
pembelajaran berpikir tingkat tinggi.
Program PKP memerlukan beberapa perangkat pendukung diantaranya
adalah Unit Pembelajaran. Unit pembelajaran ini berisi materi pembelajaran
sesuai target Kompetensi Dasar, contoh-contoh aktivitas pembelajaran dan
penilaian yang bisa menginspirasi guru dalam pelaksanaan pembelajaran
yang berorientasi pada keterampilan berpikir tingkat tinggi.
5
DAFTAR ISI
Hal
KATA SAMBUTAN _______________________________ 2
KATA PENGANTAR ______________________________ 4
DAFTAR ISI ___________________________________ 5
DAFTAR GAMBAR _______________________________ 8
DAFTAR TABEL ________________________________ 8
PENDAHULUAN _______________________________ 10
KOMPETENSI DASAR ___________________________ 12
A. Kompetensi Dasar dan Target Kompetensi ______________________________ 12
B. Indikator Pencapaian Kompetensi _______________________________________ 13
APLIKASI DI DUNIA NYATA _____________________ 16
A. Meningkatkan Kemampuan Berpikir Secara Logis ______________________ 16
B. Mengembangkan Cara Berpikir Dengan Sistematis _____________________ 16
SOAL-SOAL UN/USBN __________________________ 18
A. CONTOH SOAL _____________________________________________________________ 18
B. Pembahasan Soal __________________________________________________________ 22
BAHAN PEMBELAJARAN ________________________ 25
A. Aktivitas Pembelajaran ____________________________________________________ 25
Aktivitas 1 Memahami Notasi Algoritma ________________________________________ 25
Aktivitas 2 Mengenal Bahasa Pemrograman Tingkat Tinggi __________________ 29
Aktivitas 3 Mengenal Konstruksi Bahasa Pemrograman_______________________ 32
Aktivitas 4 Mengenal Conditional Statement (Pernyataan Bersyarat) dan
Algoritma Perulangan (Looping) _________________________________________________ 35
Aktivitas 5 Mengenal Array ______________________________________________________ 38
Aktivitas 6 Mengenal Konsep Graph _____________________________________________ 41
B. Lembar Kerja Peserta Didik _______________________________________________ 43
Lembar Kerja Peserta Didik 1 ____________________________________________________ 43
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
6
Lembar Kerja Peserta Didik 2 _____________________________________________________47
Lembar Kerja Peserta Didik 3 _____________________________________________________49
Mengenal Konstruksi Bahasa Pemrograman ____________________________________49
Lembar Kerja Peserta Didik 4 _____________________________________________________51
Lembar Kerja Peserta Didik 5 _____________________________________________________54
Mengenal Array ____________________________________________________________________54
Lembar Kerja Peserta Didik 6 _____________________________________________________56
Graph ________________________________________________________________________________56
C. Bahan Bacaan _______________________________________________________________ 58
1. Sejarah Algoritma dan Logika _______________________________________________58
2. Definisi Algoritma ____________________________________________________________59
3. Dasar Penyusunan Algoritma _______________________________________________60
4. Struktur dasar algoritma ____________________________________________________60
5. Penulisan Algoritma__________________________________________________________63
5.1. Kalimat Deskriptif _________________________________________________________63
5.2. Flowchart (Diagram alur) ________________________________________________64
6. Ilustrasi Pemahaman Algoritma ____________________________________________66
7. IDE (Integrated Development Program) ____________________________________69
8. Struktur Data Algoritma _____________________________________________________71
8.1. Tipe Data ___________________________________________________________________72
8.1.1. Tipe Dasar _________________________________________________________________73
8.1.2. Tipe data bentukan _______________________________________________________73
8.2. Konstanta dan Variabel ___________________________________________________75
8.3. Komentar dan Pernyataan _______________________________________________77
8.4. Operator ___________________________________________________________________78
1. Operator Aritmatika _________________________________________________________78
2. Operator Penambahan (Increment) dan Pengurangan (Decrement) _____79
3. Operator Penugasan _________________________________________________________80
4. Operator Pembandingan _____________________________________________________80
5. Operator Logika ______________________________________________________________81
6. Operator bit ___________________________________________________________________82
9. Pernyataan bersyarat (Kondisional) ________________________________________84
A. Pernyataan If _________________________________________________________________85
7
B. Pernyataan if-else ___________________________________________________________ 86
C. Pernyataan switch-case _____________________________________________________ 88
9.1. Pernyataan Perulangan (Loop) _________________________________________ 90
1. While Loop (Perulangan While) ____________________________________________ 91
2. do-while Loop (Perulangan do-while) _____________________________________ 92
3. For Loop (Perulangan for) __________________________________________________ 93
10. Array ______________________________________________________________________ 94
10.1. Mendeklarasikan Array __________________________________________________ 96
10.2. Membuat Array ___________________________________________________________ 96
10.3. Memanipulasi data dalam Array ________________________________________ 96
10.4. Array Multidimensi ______________________________________________________ 97
11. Graph ______________________________________________________________________ 98
10.1 Sejarah Singkat Teori Graf _______________________________________________ 99
10.2 Definisi dan Teminologi Graf ____________________________________________ 99
PENGEMBANGAN PENILAIAN ___________________ 102
A. Pembahasan Soal-soal ____________________________________________________ 102
B. Mengembangkan Soal HOTS _____________________________________________ 108
KESIMPULAN _________________________________ 115
UMPAN BALIK _______________________________ 116
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
8
DAFTAR GAMBAR
Hal
Gambar 1 Belajar Pemrograman untuk Pemula ________________________________ 16
Gambar 2. Berpikir Kritikal/Sistematis _________________________________________ 17
Gambar 3 . Abu Ja’far Mohammed Ibn Musa Al-Khowarizmi _________________ 58
Gambar 4 . Alur mengupas kentang _____________________________________________ 67
Gambar 5 . Flowchart mengupas kentang ______________________________________ 68
Gambar 6 IDE Neatbeans _________________________________________________________ 71
Gambar 7 Perbedaan tipe data __________________________________________________ 72
Gambar 5 Variabel ________________________________________________________________ 76
Gambar 9 . Alur perintah IF ______________________________________________________ 85
Gambar 10 . Alur perintah If-else ________________________________________________ 86
Gambar 11 . Alur jenis perulangan ______________________________________________ 91
Gambar 12 . Alur array ___________________________________________________________ 95
Gambar 13 . contoh Indeks array multidimensional ___________________________ 98
DAFTAR TABEL
Hal
Tabel 1. Kompetensi Dasar dan Target Kompetensi ___________________________ 12
Tabel 2. Indikator Pencapaian Kompetensi ____________________________________ 13
Tabel 3 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1
_______________________________________________________________________________ 26
Tabel 4 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 2
_______________________________________________________________________________ 29
9
Tabel 5 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 3
_______________________________________________________________________________ 32
Tabel 6 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 4
_______________________________________________________________________________ 35
Tabel 7 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 5
_______________________________________________________________________________ 38
Tabel 8 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 6
_______________________________________________________________________________ 41
Tabel 9 Simbol -simbol flowchart _______________________________________________ 65
Tabel 10. Operator Aritmatika __________________________________________________ 78
Tabel 11. Operator increment dan decrement __________________________________ 79
Tabel 12. Operator penugasan __________________________________________________ 80
Tabel 13. Operator penugasan __________________________________________________ 80
Tabel 14. Operator logika ________________________________________________________ 81
Tabel 15. Kebenaran logika AND (&&) _________________________________________ 81
Tabel 16. Kebenaran logika OR (||) _____________________________________________ 81
Tabel 17. hasil Operator & _______________________________________________________ 82
Tabel 17. hasil Operator | ________________________________________________________ 83
Tabel 19. hasil Operator ^ _______________________________________________________ 83
Tabel 20. tabel indeks array _____________________________________________________ 96
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
10
PENDAHULUAN
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 algoritma dan 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.
11
Komponen-komponen di dalam subunit ini dikembangkan dengan tujuan
agar guru dapat dengan mudah memfasilitasi peserta didik untuk memahami
dasar-dasar pemrograman komputer dari demo dan tutorial, memahami
notasi dan struktur algoritma di lingkungan pemrograman bahasa tingkat
tinggi, 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; Integrated Development Program
(IDE); Struktur data algoritma, pernyataan bersyarat (kondisional),
pernyataan perulangan (loop), array dan teori graph.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
12
KOMPETENSI DASAR
A. Kompetensi Dasar dan Target Kompetensi
1. Subunit pembelajaran ini dikembangkan berdasarkan Kompetensi
Dasar (KD) kelas X Mata Pelajaran Informatika Jenjang SMA
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.8.1. Mengenal notasi
algoritma
3.8.1.1. Memahami notasi algoritma
3.8.2. Mengenal
struktur/templates
program dalam bahasa
yang diajarkan
3.8.2.1. Memahami struktur/templates
program dalam bahasa yang
diajarkan
3.8.3. Memahami variabel,
value, konstanta, ekspresi
dan instruksi
input/output
3.8.3.1. Mengenal variabel, value,
konstanta. Ekspresi dan
instruksi input/output
3.8.4. Memahami mekanisme
eksekusi kondisional dan
loop
3.8.4.1. Mengenal mekanisme eksekusi
kondisional dan loop
3.8.5. Memahami struktur data
dasar (array sederhana)
3.8.5.1. Mengenal struktur data dasar
(array sederhana)
13
4.8.1. Menulis program
sederhana dengan satu
program utama yang
memakai salah satu atau
gabungan dari
pengetahuan 3.8.1 sampai
dengan 3.8.5
4.8.1.1 Membuat program sederhana
dengan satu program utama yang
memakai salah satu atau
gabungan dari pengetahuan 3.8.1
sampai dengan 3.8.5
4.8.2. Mengkombinasikan
struktur kontrol dan
mengetahui akibatnya,
berdasarkan dengan
pengetahuan 3.8.1 sampai
dengan 3.8.5
4.8.2.1 Mengkombinasikan struktur
kontrol dan mengetahui
akibatnya, berdasarkan dengan
pengetahuan 3.8.1 sampai
dengan 3.8.5
B. Indikator Pencapaian Kompetensi
1. Indikator Pencapaian Kompetensi (IPK) merupakan turunan dari
Kompetensi Dasar (KD) kelas X Mata Pelajaran Informatika Jenjang
SMA seperti disajikan pada tabel 2 berikut:
Tabel 2. Indikator Pencapaian Kompetensi
IPK Pengetahuan IPK Keterampilan
Kelas X
IPK Pendukung IPK Pendukung
3.8.1.1.1. Mampu menyebutkan jenis
instruksi yang dituliskan
dalam notasi algoritma dan
menyebutkan dampak
4.8.1.1.1. Menulis program sederhana
sesuai spesifikasi,
mendebug jika ada
kesalahan kemudia mentest
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
14
eksekusinya
3.8.1.1.2. Mengenal kerangka program
utama dan isinya serta
struktur sebuah program
dalam bahasa yang dipilih
untuk diajarkan
3.8.1.1.3. Mengenali program construct
untuk tipe primitif, variabel,
konstanta, value, ekspresi,
instruksi I/O
3.8.1.1.4. Mengenal instruksi
kondisional dan loop dan
memahami mekanisme
eksekusinya
3.8.1.1.5. Memahami pendeklarasian
variabel bertipe array,
mengisi dan menuliskan
dalam bahasa yang diajarkan
sampai benar
4.8.2.1.1. Menelusuri eksekusi sebuah
program
IPK Kunci IPK Kunci
3.8.1.1.1.1. Memahami notasi
algoritma: variabel,
assignment, kondisional,
loop
3.8.1.1.1.2. Memahami kerangka
program utama dalam
bahasa yang dipilih
3.8.1.1.1.3. Mengenal tipe primitf,
variabel, deklarasi,
ekspresi, instruksi I/O
3.8.1.1.1.4. Mengenal sintaks
4.8.1.1.1.1. Membuat pemrograman
prosedural;
menggunakan konsep
statik: koding,
programming; elemen
program (type, variabel,
value, ekspresi, I/O
statement, loop) dan
stuktur data sederhana
(array 1 dimensi)
4.8.2.1.1.1. Membuat program dengan
15
instruksi kondisional: if
then; if then else; case;
sintaks berbagai loop
yang tersedia di bahasa
pemrograman yang
dipakai, mekanisme
eksekusi setiap jenis
instruksi
3.8.1.1.1.5. Mengenal pendeklarasian
array, mengisi array dan
menulis array
memahami konsep graf
eksekusi program
IPK Pengayaan IPK Pengayaan
3.8.1.1.1.6. Menerapkan konsep
algoritma dalam
membuat program
dengan menggunakan
bahasa pemrograman
yang dipelajari
4.8.3.1.1.1. Mendesain program
dengan menerapkan
konsep algoritma pada
bahasa pemrograman
yang digunakan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
16
APLIKASI DI DUNIA NYATA
A. Meningkatkan Kemampuan Berpikir Secara Logis
Teknologi sekarang ini sangat membantu dalam menyelesaikan pekerjaan
dalam kehidupan kita. Tapi, apakah kita pernah berpikit untuk mempelajari
teknologi lebih dalam, misalnya dengan belajar koding atau pemrograman ?.
Mungkin kata pemrograman atau koding terdengar susah namun zaman
sekarang ini kita dituntut untuk mempelajari koding atau pemrograman di
bangku sekolah. Mengapa belajar pemrograman itu penting ?. Ya dengan
belajar pemrograman/koding sejak diusia muda, kita kan diajarkan untuk
membiasakan diri berpikir secara logis dan sistematis. Ketika pikiran kita
dibiasakan untuk menggunakan logika, tanpa disadari kita akan terbiasa
untuk menggunakannya dalam kehidupan sehari-hari juga untuk
menghadapai dan menyelesaikan suatu permasalahan.
Gambar 1 Belajar Pemrograman untuk Pemula Sumber: http://www.littlestepsasia.com/hong-kong/articles/learn/coding-classes-kids
B. Mengembangkan Cara Berpikir Dengan Sistematis
Manfaat belajar bahasa pemrograman lainnya adalah dengan
mengembangkan cara berfikir sistematis. Dalam mempelajari pemrograman,
17
kita akan menggunakan baris-baris kode yang harus disusun secara
sistematis. Baris-baris kode ini tidak boleh salah dan terbalik dalan
penyusunannya, agar program yang dibuat dapat berjalan dengan benar. Hal
ini menyebabkan pembuat program harus mempelajari bagaimana
menuliskan kode dengan aturan dan struktur pemrograman secara sitematis.
Dengan mempelajari hal tersebut, akan memberikan dampak positif bagi kita
untuk terbiasa dengan cara berpikir sistematis. Cara berpikir ini akan sangat
berguna dalam kehidupan sehari-hari kita ketika menyelesaikan suatu
permasalahan. Jika kita menemukan suatu permasalahan dalam khidupan
kita, kita akan meggunakan pikiran yang logis dan juga secara sistematis
yaitu, mengetahui permasalahan, berpikir logis untuk menyelesaikan
permasalahan yang menghasilkan sebuah solusi yang baik dan benar.
Gambar 2. Berpikir Kritikal/Sistematis Sumber: https://www.kajianpustaka.com/2018/02/pengertian-karakteristik-dan-indikator-berpikir-
kritis.html
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
18
SOAL-SOAL UN/USBN
A. Contoh Soal
UJIAN SEKOLAH BERSTANDAR NASIONAL (USBN)
SEKOLAH MENENGAH ATAS (SMA) TAHUN 2017
Kelas : X
Mata Pelajaran : Dasar-Dasar Pemrograman/Pemrograman Dasar
Waktu : 60 Menit
Bentuk Soal : Pilihan Ganda
1. Dalam menyusun suatu program,langkah pertama yang harus di lakukan adalah : a. Membuat program b. Membuat Algoritma c. Membeli komputer d. Proses e. Mempelajari program 2. Sebuah prosedur langkah demi langkah yang pasti untuk menyelesaikan sebuah masalah disebut : a. Proses b. Program c. Algoritma d. Step e. Diagram 3. Pseudocode yang di gunakan pada penulisan algoritma berupa : a. Bahassa Inggris b. Bahasa Puitis c. Bahasa pemograman d. Sembarang bahasa asal terstruktur e. Bahasa Mesin 4. Pada pembuatan program komputer, algoritma dibuat : a. Sebelum pembuatan program b. Pada saat program dibuat c. Sesudah pembuatan program d. Pada saat verifikasi program e. Pada saat di jalankan
19
5. Tahapan dalam menyelesaikan suatu masalah adalah : a. Masalah-Pseudocode-Flowchart-Program-Eksekusi-Hasil b. Masalah-Algoritma-Flowchart-Program-Eksekusi-Hasil c. Masalah-Model-Algoritma-Eksekusi-Hasil d. Masalah-Model-Algoritma-Program-Eksekusi-hasil e. Algoritma-Program-Model-Eksekusi-Hasil 6. Diketahui bahwa kantong P kosong. Kantong Q berissi 10 buah kelereng dan kantong R berisi 15 kelereng. Apabila yang terbawa hanya sebuah kantong dan di katakan BUKAN kantong P yang terbawa, Maka jumlah kelereng yang terbawa adalah : a. 10 b. 15 c. 10 atau 15 d. 10 dan 15 e. Kosong 7. Diberikan algoritma : Apabila warna merah maka jadi hijau. Apabila warna hijau maka jadi putih, selain warna merah dan hijau maka jadi ungu. Jika kondisi input warna adalah hitam, maka warna jadi : a. Merah b. Ungu c. Hijau d. Putih e. Abu-abu 8. Instruksi P=Q akan mengakibatkan nilai P=nilaiQ,dan nilai Q menjadi : a. Menjadi Sembarang Nilai b. Menjadi hampa c. Q tetap d. Menjadi 10 e. P tetap 9. Apabila a=5, b=10, maka jika di berikan instruksi a=b; b=a akan mengakibatkan : a. a=0 , b=5 b. a=10 , b=5 c. a=10 , b=0 d. a=b e. a=10 , b=10 10. Di berikan algoritma P=10; P=P+5; Q=P. Nilai P dan Q masing-masing adalah : a. 15 dan 0
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
20
b. 0 dan 15 c. 15 dan 15 d. 0 dan 10 e. 10 dan 15 11. Menggambarkan program secara logika merupakan fungsi dari... a. Flowchart b. Dxdiag c. Begin d. SI e. Sistem operasi 12. Deklarasi yang digunakan untuk mengidentifikasikan data yang nilainya sudah ditentukan dan pasti,tidak dapat dirubah dalam program disebut deklarasi... a. Deklarasi label b. Deklarasi konstanta c. Deklarasi tipe d. Deklarasi variabel e. Deklarasi prosedur 13. Bilangan yang mengadung pecahan ,palingsedikit harus ada satu digit sebelum dan sesudah titik desimal termasuk dalm tipe data... a. Real b. Boolean c. Integer d. Longint e. Byte 14. Bentuk dari suatu statment IF berada di dalam lingkungan statmean IF yang lainya,disebut IF dalam kondisi ... a. IF bersarang b. IF bercabang c. IF tunggal d. IF-THEN e. IF do while-Until 15. Tipe data bernilai TRUE FALSE adalah tipe data jenis... a. String b. Char c. Boolean d. Byte e. Real
21
16. Tipe data terstruktur yang terdiri dari sejumlah komponen ,komponen yang mempunyai tipe sama,disebut tipe data... a. Array b. Byte c. Longint d. Integer e. Boolean 17. Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah baris ,disebut... a. Writeln b. Write c. Readln d. Read e. Begin 18. Perintah untuk menampilkan atau mencetak dilayar monitor lalu pindah baris kebawah ,disebut... a. Writeln b. Write c. Readln d. Read e. Begin 19. Suatu indentifier non standar yang nilainya tidak tetap atau nilainya merupakan hasil dari suatu proses,disebut… a. Variabel b. Ripe data c. prosedur d. deklarasi e. Array 20. Suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram ( program bagian) ,disebut... a. Variabel b. Tipe data c. Prosedur d. Deklarasi e. Array 21. Berikut ini yang termasuk operator aritmatika yaitu …. a. * b. / c. % d. +
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
22
e. Semua benar 22. Array terdiri dari berbagai tipe kecuali … a. Array Multi-Dimensi b. Array Dimensi Satu c. Array Dimensi Tiga d. Array Dimensi Dua e. Semua jawaban benar 23. Nama variabel berikut ini yang benar adalah … a. NamaGuru b. Alamat Guru c. alm gr d. sts/status e. tpt.tgl 24. Tipe data yang cocok untuk menyimpan data nama siswa adalah … a. Numeric b. Character c. Date/Time d. Array e. Integer 25. Pemberian nama variabel yang benar adalah … a. %nilai b. nilai_mahasiswa c. nama mahasiswa d. &panjang e. alamat!
B. Pembahasan Soal
1. Dalam menyusun suatu program,langkah pertama yang harus di
lakukan adalah :
b. Membuat Algoritma
2. Sebuah prosedur langkah demi langkah yang pasti untuk
menyelesaikan sebuah masalah disebut :
c. Algoritma
3. Pseudocode yang di gunakan pada penulisan algoritma berupa :
c. Bahasa pemograman
23
4. Pada pembuatan program komputer, algoritma dibuat :
a. Sebelum pembuatan program
5. Tahapan dalam menyelesaikan suatu masalah adalah :
d. Masalah-Model-Algoritma-Program-Eksekusi-hasil
6. Diketahui bahwa kantong P kosong. Kantong Q berissi 10 buah
kelereng dan kantong R berisi 15 kelereng. Apabila yang terbawa
hanya sebuah kantong dan di katakan BUKAN kantong P yang
terbawa, Maka jumlah kelereng yang terbawa adalah :
c. 10 atau 15
7. Diberikan algoritma : Apabila warna merah maka jadi hijau. Apabila
warna hijau maka jadi putih, selain warna merah dan hijau maka jadi
ungu. Jika kondisi input warna adalah hitam, maka warna jadi :
b. Ungu
8. Instruksi P=Q akan mengakibatkan nilai P=nilaiQ,dan nilai Q menjadi :
e. P tetap
9. Apabila a=5, b=10, maka jika di berikan instruksi a=b; b=a akan
mengakibatkan :
e. a=10 , b=10
10. Di berikan algoritma P=10; P=P+5; Q=P. Nilai P dan Q masing-masing
adalah :
c. 15 dan 15
11. Menggambarkan program secara logika merupakan fungsi dari...
a. Flowchart
12. Deklarasi yang digunakan untuk mengidentifikasikan data yang
nilainya sudah ditentukan dan pasti,tidak dapat dirubah dalam
program disebut deklarasi...
b. Deklarasi konstanta
13. Bilangan yang mengadung pecahan ,palingsedikit harus ada satu digit
sebelum dan sesudah titik desimal termasuk dalm tipe data...
a. Real
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
24
14. Bentuk dari suatu statment IF berada di dalam lingkungan statmean
IF yang lainya,disebut IF dalam kondisi ...
a. IF bersarang
15. Tipe data bernilai TRUE FALSE adalah tipe data jenis...
c. Boolean
16. Tipe data terstruktur yang terdiri dari sejumlah komponen
,komponen yang mempunyai tipe sama,disebut tipe data...
a. Array
17. Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah
baris ,disebut...
b. Write
18. Perintah untuk menampilkan atau mencetak dilayar monitor lalu
pindah baris kebawah ,disebut...
a. Writeln
19. Suatu indentifier non standar yang nilainya tidak tetap atau nilainya
merupakan hasil dari suatu proses,disebut…
a. Variabel
20. Suatu program terpisah dalam blok sendiri yang berfungsi sebagai
subprogram ( program bagian) ,disebut...
b. Prosedur
21. Berikut ini yang termasuk operator aritmatika yaitu ….
e. Semua benar
22. Array terdiri dari berbagai tipe kecuali …
a. Array Multi-Dimensi
23. Nama variabel berikut ini yang benar adalah …
a. NamaGuru
24. Tipe data yang cocok untuk menyimpan data nama siswa adalah …
b. Character
25. Pemberian nama variabel yang benar adalah …
b. nilai_mahasiswa
25
BAHAN PEMBELAJARAN
A. Aktivitas Pembelajaran
Proses belajar mengajar merupakan proses interaksi antara guru dengan
peserta didik, didalamnya banyak kegiatan atau aktivitas yang dilakukan.
Guru diharuskan mampu memanfaatkan beragam aktivitas yang mungkin
dilakukan dalam pembelajaran agar mampu dengan mudah menyampaikan
materi yang disampaikan dan siswa juga dengan mudah memahami materi
yang disampaikan dengan variasi jenis aktivitas belajar yang sesuai dengan
gaya belajar masing-masing.
Aktivitas belajar melibatkan indera-indera atau sensor dan alat yang dimiliki
manusia untuk melakukan sesuatu. Indera-indera tersebut antara lain
meliputi indera penglihatan (visual), pendengaran (listening), berbicara
(oral), seluruh aktivitas fisik lain serta mental dan emosi.
Aktivitas pembelajaran pada kegiatan pembelajaran Algoritma ini dirancang
sebagai contoh pengembangan pembelajaran yang mengintegrasikan HOTS.
Langkah-langkah pembelajaran dalam aktivitas ini menggunakan
pembelajaran berbasis problem based learning (peserta didik membangun
konsep berdasarkan permasalahan). Langkah-langkah pembelajaran dalam
kegiatan ini juga dirancang dengan mengintegrasikan penguatan karakter
dan literasi.
Aktivitas 1 Memahami Notasi Algoritma
Aktivitas 1 dilakukan untuk pembelajaran memahami konsep dan struktur
algoritma pemrograman. Aktivitas pembelajarannya dilakukan dengan
menggunakan model Problem-based Learning (PBL). Adapun langkah-
langkah pembelajarannya, sebagaimana disajikan pada Tabel 3 berikut:
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
26
Tabel 3 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 1
Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu
Orientasi peserta
didik pada masalah
1. Mengkondisikan dan
memastikan kesiapan peserta
untuk mengikuti aktivitas
pembelajaran;
2. Guru mengajak peserta didik
berdoa dilanjutkan dengan
menyanyikan salah satu lagu
wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok
sebanyak 4-6 kelompok;
4. Guru menyampaikan tugas
yang akan diselesaikan peserta
didik melalui diskusi kelompok,
yakni:
a. Bacalah petunjuk kerja
pada lembar kerja 1 yang
telah dibagikan;
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.
1.1. Bersiap untuk
mengikuti aktivitas
pembelajaran.
1.2. Peserta didik berdoa
dan lanjut
menyanyikan salah
satu lagu wajib
nasional.
1.3. Peserta didik
membentuk
kelompok sesuai
arahan guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan
pertanyaan yang
diberikan dengan
cara berdiskusi
“disesuaikan”
Mengorganisasikan
peserta didik
1. Guru memastikan setiap
peserta didik/anggota
2.1. Peserta didik
berdiskusi dan
“disesuaikan”
27
untuk belajar kelompok memahami
tugas masing-masing
kelompok yang harus
diselesaikan;
2. Guru memberikan
kesempatan kepada
peserta didik untuk
bertanya;
3. Guru membagikan bahan
bacaan terkait aktivitas
yang telah disiapkan
kepada peserta didik.
membagi tugas untuk
menyelesaikan
persoalan
berdasarkan
instruksi yang
diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang
belum dipahami
peserta didik terkait
instruksi yang
diberikan.
2.3. Masing-masing
kelompok membaca
bahan bacaan yang
telah disiapkan.
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau keterlibatan
peserta didik dalam
mengumpulkan dan
mengolah informasi yang
ditemukannya;
2. Guru memantau dan
mendampingi kelompok
dalam memahami bahan
bacaan yang ada;
3. Memotivasi peserta didik
(kelompok) untuk berfikir
logis dan mencari solusi
dalam menyelesaikan
persoalan.
3.1. Peserta
didik/anggota
kelompok
melakukan
pengumpulan data
untuk bahan diskusi
dan menyelesaikan
masalah.
3.2. Peserta
didik/anggota
kelompok
membaca dan
memahami bahan
bacaan.
3.3. Pesera
didik/anggota
kelompok berfikir
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
28
logis dan mencari
solusi dalam
menyelesaikann
persoalan sesuai
instruksi.
Mengembangkan
dan menyajikan
hasil karya
1. Guru memantau diskusi dan
membimbing pembuatan
laporan sehingga karya
setiap kelompok siap untuk
dipresentasikan;
2. Mengarahkan untuk bisa
menghargai pendapat
teman/kelompok lain ketika
menyampaikan/memaparka
n hasil diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/
anggota kelompok
mem-
presentasikan/meny
ajikan hasil diskusi
dalam bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi
proses pemecahan
masalah
1. Guru membimbing
presentasi;
2. Guru mendorong kelompok
memberikan penghargaan
serta masukan kepada
kelompok lain;
3. Guru bersama peserta didik
menyimpulkan materi.
5.1. Setiap kelompok
melakukan
presentasi.
5.2. Kelompok yang lain
memberikan
apresiasi.
5.3. Bersama-sama guru
merangkum/membu
at kesimpulan sesuai
dengan masukan
yang diperoleh
kelompok lain.
“disesuaikan”
29
Aktivitas 2 Mengenal Bahasa Pemrograman Tingkat Tinggi
Aktivitas 2 dilakukan untuk pembelajaran mengenal bahasa pemrograman
tingkat tinggi. 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
didik pada masalah
1. Mengkondisikan dan
memastikan kesiapan
peserta untuk mengikuti
aktivitas pembelajaran;
2. Guru mengajak peserta didik
berdoa dilanjutkan dengan
menyanyikan salah satu lagu
wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok
sebanyak 4-6 kelompok;
4. Guru menyampaikan tugas
yang akan diselesaikan
peserta didik melalui diskusi
kelompok, yakni:
a. Bacalah petunjuk kerja
pada lembar kerja 2
yang telah dibagikan;
b. Ikutilah dan
selesaikanlah masalah
yang pada petunjuk
kerja;
c. Diskusikan dengan
kelompokmu;
1.1. Bersiap untuk
mengikuti aktivitas
pembelajaran.
1.2. Peserta didik berdoa dan
lanjut menyanyikan salah
satu lagu wajib nasional.
1.3. Peserta didik membentuk
kelompok sesuai arahan
guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan pertanyaan
yang diberikan dengan
cara berdiskusi
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
30
d. Tuliskan hasil diskusi
kelompok pada kertas
plano dalam format
lembar kerja 2 yang
ada;
e. Paparkan/presentasika
n hasil diskusi setiap
kelompok di depan
kelas.
Mengorganisasikan
peserta didik untuk
belajar
1. Guru memastikan setiap
peserta didik/anggota
kelompok memahami tugas
masing-masing kelompok
yang harus diselesaikan;
2. Guru memberikan
kesempatan kepada peserta
didik untuk bertanya;
3. Guru membagikan bahan
bacaan terkait aktivitas yang
telah disiapkan kepada
peserta didik.
2.1. Peserta didik berdiskusi
dan membagi tugas untuk
menyelesaikan persoalan
berdasarkan instruksi yang
diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang belum
dipahami peserta didik
terkait instruksi yang
diberikan.
2.3. Masing-masing kelompok
membaca bahan bacaan
yang telah disiapkan.
“disesuaikan”
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau
keterlibatan peserta
didik dalam
mengumpulkan dan
mengolah informasi yang
ditemukannya;
2. Guru memantau dan
mendampingi kelompok
dalam memahami bahan
bacaan yang ada;
3. Memotivasi peserta didik
3.4. Peserta didik/anggota
kelompok melakukan
pengumpulan data untuk
bahan diskusi dan
menyelesaikan masalah.
3.5. Peserta didik/anggota
kelompok membaca dan
memahami bahan
bacaan.
3.6. Pesera didik/anggota
kelompok berfikir logis
“disesuaikan”
31
(kelompok) untuk
berfikir logis dan
mencari solusi dalam
menyelesaikan
persoalan.
dan mencari solusi
dalam menyelesaikann
persoalan sesuai
instruksi.
Mengembangkan dan
menyajikan hasil
karya
1. Guru memantau diskusi dan
membimbing pembuatan
laporan sehingga karya
setiap kelompok siap untuk
dipresentasikan;
2. Mengarahkan untuk bisa
menghargai pendapat
teman/kelompok lain ketika
menyampaikan/memaparka
n hasil diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/ anggota
kelompok mem-
presentasikan/menyajika
n hasil diskusi dalam
bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi proses
pemecahan masalah
1. Guru membimbing presentasi;
2. Guru mendorong kelompok
memberikan penghargaan
serta masukan kepada
kelompok lain;
3. Guru bersama peserta didik
menyimpulkan materi.
5.1. Setiap kelompok
melakukan presentasi.
5.2. Kelompok yang lain
memberikan apresiasi.
5.3. Bersama-sama guru
merangkum/membuat
kesimpulan sesuai dengan
masukan yang diperoleh
kelompok lain.
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
32
Aktivitas 3 Mengenal Konstruksi Bahasa Pemrograman
Aktivitas 3 dilakukan untuk pembelajaran mengenal bagaimana penggunaan
tipe data primitif pada bahasa pemrograman tingkat tinggi. 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 3
Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu
Orientasi peserta
didik pada masalah
1. Mengkondisikan dan memastikan
kesiapan peserta untuk mengikuti
aktivitas pembelajaran;
2. Guru mengajak peserta didik berdoa
dilanjutkan dengan menyanyikan salah
satu lagu wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok sebanyak 4-6
kelompok;
4. Guru menyampaikan tugas yang akan
diselesaikan peserta didik melalui
diskusi kelompok, yakni:
a. Bacalah petunjuk kerja pada
lembar kerja 3 yang telah
dibagikan;
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 3 yang ada;
1.1. Bersiap untuk
mengikuti aktivitas
pembelajaran.
1.2. Peserta didik berdoa
dan lanjut
menyanyikan salah
satu lagu wajib
nasional.
1.3. Peserta didik
membentuk
kelompok sesuai
arahan guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan
pertanyaan yang
diberikan dengan
cara berdiskusi
“disesuaikan”
33
e. Paparkan/presentasikan hasil
diskusi setiap kelompok di
depan kelas.
Mengorganisasikan
peserta didik
untuk belajar
1. Guru memastikan setiap peserta
didik/anggota kelompok memahami
tugas masing-masing kelompok yang
harus diselesaikan;
2. Guru memberikan kesempatan kepada
peserta didik untuk bertanya;
3. Guru membagikan bahan bacaan terkait
aktivitas yang telah disiapkan kepada
peserta didik.
2.1. Peserta didik
berdiskusi dan
membagi tugas untuk
menyelesaikan
persoalan
berdasarkan
instruksi yang
diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang
belum dipahami
peserta didik terkait
instruksi yang
diberikan.
2.3. Masing-masing
kelompok membaca
bahan bacaan yang
telah disiapkan.
“disesuaikan”
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau keterlibatan peserta
didik dalam mengumpulkan dan
mengolah informasi yang ditemukannya;
2. Guru memantau dan mendampingi
kelompok dalam memahami bahan
bacaan yang ada;
3. Memotivasi peserta didik (kelompok)
untuk berfikir logis dan mencari solusi
dalam menyelesaikan persoalan.
3.1. Peserta
didik/anggota
kelompok melakukan
pengumpulan data
untuk bahan diskusi
dan menyelesaikan
masalah.
3.2. Peserta
didik/anggota
kelompok membaca
dan memahami bahan
bacaan.
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
34
3.3. Peserta
didik/anggota
kelompok berfikir
logis dan mencari
solusi dalam
menyelesaikann
persoalan sesuai
instruksi.
Mengembangkan
dan menyajikan
hasil karya
1. Guru memantau diskusi dan membimbing
pembuatan laporan sehingga karya setiap
kelompok siap untuk dipresentasikan;
2. Mengarahkan untuk bisa menghargai
pendapat teman/kelompok lain ketika
menyampaikan/memaparkan hasil
diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/
anggota kelompok
mem-
presentasikan/meny
ajikan hasil diskusi
dalam bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi
proses pemecahan
masalah
1. Guru membimbing presentasi;
2. Guru mendorong kelompok memberikan
penghargaan serta masukan kepada
kelompok lain;
3. Guru bersama peserta didik
menyimpulkan materi.
5.1. Setiap kelompok
melakukan presentasi.
5.2. Kelompok yang lain
memberikan
apresiasi.
5.3. Bersama-sama guru
merangkum/membua
t kesimpulan sesuai
dengan masukan yang
diperoleh kelompok
lain.
“disesuaikan”
35
Aktivitas 4 Mengenal Conditional Statement (Pernyataan Bersyarat) dan
Algoritma Perulangan (Looping)
Aktivitas 4 dilakukan untuk pembelajaran mengenal penggunaan metode
pencarian (searching) sederhana dan pernyataan bersyarat (conditional
statement) pada bahasa pemrograman tingkat tinggi. Aktivitas
pembelajarannya dilakukan dengan menggunakan model Problem-based
Learning (PBL). Adapun langkah-langkah pembelajarannya, sebagaimana
disajikan pada Tabel 6 berikut:
Tabel 6 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 4
Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu
Orientasi peserta
didik pada masalah
1. Mengkondisikan dan memastikan
kesiapan peserta untuk mengikuti
aktivitas pembelajaran;
2. Guru mengajak peserta didik berdoa
dilanjutkan dengan menyanyikan
salah satu lagu wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok sebanyak 4-6
kelompok;
4. Guru menyampaikan tugas yang akan
diselesaikan peserta didik melalui
diskusi kelompok, yakni:
a. Bacalah petunjuk kerja pada
lembar kerja 4 yang telah
dibagikan;
b. Ikutilah dan selesaikanlah
masalah yang pada petunjuk
kerja;
c. Diskusikan dengan
kelompokmu;
1.1. Bersiap untuk
mengikuti aktivitas
pembelajaran.
1.2. Peserta didik berdoa
dan lanjut
menyanyikan salah
satu lagu wajib
nasional.
1.3. Peserta didik
membentuk kelompok
sesuai arahan guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan
pertanyaan yang
diberikan dengan cara
berdiskusi
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
36
d. Tuliskan hasil diskusi
kelompok pada kertas plano
dalam format lembar kerja 4
yang ada;
e. Paparkan/presentasikan hasil
diskusi setiap kelompok di
depan kelas.
Mengorganisasikan
peserta didik
untuk belajar
1. Guru memastikan setiap peserta
didik/anggota kelompok memahami
tugas masing-masing kelompok yang
harus diselesaikan;
2. Guru memberikan kesempatan kepada
peserta didik untuk bertanya;
3. Guru membagikan bahan bacaan
terkait aktivitas yang telah disiapkan
kepada peserta didik.
2.1. Peserta didik
berdiskusi dan
membagi tugas untuk
menyelesaikan
persoalan
berdasarkan
instruksi yang
diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang
belum dipahami
peserta didik terkait
instruksi yang
diberikan.
2.3. Masing-masing
kelompok membaca
bahan bacaan yang
telah disiapkan.
“disesuaikan”
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau keterlibatan peserta
didik dalam mengumpulkan dan
mengolah informasi yang
ditemukannya;
2. Guru memantau dan mendampingi
kelompok dalam memahami bahan
bacaan yang ada;
3. Memotivasi peserta didik (kelompok)
3.1. Peserta
didik/anggota
kelompok melakukan
pengumpulan data
untuk bahan diskusi
dan menyelesaikan
masalah.
3.2. Peserta
“disesuaikan”
37
untuk berfikir logis dan mencari solusi
dalam menyelesaikan persoalan.
didik/anggota
kelompok membaca
dan memahami bahan
bacaan.
3.3. Peserta
didik/anggota
kelompok berfikir
logis dan mencari
solusi dalam
menyelesaikann
persoalan sesuai
instruksi.
Mengembangkan
dan menyajikan
hasil karya
1. Guru memantau diskusi dan
membimbing pembuatan laporan
sehingga karya setiap kelompok siap
untuk dipresentasikan;
2. Mengarahkan untuk bisa menghargai
pendapat teman/kelompok lain ketika
menyampaikan/memaparkan hasil
diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/
anggota kelompok
mem-
presentasikan/meny
ajikan hasil diskusi
dalam bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi
proses pemecahan
masalah
1. Guru membimbing presentasi;
2. Guru mendorong kelompok
memberikan penghargaan serta
masukan kepada kelompok lain;
3. Guru bersama peserta didik
menyimpulkan materi.
5.1. Setiap kelompok
melakukan presentasi.
5.2. Kelompok yang lain
memberikan
apresiasi.
5.3. Bersama-sama guru
merangkum/membua
t kesimpulan sesuai
dengan masukan yang
diperoleh kelompok
lain.
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
38
Aktivitas 5 Mengenal Array
Aktivitas 5 dilakukan untuk pembelajaran memahami penggunaan array
sederhana pada bahasa pemrograman tingkat tinggi. Aktivitas
pembelajarannya dilakukan dengan menggunakan model Problem-based
Learning (PBL). Adapun langkah-langkah pembelajarannya, sebagaimana
disajikan pada Tabel 7 berikut:
Tabel 7 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 5
Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu
Orientasi peserta
didik pada masalah
1. Mengkondisikan dan memastikan
kesiapan peserta untuk mengikuti
aktivitas pembelajaran;
2. Guru mengajak peserta didik
berdoa dilanjutkan dengan
menyanyikan salah satu lagu
wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok sebanyak
4-6 kelompok;
4. Guru menyampaikan tugas yang
akan diselesaikan peserta didik
melalui diskusi kelompok, yakni:
a. Bacalah petunjuk kerja pada
lembar kerja 5 yang telah
dibagikan;
b. Ikutilah dan selesaikanlah
masalah yang pada petunjuk
kerja;
c. Diskusikan dengan
kelompokmu;
1.1. Bersiap untuk
mengikuti aktivitas
pembelajaran.
1.2. Peserta didik berdoa
dan lanjut
menyanyikan salah
satu lagu wajib
nasional.
1.3. Peserta didik
membentuk kelompok
sesuai arahan guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan
pertanyaan yang
diberikan dengan cara
berdiskusi
“disesuaikan”
39
d. Tuliskan hasil diskusi
kelompok pada kertas plano
dalam format lembar kerja 5
yang ada;
e. Paparkan/presentasikan
hasil diskusi setiap kelompok
di depan kelas.
Mengorganisasikan
peserta didik
untuk belajar
1. Guru memastikan setiap peserta
didik/anggota kelompok
memahami tugas masing-masing
kelompok yang harus diselesaikan;
2. Guru memberikan kesempatan
kepada peserta didik untuk
bertanya;
3. Guru membagikan bahan bacaan
terkait aktivitas yang telah
disiapkan kepada peserta didik.
2.1. Peserta didik
berdiskusi dan
membagi tugas untuk
menyelesaikan
persoalan
berdasarkan
instruksi yang
diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang
belum dipahami
peserta didik terkait
instruksi yang
diberikan.
2.3. Masing-masing
kelompok membaca
bahan bacaan yang
telah disiapkan.
“disesuaikan”
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau keterlibatan
peserta didik dalam
mengumpulkan dan mengolah
informasi yang ditemukannya;
2. Guru memantau dan
mendampingi kelompok dalam
memahami bahan bacaan yang
ada;
3.1. Peserta
didik/anggota
kelompok melakukan
pengumpulan data
untuk bahan diskusi
dan menyelesaikan
masalah.
3.2. Peserta
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
40
3. Memotivasi peserta didik
(kelompok) untuk berfikir logis
dan mencari solusi dalam
menyelesaikan persoalan.
didik/anggota
kelompok membaca
dan memahami bahan
bacaan.
3.3. Pesera didik/anggota
kelompok berfikir
logis dan mencari
solusi dalam
menyelesaikann
persoalan sesuai
instruksi.
Mengembangkan
dan menyajikan
hasil karya
1. Guru memantau diskusi dan
membimbing pembuatan laporan
sehingga karya setiap kelompok
siap untuk dipresentasikan;
2. Mengarahkan untuk bisa
menghargai pendapat
teman/kelompok lain ketika
menyampaikan/memaparkan hasil
diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/
anggota kelompok
mem-
presentasikan/meny
ajikan hasil diskusi
dalam bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi
proses pemecahan
masalah
1. Guru membimbing presentasi;
2. Guru mendorong kelompok
memberikan penghargaan serta
masukan kepada kelompok lain;
3. Guru bersama peserta didik
menyimpulkan materi.
5.1. Setiap kelompok
melakukan presentasi.
5.2. Kelompok yang lain
memberikan
apresiasi.
5.3. Bersama-sama guru
merangkum/membua
t kesimpulan sesuai
dengan masukan yang
diperoleh kelompok
lain.
“disesuaikan”
41
Aktivitas 6 Mengenal Konsep Graph
Aktivitas 6 dilakukan untuk pembelajaran mengenal konsep graph pada
bahasa pemrograman tingkat tinggi. Aktivitas pembelajarannya dilakukan
dengan menggunakan model Problem-based Learning (PBL). Adapun
langkah-langkah pembelajarannya, sebagaimana disajikan pada Tabel 8
berikut:
Tabel 8 Sintaks Problem Based Learning (PBL) pada Pembelajaran Aktivitas 6
Langkah Kerja Aktivitas Guru Aktivitas Siswa Alokasi
Waktu
Orientasi peserta
didik pada masalah
1. Mengkondisikan dan
memastikan kesiapan peserta
untuk mengikuti aktivitas
pembelajaran;
2. Guru mengajak peserta didik
berdoa dilanjutkan dengan
menyanyikan salah satu lagu
wajib nasional;
3. Guru menugaskan siswa agar
membentuk kelompok sebanyak
4-6 kelompok;
4. Guru menyampaikan tugas yang
akan diselesaikan peserta didik
melalui diskusi kelompok, yakni:
a. Bacalah petunjuk kerja pada
lembar kerja 6 yang telah
dibagikan;
b. Ikutilah dan selesaikanlah
masalah yang pada petunjuk
kerja;
c. Diskusikan dengan
kelompokmu;
d. Tuliskan hasil diskusi
1.1. Bersiap untuk mengikuti
aktivitas pembelajaran.
1.2. Peserta didik berdoa dan
lanjut menyanyikan salah
satu lagu wajib nasional.
1.3. Peserta didik
membentuk kelompok
sesuai arahan guru.
1.4. Peserta didik
menyelesaikan
permasalahan
berdasarkan pertanyaan
yang diberikan dengan
cara berdiskusi
“disesuaikan”
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
42
kelompok pada kertas plano
dalam format lembar kerja
6 yang ada;
e. Paparkan/presentasikan
hasil diskusi setiap
kelompok di depan kelas.
Mengorganisasikan
peserta didik
untuk belajar
1. Guru memastikan setiap
peserta didik/anggota
kelompok memahami tugas
masing-masing kelompok yang
harus diselesaikan;
2. Guru memberikan kesempatan
kepada peserta didik untuk
bertanya;
3. Guru membagikan bahan
bacaan terkait aktivitas yang
telah disiapkan kepada peserta
didik.
2.1. Peserta didik berdiskusi
dan membagi tugas
untuk menyelesaikan
persoalan berdasarkan
instruksi yang diberikan.
2.2. Peserta didik bertanya
kepada guru tentang
tentang hal yang belum
dipahami peserta didik
terkait instruksi yang
diberikan.
2.3. Masing-masing kelompok
membaca bahan bacaan
yang telah disiapkan.
“disesuaikan”
Membimbing
penyelidikan
individu maupun
kelompok
1. Guru memantau keterlibatan
peserta didik dalam
mengumpulkan dan
mengolah informasi yang
ditemukannya;
2. Guru memantau dan
mendampingi kelompok
dalam memahami bahan
bacaan yang ada;
3. Memotivasi peserta didik
(kelompok) untuk berfikir
logis dan mencari solusi
dalam menyelesaikan
persoalan.
3.1. Peserta didik/anggota
kelompok melakukan
pengumpulan data untuk
bahan diskusi dan
menyelesaikan masalah.
3.2. Peserta didik/anggota
kelompok membaca dan
memahami bahan
bacaan.
3.3. Pesera didik/anggota
kelompok berfikir logis
dan mencari solusi
dalam menyelesaikann
persoalan sesuai
“disesuaikan”
43
instruksi.
Mengembangkan
dan menyajikan
hasil karya
1. Guru memantau diskusi dan
membimbing pembuatan
laporan sehingga karya setiap
kelompok siap untuk
dipresentasikan;
2. Mengarahkan untuk bisa
menghargai pendapat
teman/kelompok lain ketika
menyampaikan/memaparkan
hasil diskusi.
4.1. Kelompok melakukan
diskusi untuk
menghasilkan solusi
pemecahan masalah.
4.2. Peserta didik/ anggota
kelompok mem-
presentasikan/menyaji
kan hasil diskusi dalam
bentuk karya.
“disesuaikan”
Menganalisis dan
mengevaluasi
proses pemecahan
masalah
1. Guru membimbing
presentasi;
2. Guru mendorong
kelompok memberikan
penghargaan serta
masukan kepada kelompok
lain;
3. Guru bersama peserta
didik menyimpulkan
materi.
5.1. Setiap kelompok
melakukan presentasi.
5.2. Kelompok yang lain
memberikan apresiasi.
5.3. Bersama-sama guru
merangkum/membuat
kesimpulan sesuai
dengan masukan yang
diperoleh kelompok lain.
“disesuaikan”
B. Lembar Kerja Peserta Didik
Lembar Kerja Peserta Didik 1
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
44
Judul Memahami Notasi Algoritma
Tujuan • Peserta didik dapat memahami
konsep algoritma dan struktur
algoritma
• Pesera didik dapat menyelesaikan
permasalahan secara sistematis
dengan menggunakan logika yang
benar
Mata Pelajaran Informatika
Petunjuk Kerja Peserta Didik:
1. Perhatikan algoritma pada kartu kasus Algoritma 1 dibawah:
a. Tunjukkan manakah Nama Algoritma, bagian Deklarasi dan
Deskripsi? Apakah semua bagian sudah lengkap?
b. Perbaiki algoritma tersebut agar memiliki bagian algoritma
yang lengkap!
Algoritma 1
Langkah-langkah Mendownload Video dari Youtuber
1. Buka situs Youtube
2. Buka video pada situs Youtube
3. Salin alamat video yang dibuka
4. Buka situs www.keepvid.com
5. Tempel alamat link video youtube yang telah disalin pada isian yang
disediakan oleh situs keepvid.com, kemudian klik tombol download
6. Jika sudah muncul pilihan download, klik kanan pilihan format video
yang diinginkan, apakha MP$ atau FLV kemudian pilih save link as
7. Tunggu hingga proses download selesai
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Judul Algoritma:……………………..
45
Bagian Deklarasi:……………………
Bagian Deskripsi:…………………….
b. Algoritma Lengkap:
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
46
Petunjuk Kerja Peserta Didik:
2. Perhatikan algoritma pada kartu kasus Algoritma 2 dibawah:
c. Apakah nama algoritma yang tepat untuk algoritma tersebut ?
d. Tambahkan bagian deklarasinya ?
e. Menurut kalian apakah setiap langkah pada algoritma di atas
sudah baik, mudah dimengerti dan dijalankan ? Jelaskan dan
berikan alasannya !
Algoritma 2
1. Siapkan kolam dari terpal dengan ukuran 2m x 1m x 0.6m
2. Isi kolam dengan air yang mengandung kaya algad dan plankton
sebagai makanan bibit lele
3. Siapkan bibit ikan lele dengan aturan 200 ikan lele tiam 2m2 panjang
kali lebar
4. Beri bibit lele makan dua kali sehari dengan pelet khusus lele
5. Setiap seminggu atau dua minggu sekali ganti sebagian air dengan air
baru
6. Jika lele sudah cukup besar, maka siap panen
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Nama Algoritma
b. Deklarasi
c. apakah setiap langkah pada
algoritma di atas sudah baik,
mudah dimengerti dan
dijalankan ? Jelaskan dan
berikan alasannya !
47
Lembar Kerja Peserta Didik 2
Judul Mengenal Bahasa Pemrograman
Tingkat Tinggi
Tujuan • Peserta didik dapat mengenal
kerangka program utama;
• Pesera didik dapat mengenal isi
atau struktur sebuah program
dalam suatu bahasa pemrograman
tingkat tinggi;
• Peserta didik dapat menghasilkan
program dengan menggunakan
editor program.
Mata Pelajaran Informatika
Pengenalan oleh Guru (20 menit)
Pada bagian pembuka pelajaran ini, Guru memperkenalkan secara
singkat tentang konsep perangkat lunak, pemrograman komputer dan
bahasa pemrograman tingkat tinggi.
Guru kemudian memperkenalkan lingkungan pemrograman IDE
(Integrated Development Environment) pada suatu bahasa
pemrograman tingkat tinggi, misal: NetBeans, Eclipse, Code Blocks
atau Alice, dan memastikan bahwa peserta didik memiliki akses untuk
menggunakannya. Pengenalan singkat tentang perangkat lunak ini
memberikan kesempatan kepada peserta didik untuk menjelajahi
lingkungan IDE dan mengenal kerangka, isi dan struktur pada bahasa
pemrograman yang dipelajari. Guru dapat men-demokan atau
menanyangkan video pengantar tentang IDE (Integrated Development
Environment) bahasa pemrograman tingkat tinggi yang tersedia di
situs web:
➢ https://netbeans.org/kb/docs/java/quickstart.html (tutorial
NetBeans IDE Start)dan
➢ https://www.youtube.com/watch?v=23tAK5zdQ9c (video
tutorial Eclipse IDE)
➢ http://www.codeblocks.org/home (tutorial Code Blocks IDE)
➢ https://www.alice.org/resources/alice-3-how-tos/ (tutorial
Alice programming)
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
48
Petunjuk Kerja Peserta Didik:
1. Amatilah dan pahami demo atau tutorial cara menggunakan “IDE
program” yang ditampilkan dan dijelaskan oleh gurumu;
2. Cobalah dan tirulah cara membuat program sederhana “Hello
World” menggunakan IDE tsb berdasarkan tutorial yang telah
ditampilkan dan dijelaskan oleh gurumu;
3. Simpanlah hasil kerja percobaan dengan judul:
demo2_namakelompok,
misal: demo2_kel_01 atau demo2_kel_A;
4. Diskusikan dengan kelompokmu dan kemudian jawablah
pertanyaan pada kolom format lembar kerja yang telah
disediakan!
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Apa itu bahasa pemrograman
tingkat tinggi dan bagaimana
pengembangannya ?
b. Apa itu pemrograman komputer
?
c. Apa itu IDE dan bagaimana
proses pengembangan perangkat
lunak tersebut ?
d. Jelaskan bagaimana kerangka
dan penulisan isi serta struktur
bahasa pemrograman yang
dipelajari dibuat dengan
menggunakan IDE ?
49
Lembar Kerja Peserta Didik 3
Judul Mengenal Konstruksi Bahasa
Pemrograman
Tujuan • Peserta didik dapat memahami
konstruksi dari suatu bahasa
pemrograman
• Peserta didik dapat mengenali
tipe data, variabel,
pendeklarasiannya, ekspresi dan
instruksi I/O dari suatu bahasa
pemrograman
• Peserta didik dapat menggunakan
konstruksi bahasa pemrograman
dalam membuatu suatu program
Mata Pelajaran Informatika
Pengenalan oleh Guru (20 menit)
Pada bagian pembuka Guru harus menjelaskan konsep konstruksi
bahasa pemrograman. Selanjutnya guru menjelaskan tentang tipe
data, variabel, pendeklarasian, ekspresi dan instruksi I/O pada bahasa
pemrograman yang digunakan. Untuk menunjukkan konsep tersebut,
Guru dapat mendemokan tutorial atau menggunakan video untuk
mejelaskan tentang konsep konstruksi tersebut.
Petunjuk Kerja Peserta Didik:
1. Amatilah dan pahami demo atau tutorial tentang konstruksi
bahasa pemrograman yang ditampilkan dan dijelaskan oleh
gurumu;
2. Coba dan buatlah program dengan menggunakan tipe data,
variabel berdasarkan insturksi kartu kasus Algoritma 3;
3. Coba dan buatlah program dengan menggunakan ekspresi
berdasarkan insturksi kartu kasus Algoritma 4;
4. Simpanlah hasil kerja percobaan dengan judul:
demo3_namakelompok, misal: demo3_kel_02 atau demo3_kel_A;
5. Diskusikan dengan kelompokmu dan kemudian jawablah
pertanyaan pada kolom format lembar kerja yang telah
disediakan!
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
50
Algoritma 3
Algoritma untuk menentukan biaya sewa mobil rental yang menyewakan 3
jenis mobil, yaitu Avanza, Innova, dan Minibus. Biaya sewa perhari dari tiap
mobil berbeda-beda. Total biaya sewa diperoleh dengan mengalikan biaya
sewa mobil dikalikan berapa lama mobil disewa (satuan hari). Tentukan
variabel dan tipe datanya!
Algoritma 4
Algoritma BagiSisa
Variabel a,b,c adalah integer
Langkah-langkah
1) Beri nilai a= 30
2) Beri nilai b= 18
3) Hitung c = a bagi b
4) Ganti nilai a = b
5) Ganti nilai b = c
6) Hitung c= a bagi b
7) Ganti nilai a = b
8) Ganti nilai b = c
9) Hitung c= a bagi b
10) Ganti nilai a = b
11) Ganti nilai b = c
12) Cetak nilai c
Buatlah program dengan menggunakan ekspresi (operator) dan tentukan
hasil keluarannya!
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Apakah yang dimaksud
konstruksi pada bahasa
pemrograman ?
b. Bagaimana cara kerja tipe data
terhadap pembentukan suatu
51
variabel ?
c. Bagaimana variabel dapat
digunakan untuk menyimpan
data dalam program yang
digunakan ?
d. Apa perbedaan antara variabel
lokal dan global ?
e. Bagaimana cara kerja tipe data
terhadap pembentukan suatu
variabel ?
Lembar Kerja Peserta Didik 4
Judul Mengenal Conditional Statement
(Pernyataan Bersyarat) dan
Algoritma Perulangan (Looping)
Tujuan • Peserta didik dapat mendesain
dan mengimplementasikan
program menggunakan
pernyataan bersyarat (conditional
statement)
• Peserta didik dapat merancang
skenario/alur kerja sederhana
menggunakan kombinasi
konstruksi sekuensial (berurutan)
dan Paralel
• Peserta didik dapat menggunakan
loop sederhana untuk mengulangi
suatu tindakan beberapa kali
Mata Pelajaran Informatika
Pengenalan oleh Guru (20 menit)
Pada bagian pembuka Guru harus menjelaskan dan mengenalkan
konsep konstruksi pernyataan bersyarat (conditional statement) dan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
52
perulang (looping) serta alur algoritmanya. Kemudian guru juga
memperkenalkan operator pembanding yang digunakan dan
memperkenalkan fungsi operator bernilai Boolean, yaitu fungsi yang
mengembalikan hasil benar atau salah (True or False).
Untuk mengenalkan konsepnya, guru dapat menggunakan
mencontohkan secara sederhana yaitu dengan logika permainan
angka acak untuk (kondisonal) dan logika deret angka untuk
(perulangan).
Guru dapat menggunakan contoh penggunaan algoritma konditional
dan looping construct misalnya dgn Java yang dapat dilihat dan
dijelaskan pada video:
https://www.youtube.com/watch?v=zIJ1udbeoYY dan
https://www.youtube.com/watch?v=aB0_iB-
m9y4&app=desktop&persist_app=1&gl=US&hl=en&client=mv-google
Petunjuk Kerja Peserta Didik:
1. Amatilah dan pahami demo atau tutorial tentang conditional
statement dan looping construct yang dijelaskan dana
ditampilkan;
2. Coba dan buatlah selanjutnya program menghitung Grade (A,
B+, B, C+, C, D dan E), dimana pengguna (user) akan
memasukkan suatu nilai kemudian program akan
menampilkan grade berdasarkan inputan, untuk membuat
program ini perhatikan langkah berikut:
a. Penentuan grade berdasarkan algoritma:
Grade A(100-90); Grade B+(91-80); Grade B(81-70); Grade
C+(71-60); Grade C(61-50); Grade D(51-40) dan selain itu
bernilai dan dibawahnya bernilai E;
b. Gunakan pernyataan bersyarat (conditional statement),
variabel dan user input;
3. Coba dan buatlah program untuk menentukan suatu nomor
plat apakah, dimana pengguna (user) akan memasukkan angka
nomor plat kemudian programa akan menampilkan nomort tsb
apakah bernomor ganjil atau genap dan menampilkan hari
penggunaan nomor ganjil dan genap, untuk membuat program
ini perhatikan langkah berikut:
a. Nomor pada plat sebanyak 4 angka;
b. Jika nomor plat ganjil maka hari yang dibolehkan untuk
melintas yaitu Senin, Rabu, Jumat dan
53
c. Jika nomor plat genap maka hari yang dibolehkan untuk
melintas yaitu Selasa, Kamis, Sabtu
d. Sedangkan di hari minggu diperbolehkan melintas untuk
kedua jenis nomor plat tsb.
e. Gunakanlah pernyataan perulangan dan kondisional,
variabel dan user input;
4. Simpanlah hasil kerja percobaan dengan judul:
demo4_namakelompok, misal: demo4_kel_02 atau
demo4_kel_A;
5. Diskusikan dengan kelompokmu dan jawablah pertanyaan
nomor a dan b pada kolom format lembar kerja yang telah
disediakan!
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Bagaimana suatu program dapat
dirancang sedemikian rupa
sehingga dapat bersifat
kondisional (bersyarat) dan
berulang (loop) ?
b. Bagaimana pernyataan bersyarat
(conditional) dapat
diimplementasikan
menggunakan pernyataan if-
then-else ?
c. Bagaimana suatu program dapat
dirancang agar suatu tindakan
(action) dilakukan berulang kali
dengan suatu kondisi tertentu ?
d. Bagaimana pernyataan
perulangan (loop) dapat
diimplementasikan
menggunakan pernyataan
uncounted loop do-while ?
e. Bagaimana fungsi input dapat
digunakan untuk mendapatkan
informasi dari pengguna ?
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
54
Lembar Kerja Peserta Didik 5
Judul Mengenal Array
Tujuan • Peserta didik dapat memahami
konsep array dalam suatu bahasa
pemrograman
• Peserta didik dapat
mendeklarasikan variabel bertipe
array, mengisi dan menuliskan
program array dalam bahasa
pemrograman
Mata Pelajaran Informatika
Pengenalan oleh Guru (20 menit)
Pada bagian pembuka Guru harus menjelaskan dan mengenalkan
konsep array dalam bahasa pemrograman.
Guru dapat menggunakan illustrasi susunan kamar yang berisi
beberapa orang atau box yang berisi suatu nilai dalam menjelaskan
konsep array.
Guru dapat menggunakan contoh penggunaan array yang dapat dilihat
dan dijelaskan pada video:
https://www.youtube.com/watch?v=2DFDhOD670s (Video: Java:
Loop and Array Example).
Petunjuk Kerja:
1. Amatilah dan pahami demo atau tutorial pemrograman tentang
penggunaan array yang ditampilkan dan dijelaskan oleh
gurumu;
2. Coba dan buatlah program penggunaan array berdasarkan
video tutorial yang ditampilkan;
3. Coba dan buatlah selanjutnya program sederhana untuk
mengambil data dari array, dimana array diisi dengan nama
teman kelasmu, untuk membuat program ini perhatikan
langkah berikut:
a. Deklarasikan kata kunci yang digunakan untuk membuat
array;
b. Isilah array dengan nama-nama temanmu;
55
c. Kemudian cobalah memanggil array yang berisi nama
temanmu dengan mengisi indeks.
4. Selanjutnya, jika sudah memahami konsep array. Buatlah
program bernama Ruang Kelas, dimana array akan
menampilkan isi array berdasarkan inputan pengguna. Untuk
membuat program ini perhatikan langkah berikut:
a. Program dibuat dengan menggnakan multi dimensi array;
b. pengguna (user) akan mengisikan nama murid yang akan
duduk di meja untuk menyusun tempat duduk dalam ruang
kelas;
c. Program akan menampilkan letak murid berdasarkan
susunan yang diinput.
5. Simpanlah hasil kerja percobaan dengan judul:
demo5_namakelompok, misal: demo5_kel_02 atau
demo4_kel_A;
6. Diskusikan dengan kelompokmu dan kemudian jawablah
pertanyaan pada kolom format lembar kerja yang telah
disediakan!
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Bagaimana suatu program dapat
dirancang bila memiliki banyak
data yang akan disimpan dalam
variabel ?
b. Bagaimana pendeklarasian dan
pengisian serta pemanggilan
nilai variabel dalam array?
c. Bagaimana peran pernyataan
perulangan (looping) dalam
menghasilkan array ?
d. Bagaimana cara kerja array list
untuk menutupi kekurangan
pada array multidimensi ?
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
56
Lembar Kerja Peserta Didik 6
Judul Graph
Tujuan • Peserta didik dapat memahami
konsep graph dan istilah-istilah
yang terdapat pada graph
• Peserta didik dapat
mengimplementasikan graph ke
dalam bahasa pemrograman
dalam menelusuri eksekusi
sebuah program
Mata Pelajaran Informatika
Pengenalan oleh Guru (20 menit)
Pada bagian pembuka Guru harus menjelaskan dan mengenalkan
konsep graph.
Guru dapat menggunakan ilustrasi permainan dalam menentukan
jarak terpendek dalam suatu jalur atau logika jalur tercepat.
Guru menunjukkan dan menjelaskan perancangan koding untuk
membuat graph menggunakan bahasa pemrograman
Guru dapat memperkenalkan tentang konsep graph yang dapat dilihat
dan dijelaskan pada video:
https://www.youtube.com/watch?v=gXgEDyodOJU (Introduction to
graph)
Petunjuk Kerja Peserta Didik:
1. Amatilah dan pahami tutorial perkenalan tentang konsep graph
yang ditampilkan;
2. Coba dan buatlah flowchart berdasarkan kartu kasus algoritma
5;
3. Simpanlah hasil kerja percobaan dengan judul:
demo5_namakelompok, misal: demo5_kel_02 atau
demo4_kel_A;
4. Diskusikan dengan kelompokmu dan kemudian jawablah
pertanyaan pada kolom format lembar kerja yang telah
disediakan!
57
Algoritma 5
1. Buatlah flowchart untuk menghitung jarak minimal dan rutenya dari
titik 1 ke titik 5!
2. Buatlah flowchart dari permasalahan shortest path problem dibawah.
Deskripsikan proses penyelesaian dengan menggunakan struktur data yang
ada, dan kemudian buatlahlah flowchart keseluruhan.
Format Lembar Kerja:
Soal Jawaban berdasarkan hasil diskusi
a. Apa yang dimaksud dengan
Graph ?
b. Bagaimana penerapan teori
graph dalam kehidupan sehari-
hari ?
c. Bagaimana pembentukan
struktur data konsep grah dalam
bahasa pemrograman ?
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
58
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.
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 3 . Abu Ja’far Mohammed Ibn Musa Al-Khowarizmi
Sumber: https://jwsablog.wordpress.com/2017/09/17/biografi-abu-jafar-muhammad-bin-musa-
al-khawarizmi/
59
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.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
60
Ciri -ciri
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
Ada lima ciri penting yang perlu diperhatikan dalam menyusun
algoritma, yaitu:
1. Algoritma mempunyai awal dan akhir atau finite (terbatas).
2. Memiliki instruksi yang jelas atau tidak ambigu dan define (pasti),
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. Struktur dasar algoritma
Seperti terlah dijelaskan di ata bahwa penyusuna atau struktur dasar
algoritma adalah langkah-langkah. Suatu algoritma dapat terdiri dari
tiga struktur dasar yaitu runtunan, pemilihan dan pengulangan. Ketiga
jenis langkah tersebut membentuk
konstruksi suatu algoritma. Berikut adalah penjelasan dari tiga
struktur tersebut :
61
4.1 Runtunan (sequence)
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi
dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni
sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai
dikerjakan. Urutan dari instruksi menentukan hasil akhir dari suatu
algoritma. Bila urutan penulisan berubah maka mungkin juga hasil akhirnya
berubah. Sebagai contoh perhatikan operasi aritmatika berikut ini,
(4+3)*7=49, tetapi bila urutan aksinya diubah maka hasil keluaran akan
berbeda menjadi 4+(3*7) =25.
Contoh lain dari runtunan aksi adalah algoritma penukaran dua bilangan
bulat,yaitu:
1. Deklarasikan A, B, dan C sebagai bilangan bulat
2. Masukkan nilai A dan B
3. Masukkan nilai A ke dalam C
4. Masukkan nilai B ke dalam A
5. Masukkan nilai C ke dalam B
4.2 Pemilihan (selection)
Kadangkala terdapat suatu kejadian yang baru akan dikerjakan jika suatu
kondisi tertentu telah terpenuhi. Pemilihan yaitu instruksi yang dikerjakan
dengan kondisi tertentu.
Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Satu atau
beberapa instruksi hanya dilaksanakan apabila kondisi bernilai benar,
sebaliknya apabila salah maka instruksi tidak akan dilaksanakan. Contoh
kasus pemilihan adalah dalam penentuan bilangan genap atau ganjil berikut
ini:
1. Masukkan bilangan sebagai sebuah bilangan bulat
2. Bagi bilangan dengan angka 2, simpan nilai sisa pembagian dalam
variabel sisa
3. Jika nilai sisa sama dengan 0 maka kerjakan langkah 4:
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
62
4. Tampilkan ”GENAP” ke layar
5. Jika nilai sisa tidak sama dengan 0 maka kerjakan langkah 6
6. Tampilkan ”GANJIL” ke layar
7. Selesai.
4.3 Pengulangan (repetition)
Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan
pekerjaan yang sama berulang kali tanpa mengenal lelah.Kita tidak perlu
menulis instruksi yang sama berulang kali, tetapi cukup melakukan
pengulangan dengan instruksi yang tersedia.
Pengulangan merupakan kegiatan mengerjakan sebuah atau sejumlah aksi
yang sama sebanyak jumlah yang ditentukan atau sesuai dengan kondisi yang
diinginkan. Beberapa statemen pengulangan di bahasa pemrograman yaitu
for…, while()..., do...while(), repeat....until, for...downto...do, for...to...do dan
lain-lain. Sebagai contoh adalah menampilkan huruf tertentu sebanyak n kali
ke layar sebagai berikut:
1. Deklarasikan variabel huruf untuk menyimpan karakter yang akan
ditampilkan.
2. Deklarasikan variabel n untuk menyimpan banyaknya perulangan
3. Deklarasikan variabel counter yang digunakan sebagai counter
perulangan yang sudah dilakukan.
4. Masukkan sebuah karakter dan simpan dalam variabel huruf
5. Masukkan banyaknya perulangan yang diinginkan dan simpan dalam
variabel n
6. Set nilai counter dengan 0
7. Tampilkan huruf ke layar
8. Lakukan penambahan counter dengan 1
9. Jika nilai counter<n, kerjakan langkah 6
10. Jika nilai counter = n selesai
63
5. 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)
5.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.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
64
KEKURANGAN
✓ Sulit diterjemahkan dalam bahasa pemrograman atau coding.
✓ Kurang efektif.
5.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.
Dalam pembuatan flowchart program tidak ada rumus atau patokan
yang bersifat mutlak. Karena flowchart merupakan gambaran hasil
pemikirandalam menganalisis suatu masalah yang nantinya akan
diubah menjadi program komputer. Sehingga flowchart yang dihasilkan
dapat bervariasi antara satu pemrogram dengan yang lainnya. Namum
demikian terdapat beberapa anjuran yang harus diperhatikan, yaitu :
1. Flowchart digambarkan di suatu halaman dimulai dari sisi atas ke
bawah dan dari sisi kiri ke kanan.
2. Aktivitas yang digambarkan harus didefinisikan dengan
menggunakan bahasa dan simbol yangtepat dan definisi ini harus
dapat dimengerti oleh pembacanya.
3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.
Hanya terdapat satu titik awal dan satu titik akhir.
4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan
deskripsi kata kerja, misalkan MENGHITUNG NILAI RATA-TARA.
5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
65
6. Lingkup dan range dari aktifitas yang sedang digambarkan harus
ditelusuri dengan hati-hati. Percabangan-percabangan yang
memotong aktivitas yang sedang digambarkan tidak perlu
digambarkan pada flowchart yang sama. Simbol konektor harus
digunakan dan percabangannya diletakan pada halaman yang
terpisah atau hilangkan seluruhnya bila percabangannya tidak
berkaitan dengan sistem.
7. Gunakan simbol-simbol flowchart yang standar.
Di dalam diagram flowchart 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 9 Simbol -simbol flowchart
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
66
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.
6. 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;
67
• 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 4 . 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.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
68
1. Algoritma kalimat Deskriptif menggunakan bahasa natural
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 5 . Flowchart mengupas kentang
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.
69
7. IDE (Integrated Development Program) IDE atau Integrated Development Environment adalah sebuah
aplikasi/software yang membantu programmer dalam membuat
sebuah aplikasi dan biasanya memiliki GUI. Aplikasi IDE adalah
tempat programmer menuliskan baris – baris kode (coding) dan
menjalankan programnya.
IDE digunakan untuk meningkatkan produktivitas dalam pembuatan
aplikasi. Aplikasi IDE modern sekarang ini biasanya sudah terdapat:
1. Editor,untuk menuliskan kode sumber dari perangkat lunak.
2. Compiler, untuk mengecek sintaks dari kode sumber
kemudian mengubah dalam bentuk binari yang sesuai dengan
bahasa mesin.
3. Debuger,untuk mencaribug/kesalahan yang terdapat dalam
program.
4. Linker,untuk menyatukan data binari yang beberapa kode
sumber yang dihasilkancompilersehingga data-data binari
tersebut menjadi satu kesatuan dan menjadi suatu program
komputer yang siap dieksekusi.
Terdapat beberapa IDE yang sering digunakan untuk mempelajari
pemrograman yaitu: Neatbeans IDE, Code Blocks, Eclipse.
• NetBeans IDE merupakan suatu lingkungan pengembangan
terpadu untuk perangkat lunak yang memiliki beberapa
bahasa pemrograman yang dapat didukung dari
beberapa platform seperti Desktop Apps, Web App.
• Code::Blocks IDE untuk pemrograman C, C++ dan Fortran.
IDE ini cukup populer dikalangan developer yang
berkiprah baik dibahasa C maupun C++. Code::Blocks ini
tidak memiliki fitur design dalam hal pembangunan
aplikasi GUI melainkan hanya teks.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
70
• Eclipse adalah sebuah IDE (Integrated Development
Environment) untuk mengembangkan perangkat lunak dan dapat
dijalankan di semua platform (platform-independent). Berikut ini
adalah sifat dari Eclipse:
o Multi-platform: Target sistem operasi Eclipse
adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac
OS X.
o Mulit-language: Eclipse dikembangkan dengan bahasa
pemrograman Java, akan tetapi Eclipse mendukung
pengembangan aplikasi berbasis bahasa pemrograman
lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain
sebagainya.
o Multi-role: Selain sebagai IDE untuk pengembangan aplikasi,
Eclipse pun bisa digunakan untuk aktivitas dalam siklus
pengembangan perangkat lunak, seperti dokumentasi, test
perangkat lunak, pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis
dan open source, yang berarti setiap orang boleh melihat kode pemrograman
perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya
populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna
dengan komponen yang dinamakan plug-in.
71
Gambar 6 IDE Neatbeans Sumber: https://netbeans.org
8. Struktur Data Algoritma
Dalam istilah ilmu komputer, struktur data adalah cara penyimpanan,
penyusunan dan pengaturan data di dalam media penyimpanan
komputer sehingga data tersebut dapat digunakan secara efisien.
Dengan kata lain struktur data adalah sebuah skema organisasi,
seperti variabel dan array dan lain-lain, yang diterapkan pada data
sehingga data dapat diinterprestasikan dan sehingga operasi-operasi
spesifik dapat dilaksanakan pada data tersebut.
Pemakaian struktur data yang tepat didalam proses pemrograman
akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga
menjadikan program secara keseluruhan lebih efisien dan sederhana.
Data adalah representasi dari fakta dunia nyata Fakta atau keterangan
tentang kenyataan yang disimpan, direkam atau direpresentasikan
dalam bentuk tulisan, suara, gambar, sinyal atau simbol. Data
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
72
merupakan suatu nilai yang bisa dinyatakan dalam bentuk konstanta
atau variabel. Konstanta menyatakan nilai yang tetap, sedangkan
variabel menyatakan nilai yang dapat diubah-ubah selama eksekusi
berlangsung.
8.1 Tipe Data
Pada dunia pemrograman tipe data sangat penting untuk
digunakan. Terlebih saat kita membuat variabel. Setiap variabel
akan memiliki tipe data yang spesifik. Kita tidak dapat memiliki
variabel yang menyimpan data string dan integer. Ilustrasinnya
seperti wadah rengginang dan wadah kue monde. Jika dicampur
jadi satu akan menyesetkan pemakannya.
Terdapat dua jenis tipe data di java. Primitive dan non
primitive. Sebelum mengenal istilah primitive dan non primitive
kita akan membahas mengenai pengertian tipe data. Tipe data
adalah klasifikasi dari suatu data yang didalamnya terdapat
spesifikasi jenis dari data tersimpan nantinnya pada suatu
variabel/fungsi. Contoh spesifikasi ini adalah integer, string dan
lain sebagainya
Gambar 7 Perbedaan tipe data Sumber: https://degananda.org
73
8.1.1 Tipe Dasar
Tipe data dasar atau tipe data sederhana atau biasa juga disebut dengan
tipe data primitif adalah tipe data yang sudah ada dan dijadikan standar
dalam bahasa pemrograman tertentu. Isi dari tipe data sederhana ini
adalah data-data tunggal. Tipe data dasar sudah disediakan oleh program
sehingga programmer bisa langsung memakai.
1. Integer (Bilangan Bulat)
Yang dimaksud bilangan bulat adalah, -1, -2, -3, 0, 1, 2, 3, 4 dan lain
lain yang bukan merupakan bilangan pecahan.
2. Float atau double (Bilangan Real)
Bilangan real adalah bilangan yang mengandung pecahan desimal.
Contoh : 3.45, 6,233.
3. Char (Karakter)
Karakter adalah semua huruf yang ada di dalam alfabet, tanda baca
aupun karakter
spesial. Karakter ditulis diantara dua tanda petik tunggal. Contoh : 'A'.
4. Boolean (logika)
Boolean adalah tipe data logika yang terdiri dari dua pernyataan benar
atau salah.
Pernyataan benar biasanya ditulis True atau angka 1, sedangkan
pernyataan salah ditulis
dengan False atau angka 0. Sedangkan operasi aritmatika yang umum
digunakan adalah
or, not, and dan xor.
8.1.2 Tipe data bentukan
Tipe data bentukan atau tipe data komposit adalah tipe data yang
dibentuk dari tipe data dasar dengan maksud mempermudah pekerjaan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
74
programer. Tipe data ini lawan dari tipe date primitive, tipe data
composite dapat menampung banyak nilai. Antara lain :
1. Array, atau disebut larik. Adalah tipe data yang terstruktur, meskipun
sederhana array mampu menyimpan data dengan tipe yang sama
(homogen) didalam sebuah variable.
2. Record atau Struct, Seperti array, record atau struct termasuk data
komposit. Record biasa dikenal pada bahasa pemrograman Pascal atau
Delphi sedangkan struct lebih dikenal di C++. Lain hal dengan array,
tipe data record menampung tipe data yang berbeda-beda (heterogen).
3. Image, tipe data ini adalah tipe data grafik seperti contohnya grafik
perkembangan suatu populasi. pada bahasa pemrograman modern
yang berbasis visual, tipe data ini sudah sangat didukung.
4. Date Time, nilai data date dan time disimpan dalam format yang
spesifik. Dengan variable atau konstanta yang dideklarasikan dapat
disimpan dengan baik dalam bentuk tipe data “date” maupun “time”.
Tipe data ini termasuk kelompok tipe data komposit, karena terbentuk
dari beberapa tipe data.
5. Object, tipe data ini menyimpan yang berhubungan dengan obyek-
obyek yang biasa ada pada bahasa pemrograman VB, Delphi dan
bahasa pemrograman lain yang berbasis GUI (Graphical User
Interface). Contoh-nya : jika sebuah form memiliki control Command
button, kita beri nama Command1.
6. Subrange, Tipe data bilangan yang mempunyai range nilai tertentu
yang sudah ditentukan oleh seorang programmer. Biasanya, tipe data
ini memiliki batas maksimum dan minimum.
75
7. Enumerasi, Tipe data ini mempunyai elemen-elemen yang harus
disebutkan satu per-satu dan memiliki nilai konstanta berupa integer
yang sesuai dengan urutannya. Pada nilai konstanta-nya ini mewakili
suatu nama variable yang ditulis didalam kurung. Tipe data ini sering
ditemui dalam bahasa Delphi dan SQL.
8.2 Konstanta dan Variabel
Konstanta dan variabel adalah suatu pengenal (identifier) yang
digunakan untuk mewakili suatu nilai tertentu didalam proses program.
Berbeda dengan konstanta yang nilainya tidak bisa diubah atau selalu
tetap selang eksekusi berlangsung, nilai dari suatu variabel dapat
berubah sesuai kebutuhan. Konstanta dan variabel merupakan tempat di
memori komputer untuk menyimpan data berupa nilai dengan tipe data
tertentu. Konstanta dan variabel harus diberi nama sebagai identifikasi.
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.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
76
Gambar 8 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.
Dalam suatu bahasa pemrograman, sebuah variabel harus ada dalam sebuah
kelas atau metode. Dalam penamaan variabel memiliki beberapa syarat yaitu:
1. Harus diawali dengan huruf
2. Tidak boleh terdapat karakter unik seperti @,#,% dll
3. Tidak boleh mengandung karakter putih (spasi, enter, tab)
Pembuatan sebuah variabel di dalam bahasa pemrograman misalnya Java
terlihat pada kode dibawah ini:
Tipevariabel namavariabel;
tipenamaVar[,namaVar];
Tipe variabel dapat berupa data atau kelas, misal:
Int nilai;
char indexNilai;
77
Untuk menambahkan nilai ke sebuah variabel, maka dapat menggunakan
tanda = (sama dengan), misal jika kita akan menambahkan nilai 100 pada
variabel nilai dan A pada variabel indexNilai, maka dapat terlihat pada kode
dibawah ini:
Int nilai;
char indexNilai;
Nilai = 100;
indexNilai=’A’
Atau dapat juga langsung saat pembuatan sebuuah variabe:
Int nilai = 100;
Char indeNilai = ‘A’;
8.3 Komentar dan Pernyataan
Komentar adalah pemberian keterangan tambahan yang bertujuan untuk
memberikan informasi atau penjelasan kepada pembaca program. Komentar
dibuat dengan menggunakan tanda baca // di awal komentar misalnya:
Listing program
// Program ini merupakan program penjumlahan dengan penggunaan komentar di dalamnya // Public class penjumlahan {
Public static void main(string [] args) { //deklarasi variable Int angka1, angka2, hasil; //inisialisasi inputan variable
angka1 = 6; //angka1 bernilai 6 angka2 = 9; //angka2 bernilai 9 hasil = angka1 + angka2; //rumus penjumlahan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
78
.....
.....
} }
8.4 Operator
Operator adalah simbol khusus yang digunakan untuk
ekspresi yang menghasilkan suatu nilai. Di dalam Java
terdapat enam kelompok operator, yaitu:
1. Operator aritmatika
2. Operator penambahan (increment) dan pengurangan
(decrement)
3. Operator penugasan
4. Operator pembandingan
5. Operator logika
6. Operator bit
a. Operator Aritmatika
Berikut ini adalah dasar operator aritmatik yang dapat
digunakan untuk membuat suatu program Java,operator
berlaku untuk semua bilangan bulat dan titik mengambang.
Tabel 10. Operator Aritmatika
Simbol Penggunaan
+ Merupakan operator penjumlahan atau
menandakan bilangan positif
- Merupakan operator pengurangan atau
79
menandakan bilangan negative
* Merupakan operator perkalian
/ Merupakan operator pembagian
% Merupakan operator sisa hasil bagi
b. Operator Penambahan (Increment) dan Pengurangan (Decrement)
Pada bahasa pemrograman Java dapat menggunakan fungsi
penambahan 1 dan pengurangan 1 dengan menggunakan simbol
operator ++ atau -- , misalnya untuk x bernilai 2, makan incrementnya
adalah x++ = 3. Sedangkan untuk fungsi decrementnya --x= 1
Tabel 11. Operator increment dan decrement
Operator increment dan decrement dapat ditempatkan sebelum
atau sesudah operand. Ketika digunakan sebelum operand, akan
menyebabkan variabel diincrement atau didecrement dengan
nilai1, dan kemudian nilai baru digunakan dalam pernyataan
dimana dia ditambahkan.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
80
c. Operator Penugasan
Operator penugasan (Assignment Operator) fungsinya untuk
meberikan tugas pada variabel tertentu. Biasanya untuk mengisi
nilai.
Contoh:
Int a = 10;
variabel a ditugaskan untuk menyimpan nilai 10. maka ‘=’ adalah
operator penugasan yang akan memberikan nilai dari 10 kepada
variabel a.
Tabel 12. Operator penugasan
d. Operator Pembandingan
Sepeti namanya, tugas operator ini untuk membandingkan. Operator
ini juga dikenal dengan opeartor relasi.
Tabel 13. Operator penugasan
Nilai yang dihasilkan dari operator ini berupa boolean,
yaitu: true dan false. True jika operasi pembanding tersebut benar
dan false jika operasi pembanding tersebut salah., misal:
81
boolean a = 10 == 100;
System.out.println(a);
Hasil dari program diatas adalah false, karena memang 10 tidak
sama dengan 100
e. Operator Logika
Kalau kamu pernah belajar logika matematika, pasti tidak akan
asing dengan operator ini.
Tabel 14. Operator logika
Operator logika digunakan untuk membentuk suatu keadaan dari
dua atau lebih kondisi tertentu, operator logika biasanya
digabungkan dengan operator pembanding. Hasil dari operator
logika adalah boolean.
Hasil operasi logika dengan menggunakan AND(&&) adalah sebagai
berikut:
Tabel 15. Kebenaran logika AND (&&)
Hasil operasi logika dengan menggunakan OR(||) adalah sebagai
berikut:
Tabel 16. Kebenaran logika OR (||)
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
82
Contoh:
boolean hasil = 10 == 100 || 100 == 100;
System.out.println(hasil);
Maka hasilnya adalah true, mengapa ?
Perhatikan
operasi 1 : 10 == 100 (apakah 10 sama dengan 100) jawabannya
salah/false
operasi 2 : 100 == 100 (apakah 100 sama dengan 100)
jawabannya benar / true.
maka berdasarkan tabel kebenaran menggunakan OR jika operasi 1
bernilai false dan operator kedua bernilai true maka hasilnya
adalah true. Nah apakah kalian sekarang paham? Jika sudah cobalah
untuk bereksplorasi lebih lanjut terhadap penggunaan operator
logika dalam bahasa pemrograman yang kalian pelajari. Lihatlah
hasil yang dihasilkan berdasarkan tabel kebenaran.
f. Operator bit
Operator bit yang dikenal di dalam java ada tujuh jenis operator bit,
yaitu:
1) Operator & (dan untuk biner)
Operator & berfungsi sebagai operasi “dan” pada tataran bit.
Berikut tabel operasi dasarnya:
Tabel 17. hasil Operator &
Bit 1 Bit 2 Hasil
0 0 0
83
0 1 0
1 0 0
1 1 1
Pada tabel di atas operator bit & hanya dapat
menghasilkan 1 apabila kedua bit yang dikenai
operator & bernilai 1.
2) Operator |
Operator | berfungsi sebagai operasi “atau” pada
tataran bit. Berikut tabel operasi dasarnya
Tabel 18. hasil Operator |
Bit 1 Bit 2 Hasil
0 0 0
0 1 1
1 0 1
1 1 1
Pada tabel di atas operator bit | dapat menghasilkan 1
apabila pada salah satu bit yang dikenai operator | bernilai
1.
3) Operator ^
Operator ^ berfungsi sebagai operasi “atau ekslusif” pada
tataran bit. Berikut tabel operasi dasarnya:
Tabel 19. hasil Operator ^
Bit 1 Bit 2 Hasil
0 0 0
0 1 1
1 0 1
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
84
1 1 0
Pada tabel di atas operator bit ^ hanya dapat menghasilkan 1
apabila salah satu bit yang dikenai operator ^ bernilai 1
4) Operator ~
Operator ~ berfungsi sebagai operasi “kebalikan” pada masing-
masing bit. Berikut contoh penjelasannya:
5) Operator <<
Operator << (geser kiri) berfungsi sebagai penggeser bit-bit ke
kiri, dengan jumlah penggeseran terletak pada nilai yang berada
di kanan operator.
6) Operator >>
Operator >> (geser kanan) berfungsi sebagai penggeser bit-bit
ke kanan, dengan jumlah penggeseran terleta pada nilai yang
berada di kanan operator.
7) Operator >>>
Operator >>> (geser kanan) berfungsi sebagai penggeser bit-bit
ke kanan, di ujung bit paling kanan ditambahkan angka nol,
sehingga apabila menggunakan operator ini setiap bilangan
negatif jika digeser ke kanan akan menghasilkan bilangan yang
selalu positif.
9. Pernyataan bersyarat (Kondisional)
Pernyataan kondisional adalah pernyataan yang terdiri atas
kondisi-kondisi, dimana jika kondisi tersebut terpenuhi, program
akan melakukan intruksi tertentu. Pernyattan kondisional
merupakan penunjuk arah untuk urutan suatu program. Ada tiga
keyword yang dapat digunakan untuk melakukan seleksi dalam
pemrograman, yaitu if, if-else dan switch.
85
A. Pernyataan If
Konstruksi if hanya memiliki satu kondisi. Artinya, satu atau
beberapa instruksi akan dijalankan apabila kondisinya dipenuhi atau
benar tapi tidak melakukan apa-apa jika kondisinya salah. Seperti
yang digambarkan pada gambar 9 flowchart dibawah ini:
Gambar 9 . Alur perintah IF
sumber: https://www.petanikode.com
Bentuk pernyataan if berupa:
if (kondisi) {
// yang akan dijalankan
}
Berikut contohnya:
int nilai = 10;
if(nilai == 10){
System.out.println(“Sepuluh”);
}
Jika program diatas dijalankan, maka hasilnya adalah tulisan
“Sepuluh” karena kondisi pada if bernilai benar (true), jika kondisi
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
86
salah (false), misal nilai ==100, maka program tidak akan
menghasilkan tulisan apa-apa.
B. Pernyataan if-else
Konstruksi if-else sedikit berbeda dengan konstruksi if. Dalam
konstruksi if-else, jika sebuah kondisi tidak terpenuhi maka
program akan mencari kondisi yang lain yang ada atau
menjalankan instruksi yang berada di luar bagian dari kondisi
yang tidak terpenuhi.
Seperti yang digambarkan pada gambar 10 flowchart dibawah ini:
Gambar 10 . Alur perintah If-else
sumber: https://www.petanikode.com
Bentuk pernyataan if-else berupa:
If (kondisi) {
//jalankan jika kondisi true
} else{
//jalankan jika kondisi false
87
}
Contoh:
Int nilai = 8;
If(nilai == 10) {
System.out.println{“Sepuluh);
}else{
System.out.println(“Bukan Sepuluh”);
}
Jika program diatas dijalankan, maka hasilnya adalah tulisan “Bukan
Sepuluh”, hal ini dikarenakan nilai bernilai 8 bukan 10.
Pada pernyataan if-else terdapat juga jenis pernyatan if bersarang (nested if).
Pernyataan nested-if atau if bersarang merupakan pernyataan kondisional
yang memiliki pilihan lebih dari satu, di mana jika sebuah parameter yang
dimasukkan bernilai false, pilihan selanjutnyalah yang akan diperiksa. Pada
akhirnya, jika semua pilihan tidak memenuhi syarat, maka pilihan yang
paling akhir (else) akan dieksekusikan. Bentuk pernyataan if bersarang
adalah sebagai berikut:
If(kondisi){
//perintah kondisi1
}else if (kondisi2){
//perintah kondisi2
}else if (kondisi3){
//perintah kondisi 3
}else{
//perintah jika semua kondisi tidak ada yang benar
}
Contoh:
int nilai = 6;
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
88
char index;
If (nilai >=8){
index = ‘A’;
}else if (nilai >= 7){
index = ‘B’;
}else if (nilai >= 6){
index = ‘C’;
}else if (nilai >= 5) {
index = ‘D’;
}else{
Index = ‘E’;
}
System.out.println(index);
Jika program diatas dijalankan, maka hasilnya adalah ‘C’. Mengapa demikian ?
Dapatkah kalian menjelaskannya?
C. Pernyataan switch-case
Switch-case hampir serupa dengan if-else, switch-case juga digunakan
untuk mengeksekusi pernyataan kondisional. Yang membuat berbeda,
switch-case digunakan untuk mengeksekusi sebuah kondisi hanya dalam
bentuk perbandingan == (sama dengan). Biasanya perintah ini digunakan
dalam game seperti mobil balap. Jika keypad A ditekan, maka mobil akan
bergerak ke arah kiri. Sementara jika keypad B ditekan, maka mobil akan
bergerak ke arah kanan. Bentuk pernyataan percabangan switch-case
adalah sebagai berikut:
switch(variabel){
case nilai1; //jalankan instruksi
break; //hentikan
case nilai2; //jalankan instruksi
break; //hentikan
case nilai3; //jalankan instruksi
89
break; //hentikan
case nilai4; //jalankan instruksi
break; //hentikan
default: //jalankan instruksi
break;//hentikan
}
Perlu diperhatikan juga: di sana ada kata kunci break dan default.
• break artinya berhenti. Ini untuk memerintahkan komputer untuk
berhenti mengecek case yang lainnya.
• default artinya jika nilai variabel tidak ada yang sama dengan pilihan case
di atas, maka kerjakan kode yang ada di dalam default.
Pilihan default bisa juga tidak memiliki break, karena dia adalah pilihan terakhir.
Artinya pengecekan akan berakhir di situ.
Contohnya:
import java.util.Scanner;
public class LampuLalulintas {
public static void main(String[] args) {
// membuat variabel dan Scanner
String lampu;
Scanner scan = new Scanner(System.in);
// mengambil input
System.out.print("Inputkan nama warna: ");
lampu = scan.nextLine();
switch(lampu){
case "merah":
System.out.println("Lampu merah, berhenti!");
break;
case "kuning":
System.out.println("Lampu kuning, harap hati-
hati!");
break;
case "hijau":
System.out.println("Lampu hijau, silahkan
jalan!");
break;
default:
System.out.println("Warna lampu salah!");
}
}
}
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
90
Cobalah kalian tulis ulang program diatas dan lihatlah hasil output yang akan
dihasilkan?
9.1 Pernyataan Perulangan (Loop)
Apa yang akan kita lakukan bila ingin menyuruh komputer mengerjakan
perintah yang berulang-ulang? Misalkan kita ingin menyuruh komputer
menampilkan teks “nama saya Budi” sebanyak 5x.
Maka kita bisa menyuruhnya seperti ini:
System.out.println("nama saya Budi");
System.out.println("nama saya Budi");
System.out.println("nama saya Budi");
System.out.println("nama saya Budi");
System.out.println("nama saya Budi");
Tapi… bagaimana kalau sebanyak 1000x, apa kita akan mampu mengetik
kode sebanyak itu? Tentunya tidak. Karena itu, kita harus pakai perulangan.
Sebelum masuk ke pembahasan lebih dalam, ada hal yang harus kalian
ketahui terlebih dahulu. Perulangan dalam pemrograman dibagi manjadi
dua jenis:
1. Counted loop: Perulangan yang jumlah pengulangannya terhitung
atau tentu.
2. Uncounted loop: Perulangan yang jumlah pengulangannya tidak
terhitung atau tidak tentu.
Counted loop terdiri dari perulangan For dan For each. Sedangkan
Uncounted loop terdiri dari perulangan While dan Do/While. Perhatikanlah
gambar dibawah untuk memahami jenis perulangan.
91
Gambar 11 . Alur jenis perulangan
sumber: https://www.petanikode.com
9.1.1 While Loop (Perulangan While)
adalah pernyataan atau blok pernyataan yang diulang-ulang sampai
mencapai kondisi yang cocok. Pernyataan while berguna untuk
melakukan proses perulangan untuk sebuah kondisi, selama kondisi
tersebut bernilai benar (true), maka perulangan akan terus berjalan, dan
terhenti ketika kondisi bernilai salah (false). Bentuk pernyataan while
seperti berikut ini:
While (kondisi){
// isi instruksi
}
Contoh:
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
92
Int jumlah = 1;
While(jumlah <= 10){
System.out.println(jumlah);
Jumlah++; //menaikkan jumlah
}
Jika program tersebut dijalankan, maka hasilnya adalah tulisan dari no 1
sampai 10 dan saat jumalh bernilai 11, maka perulangan akan terheni
dikarenakan kondisi bernilai false (11<=10).
9.1.2 do-while Loop (Perulangan do-while)
Perulangan do-while mirip dengan perulangan while. Pernyataan di
dalam do-while loop akan dieksekusi beberapa kali selama kondisi
bernilai benar (true). Do-while loop adalah dimana pernyataan di dalam
do-while loop akan dieksekusi sedikitnya satu kali. Bentuk pernyataan
do-while sebagai berikut:
do{
//instruksi
}while(kondisi);
Contohnya;
int jumlah = 100;
do{
System.out.println(jumlah);
Jumlah++; //naikkan jumlah
} while (jumlah <=10);
Jika program tersebut dijalankan, maka akan menghasilkan
keluaran 100, artinya walaupun kondisi salah, namun minimal
instruksi akan dijalnkan sekali, hal ini dikarenakan proses do-while
berbeda dengan while, dimana do-while pertama melakukan
93
instruksi baru mengecek kondisi, sedangkan whike pertama
mengecek kondisi baru melakukan instruksi.
9.1.3 For Loop (Perulangan for)
Perulangan for merupakan perulangan yang memiliki variabel untuk
melakukan pengkondisian, berbeda dengan while dan do-while yang kita
harus membuat variabel diluar untuk melakukan pengkondisian. Pada
perulangan for, ditempatkan sebuah blok untuk membuat variabel dan
melakukan proses pengkondisian. Bentuk pernyataan for seperti berikut:
For (inisialisasi; kondisi; penaikan/penurunan) {
Instruksi
}
Contoh, kita akan menampilkan angka dari 1-100, maka dapat
menggunakan perulangan for.
for(int i = 1; i<=100; i++){
System.out,println(i);
}
Keterangan :
int i = 0 adalah penetapan nilai awal .
i <=10 adalah batas perulangan.
i++ adalah jenis perulangannya.
Jenis perulangan ini bisa kita ganti sesuai keinginan seperti ++i, i-- dan --i.
Dalam penginisiasian perulangan diatas terdapat dua perintah yang
memiliki tugas terhadap proses perulangan. Perintah-perintah tersebut
yaitu:
1. Perintah break
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
94
merupakan perintah yang dapat digunakan untuk menghentikan
proses perulangan, misal seperti contoh program berikut:
For (int i=1; i<=100; i++){
System.out.println(i);
If(i==50){
Break;
}
}
Maka program diatas hanya akan menampilkan angka dari 1 sampai
50, karena pada saat i mencapai 50 program dihentikan oleh perintah
break.
2. Perintah Continue
Perintah continue dapat digunakan untuk meloncati sebuah
perulangan, maksudnya adalah instruksi yang seharusnya dapat
dilewati, hal ini berarti instruksi tidak akan dijalankan. Misalnya:
For(int i=1; i<=100; i++){
If(I % 2 == 0){
Continue;
}
System.out.println(i);
Jika program diatas dijalankan maka hasilnya akan menampilkan
angka-angka ganjil saja, hal ini dikarenakan saat nilai i merupakan
angka genap, maka perintah continue membuat program tidak
menampilkan angka genap.
10. Array
Apa yang akan kita lakukan bila memiliki banyak data yang akan
disimpan dalam vairabel? Misalkan kita ingin menyimpan nama-nama
95
teman dalam variabel.Maka mungkin kita akan melakukannya seperti
ini:
String namaTeman1 = "Linda";
String namaTeman2 = "Santi";
String namaTeman3 = "Susan";
String namaTeman4 = "Mila";
String namaTeman5 = "Ayu";
Hal ini sah-sah saja. Akan tetapi, Masalahnya bagaimana kala datanya
banyak, misalkan ada 100 data, pastinya capek donk membuat variabel
sebanyak itu. Karena itu, kita bisa menyimpan itu semua dalam Array.
Apa itu Array ?
Array adalah sebuah variabel yang bisa menyimpan banyak data dalam satu
variabel. Array menggunakan indeks untuk memudahkan akses terhadap
data yang disimpannya.
Array juga merupakan objek yang dapat digunakan unruk menyimpan
sejumlah data, data yang ditampung pada array dapat berupa tipe data
ataupun kelas (objek).
Gambar 12 . Alur array
sumber: https://www.petanikode.com/java-array/
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
96
10.1 Mendeklarasikan Array
Untuk pembuatan variabel array berbeda dengan membuat variabel
biasanya. Pembuatan variabel array sebagai berikut:
TipeArray namaArray[ ];
Dimana tipe array berupa tipe data biasa seperti int, char, short ataukelas
seperti String dan yang lainnya.
10.2 Membuat Array
Untuk membuat array, caranya dengan menggunakan perintah new.
TipeArray namaArray[ ];
namaArray = new TipeArray[jumlah];
Dimana:
• Kurang siku [ ] digunakan untuk membuat array;
• Kurung siku [ ] bisa diletakkan setelah tipe data atau nama array;
• Jumlah array merupakan jumlah data yang dapat ditampung oleh
array.
10.3 Memanipulasi data dalam Array
Setelah membuat array, maka untuk melakukan proses manipulasi data
seperti menambahkan array, mengubah data di array atau mengakses data
dalam array, maka diperlukan sebuah indeks, dimana saat membuat sebuah
array dengan jumlah data 5 maka hasilnya akan terlihat seperti berikut:
Tabel 20. tabel indeks array
No Indeks
1 0
2 1
3 2
97
4 3
5 4
Artinya data ke-1 dapat diakses menggunakan indeks 0 dan seterusnya.
Untuk melakukan proses manipulasi data dalam array menggunakan indeks
dapat digunakan dengan perintah:
namaArray[indeks];
Misalnya;
// membuat array
String[] nama = {"Linda", "Santi", "Susan", "Mila", "Ayu"};
// mengambil data array
System.out.println(teman[2]);
kira-kira apa hasil output program diatas ?
Ya, hasil outputnya adalah :
Susan
karena perintah mengambil data array teman[2], dimana indeks 2 berisi nilai
dengan nama Susan. Nah apakah kalian sudah mengerti tentang konsep
pembentukan dan manipulasi data menggunakan array ?. Selanutnya kita
akan mempelajari bagaimana cara menambahkan data array ke dalam
sebuah array. Bagaimana yaitu dengan menggunakan array multidimensi.
10.4 Array Multidimensi
Array multi dimensi artinya array yang memiliki lebih dari satu dimensi.
Atau kita bisa sebut, array di dalam array. Jumlah dimensinya tidak
terbatas, tergantung kita mampunya sampai berapa. Cara pembuatannya
adalah sebagai berikut:
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
98
TipeArray namaArray[ ] = new TipeArray[jumlah][jumlah];
Contohnya:
String[][] kontak = {
{"Lili","08111"},
{"Lala","08122"},
{"Maya","08133"}
};
Indek ke-0 pada array kontak berisi array {"lili","08111"}.
indeks data array diata dapat dilustrasika seperti gambar berikut
Gambar 13 . contoh Indeks array multidimensional
sumber: https://www.petanikode.com/java-array/
11. Graph
Graph adalah kumpulan dari simpul dan busur yang secara matematis
dinyatakan sebagai :
G = (V, E)
Dimana :
G = Graph
V = Simpul atau Vertex, atau Node
E = Busur atau Edge, atau arc
99
11.1 Sejarah Singkat Teori Graf
Sejarah Singkat Teori Graf Teori graf lahir pada tahun 1736 melalui
tulisan Euler yang berisi tentangupaya pemecahan masalah jembatan
Konigsberg yang sangat terkenal diEropa. Kurang lebih seratus tahun
setelah lahirnya tulisan Euler tersebut tidak ada perkembangan yang
berarti berkenaan dengan teori graf.
Tahun 1847, G. R. Kirchoff berhasil mengembangkan teori pohon
(Theoryof Trees) yang digunakan dalam persoalan jaringan listrik.
Sepuluh tahunkemudian A. Cayley juga menggunakan konsep pohon
untuk menjelaskanpermasalahan kimia yaitu hidrokarbon.
Pada masa Kirchoff dan Cayley juga telah lahir dua hal penting
dalamteori graf. Salah satunya berkenaan dengan konjektur empat
warna, yangmenyatakan bahwa untuk mewarnai sebuah atlas
cukup dengan menggunakanempat macam warna sedemikian hingga
tiap Negara yang berbatasan akanmemiliki warna yang berbeda.
Kemudian Sir W. R. Hamilton pada tahun 1859 berhasil menemukan
suatupermainan dari kayu yang berbentuk dodecahedron beraturan yakni
berupasebuah polyhedron dengan 12 muka dan 20 pojok. Tiap muka
berbentuk sebuah pentagon beraturan dan tiap pojoknya dibentuk
oleh tiga sisi berbeda.Tiap pojok dodecahedron tersebt dipasangkan
dengan sebuah kota terkenalseperti London, New York, Paris, dll.
Masalah dalam permainan ini adalah,kita diminta untuk mencari
suatu rute melalui sisi-sisi dari dodecahedronsehingga tiap kota dari
20 kota yang ada dapat dilalui tepat satu kali.
11.2 Definisi dan Teminologi Graf
Sebuah graph G berisikan dua himpunan yaitu himpunan hingga
tak kosong V(G) yang elemen-elemennya disebut titik dan himpunan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
100
(mungkinkosong) E(G) yang elemen-elemennya disebut sisi,
sedemikian hingga setiapelemen e dalam E(G) adalah sebuah
pasangan tak berurutan dari titik-titik diV(G). V(G) disebut himpunan
titik dari G dan E(G) disebut himpunan sisi dari G.
Sifat-Sifat Graph
1. Sebuah graph mungkin hanya terdiri dari satu simpul
2. Sebuah graph belum tentu semua simpulnya terhubung dengan busur
3. Sebuah graph mungkin mempunyai simpul yang tak terhubung dengan si
mpul yang lain
4. Sebuah graph mungkin semua simpulnya saling berhubungan
Nah, kalian dapat mempelajari lebih lanjut tentang konsep teori graph
melalui pencarian jarak terpendek atau shortest path. Silahkan pelajari dan
mencari tahu bagaiman konsep teori graf dalam mengeksekusi sebuah
program. Pahamilah terlebih dahulu konsep atau alur pembentukkannya,
101
kemudian cobalah untuk membuat alurnya dalam menggunakan flowchart,
untuk mempelajari konsep teori graph secara sederhana.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
102
PENGEMBANGAN PENILAIAN
A. Pembahasan Soal-soal
Topik Dasar-dasar pemrograman merupakan topik yang akan dipelajari oleh
peserta didik di kelas X Sekolah Menengah Atas di Indonesia. Berdasarkan
hasil analisis literatur dari rujukan jurnal, buku dan artikel, berikut ini
pembahasan soal-soal dasar-dasar pemrograman:
Dasar Struktur Algoritma
1. Bagian persiapan dari sebuah algoritma disebut dengan bagian ....
a. Deskripsi
b. Deklarasi
c. Header
d. Preparation
e. Prosedur
Jawaban: b
2. Bagian yang menjelaskan serangkaian instruksi untuk memproses
inputan dan menghasilkan output adalah bagian ....
a. Deskripsi
b. Deklarasi
c. Header
d. Preparation
e. Prosedur
Jawaban: a
3. Berikut ini pernyataan yang benar mengenai variabel, kecuali ....
a. Digunakan untuk menyimpan nilai
b. Boleh diberikan nama dengan bebas
c. Tidak boleh ada dua nama variabel yang sama
d. Digunakan untuk menyimpan nilai input
e. Digunakan untuk menyimpan nilai output
Jawaban: b
4. Berikut ini penggunaan yang benar mengenai nama variable, kecuali....
a. Float nilai
b. Int a
c. Char nama lengkap
103
d. Char alamat
e. Int usia
Jawaban: c
5. Berikut ini variabel yang pasti memiki tipe data integer yaitu ....
a. PanjangBalok
b. LuasPersegi
c. TotalGaji
d. JumlahAnak
e. NilaiTertinggi
Jawaban: d
6. Operasi 22 / 4 memberikan hasil ....
a. 5
b. 5,5
c. 2
d. FALSE
e. TRUE
Jawaban: c
7. Int a = 12, int b = 3, int hasil = a % b, Maka nilai hasil adalah ....
a. 0
b. 1
c. 2
d. 4
e. 9
Jawaban: a
8. Berikut ini pernyataan yang benar mengenai pseudocode kecuali...
a. Menggunakan bahasa mirip bahasa pemrograman
b. Bahasanya harus baku, tidak boleh ada kesalahan
c. Memudahkan implementasi ke bahasa pemrograman
d. Menggunakan kata-kata kunci sebagaimana bahasa
pemrograman
e. Dapat diubah ke bahasa natural dan sebaliknya
Jawaban: b
9. Simbol apakah flowchart diatas?
a. Terminator
b. Input/output
c. Proses
d. Pemilihan
e. Preparasi
Jawaban: c
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
104
10. Simbol apakah flowchart diatas?
a. Terminator
b. Input/output
c. Proses
d. Pemilihan
e. Preparasi
Jawaban: b
11. Lima (5) urutan proses yang benar dalam Flowchart adalah……..
a. Head Input Proses Output End
b. Input Loading Proses Output Stop
c. Start Read Proses Output Stop
d. Start Read Proses Write Stop
e. Head Read Loading Write End
Jawaban: c
Struktur Kontrol, Perulangan dan Array
12. Algoritma percabangan dapat digunakan untuk beberapa kasus
permasalahan berikut, kecuali ....
a. Menentukan kelulusan berdasarkan rata-rata
b. Menghitung sewa mobil di sebuah rental yang menyediakan
banyak pilihan
c. Menentukan gaji berdasarkan golongan
d. Menentukan rata-rata seluruh siswa dalam satu kelas
e. Menentukan diagnosa penyakit
Jawaban: d
13. Jika <kondisi> bernilai benar maka pernyataan dikerjakan, sedangkan
jika tidak, maka pernyataan tidak dikerjakan dan proses langsung keluar
dari percabangan adalah penjelasan dari percabangan ....
a. 1 kondisi
b. 2 kondisi
c. Lebih dari 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jawaban: a
14. Jika <kondisi> bernilai benar maka pernyataan1 dikerjakan. Sedangkan
jika tidak (<kondisi> bernilai salah), maka pernyataan yang dikerjakan
adalah pernyataan 2. Hal tersebut adalah penjelasan dari percabangan...
a. 1 kondisi
b. 2 kondisi
105
c. Lebih dari 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jawaban: b
15. Jika <kondisi1> dicek nilai kebenarannya. Jika benar, maka
dikerjakan pernyataan1. Jika salah, maka dicek nilai kebenaran
<kondisi2>. Jika <kondisi2> benar, maka dikerjakan pernyataan2. Jika
tidak algoritma akan mengecek ke kondisi berikutnya dengan cara yang
sama dengan yang sebelumnya. Terakhir, jika semua kondisi bernilai
salah, maka pernyataan yang dikerjakan adalah Pernyataan(n+1). Hal
tersebut adalah penjelasan dari percabangan...
a. 1 kondisi
b. 2 kondisi
c. Lebih dari 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jawaban: c
16. Struktur dimana ada percabangan di dalam percabangan disebut ....
a. 1 kondisi
b. 2 kondisi
c. Lebih dari 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jawaban: d
17. Penggunaan WHILE DO adalah struktur perulangan dengan ....
a. Kondisi di awal
b. Kondisi di akhir
c. 1 kondisi
d. 2 kondisi
e. Lebih dari 2 kondisi
Jawaban: a
18. Penggunaan REPEAT UNTIL adalah struktur perulangan dengan ....
a. Kondisi di awal
b. Kondisi di akhir
c. 1 kondisi
d. 2 kondisi
e. Lebih dari 2 kondisi
Jawaban: b
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
106
19. Berikut ini pernyataan yang benar mengenai perulangan dengan kondisi
akhir diinputkan pengguna, kecuali ....
a. Kondisi dapat di awal atau di akhir perulangan
b. Inputan pengguna sebagai sentinel dapat diberikan sebelum
perulangan
c. Inputan pengguna sebagai sentinel dapat diberikan di dalam
perulangan
d. Inputan pengguna sebagai sentinel dapat diberikan setelah
perulangan
e. Dapat menggunakan REPEAT UNTIL
Jawaban: c
20. Syarat tipe data variabel pencacah adalah....
a. Dapat dihitung
b. Tipe data apa saja
c. Harus integer
d. Bilangan real
e. Karakter
Jawaban: c
21. Berikut ini pernyataan yang benar mengenai algoritma perulangan
dengan pencacah turun,kecuali....
a. Dapat dikonversikan dalam bentuk WHILE DO
b. Dapat menggunakan variabel bertipe data karakter sebagai
pencacah
c. Banyaknya iterasi sudah ditentukan
d. Tidak dapat diubah dalam bentuk pencacah naik
e. Dapat digunakan sebagai algoritma untuk menentukan baris
bilangan
Jawaban: b
22. Sekumpulan data yang bertipe sama dan antara data satu dengan data
yang lain dibedakan dengan indeksnya merupakan pengertian dari....
a. Integer
b. Array
c. Variabel
d. Char
e. Booelan
Jawaban: b
23. Array yang terdiri dari m buah baris (row) dan n buah kolom (column)
adalah….
a. Array satu dimensi
107
b. Variabel
c. Integer
d. Array dua dimensi
e. Array multidimens
Jawaban: d
24. Int array [10] = {2,5,4,8,1,3,7,9,10,21}
Nilai array pada indeks 5 adalah ...
a. 2
b. 5
c. 3
d. 7
e. 9
Jawaban: c
25. $ibukota = array;
(array (“Jakarta”,”Indonesia”), array (“London”,”Inggris”));
Jika output adalah “Indonesia”, maka indeks array yang dipilih adalah
a. [0][0]
b. [0][1]
c. [1][0]
d. [1][1]
e. [1][2]
Jawaban: b
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
108
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 Atas (SMA) Kelas : X Mata pelajaran : Informatika Jumlah Soal : 5 Alokasi waktu : 90 menit Tahun Pelajaran : 2019/2020
Nomor Soal
Kompetensi yang Diuji
Indikator Pencapaian Kompetensi
Materi Indikator soal
Level kognitif
Kelas Bentuk
Soal
1 3.8.1. Mengenal notasi algoritma
3.8.1.1.1. Mampu menyebutkan jenis instruksi yang dituliskan dalam notasi algoritma dan menyebutkan dampak
Dasar-dasar pemrograman
Disajikan suatu algoritma peserta didik menganalisis struktur dasar algoritma tersebut
C4 X Pilihan Ganda
2 3.8.2. Mengenal struktur/templates program dalam bahasa yang diajarkan
3.8.2.1.1. Mengenal kerangka program utama dan isinya serta struktur sebuah program dalam bahasa yang dipilih untuk diajarkan
Dasar-dasar pemrograman
Disajikan suatu kode bahasa pemrograman peserta didik menganalisis struktur jenis bahasa pemrograman
C4 X Pilihan Ganda
109
3 3.8.3. Memahami variabel, value, konstanta, ekspresi dan instruksi input/output
1.8.1.1.3. Mengenali program construct untuk tipe primitif, variabel, konstanta, value, ekspresi, instruksi I/O
Dasar-dasar
pemrograman
Disajikan kode bahasa pemrograman peserta didik menganalisis kesalahan yang terjadi pada kode program tersebut
C4 X Pilihan Ganda
4 3.8.4. Memahami mekanisme eksekusi kondisional dan loop
3.8.1.1.4 Mengenal instruksi kondisional dan loop dan memahami mekanisme eksekusinya
Dasar-dasar
pemrograman
Disajikan kode program yang mengandung percabangan peserta didik menganalisis keluaran program
C4 X Pilihan Ganda
5 3.8.5. Memahami struktur data dasar (array sederhana)
3.8.1.1.5. Memahami pendeklarasian variabel bertipe array, mengisi dan menuliskan dalam bahasa yang diajarkan
Dasar-dasar
pemrograman
Disajikan kode program yang mengandung array peserta didik menganalisis pendeklarasian array
C4 X Pilihan Ganda
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
110
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN KARTU SOAL
Tahun Pelajaran 2019/2020
Jenis Sekolah Kelas Mata Pelajaran
: SMA : X : Informatika
Kurikulum Bentuk Soal Nama Penyusun
: 2013 : Pilihan Ganda : Nurul Hayati
KOMPETENSI DASAR : 3.8.1. Mengenal notasi
algoritma
Buku Sumber:
Pengetahuan/ Keterampilan
Aplikasi
Penalaran
Nomor Soal
RUMUSAN BUTIR SOAL Disajikan algoritma menghitung luas lingkaran: Algoritma Luas_Lingkaran {Menghitung luas lingkaran untuk ukuran jari-jari tertentu. Algoritma menerima masukan jari-jari lingkaran, menghitung luasnya, lalu cetak luasnya ke piranti keluaran} Deklarasi : jari_jari = real {tipe data bilangan pecahan} luas = real {tipe data bilangan pecahan} PHI = 3.14 Deskripsi: 1. Baca jari_jari 2. Hitung luas = PHI*jari_jari * jari_jari 3. Tampilkan luas ke layar 4. Selesai Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan, pemilihan dan pengulangan. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Berdasarkan algoritma diatas struktur dasar pada bagian deskripsi adalah:
a. runtunan
b. pemilihan c. pengulangan d. repetisi
1
LINGKUP MATERI : Algoritma dan Pemrograman
MATERI : Dasar-dasar Pemrograman INDIKATOR SOAL : Disajikan suatu algoritma peserta didik menganalisis struktur dasar algoritma tersebut
Kunci Jawaban
A
PAKET - …
111
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN KARTU SOAL
Tahun Pelajaran 2019/2020
Jenis Sekolah Kelas Mata Pelajaran
: SMA : X : Informatika
Kurikulum Bentuk Soal Nama Penyusun
: 2013 : Pilihan Ganda : Nurul Hayati
KOMPETENSI DASAR : 3.8.2. Mengenal
struktur/templates program dalam bahasa yang diajarkan
Buku Sumber:
Pengetahuan/ Keterampilan
Aplikasi
Penalaran
Nomor Soal
RUMUSAN BUTIR SOAL Perhatikan kode program berikut:
import java.io.File; //<- 1. Impor library class Program { //<- 2. Bagian class public static void main(String args[]){ //<- 3. Method main System.out.println("Hello World"); } }
Kode program diatas adalah kode program menggunakan Java, mengapa demikian….
a. kode program memiliki struktur class untuk pendeklarasian nama program
b. kode program memiliki import library yang memiliki class dan fungsi
c. kode program dibentuk dengan struktur import library, bagian class dan method main
d. kode program memiliki blok program main() untuk pengeksekusian awal
2 LINGKUP MATERI : Algoritma dan Pemrograman
MATERI : Dasar-dasar Pemrograman INDIKATOR SOAL : Disajikan suatu kode bahasa pemrograman peserta didik menganalisis struktur jenis bahasa pemrograman
Kunci Jawaban
C
PAKET - …
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
112
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN KARTU SOAL
Tahun Pelajaran 2019/2020
Jenis Sekolah Kelas Mata Pelajaran
: SMA : X : Informatika
Kurikulum Bentuk Soal Nama Penyusun
: 2013 : Pilihan Ganda : Nurul Hayati
KOMPETENSI DASAR : 3.8.3. Memahami
variabel, value, konstanta, ekspresi dan instruksi input/output
Buku Sumber:
Pengetahuan/ Keterampilan
Aplikasi
Penalaran
Nomor Soal
RUMUSAN BUTIR SOAL Perhatikan kode program berikut:
Kode program diatas adalah kode program untuk membuat data diri dengan membuat variabel nama, alamat, usia dan tinggi, Namun kode program diatas menghasilkan output yang salah dalam memanggil suatu nilai variabel, kesalahan tersebut terdapat pada baris kode ?
a. membuat variabel b. mengisi variabel c. mencetak ke layar isi variabel d. pendeklarasian kelas
3
LINGKUP MATERI : Algoritma dan Pemrograman
MATERI : Dasar-dasar Pemrograman INDIKATOR SOAL : Disajikan kode bahasa pemrograman peserta didik menganalisis kesalahan yang terjadi pada kode program tersebut
Kunci Jawaban
C
PAKET - …
113
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN
KARTU SOAL Tahun Pelajaran 2019/2020
Jenis Sekolah Kelas Mata Pelajaran
: SMA : X : Informatika
Kurikulum Bentuk Soal Nama Penyusun
: 2013 : Pilihan Ganda : Nurul Hayati
KOMPETENSI DASAR : 3.8.4. Memahami
mekanisme eksekusi kondisional dan loop
Buku Sumber: Pengetahuan/ Keterampilan
Aplikasi
Penalaran
Nomor Soal
RUMUSAN BUTIR SOAL Perhatikan kode program percabangan (loop) berikut ini: int hari = 5; switch(hari){ case 1: case 2: case 3: case 4: case 5: case 6: System.out.println (“Bukan hari libur”); Break; case 7: System.out.println (“Hari libur”); Break; Default; System.out.println (“Hari tidak diketahui”); Break;
Jika program diatas dijalankan, maka program akan menghasilkan tulisan….
a. Hari libur b. Bukan hari libur c. Hari tidak diketahui d. error
4 LINGKUP MATERI : Algoritma dan Pemrograman MATERI : Dasar-dasar Pemrograman
INDIKATOR SOAL : Disajikan kode program yang mengandung percabangan peserta didik menganalisis keluaran program
Kunci Jawaban
B
PAKET - …
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
114
KEMENTRIAN PENDIDIKAN DAN KEBUDAYAAN
KARTU SOAL Tahun Pelajaran 2019/2020
Jenis Sekolah Kelas Mata Pelajaran
: SMA : X : Informatika
Kurikulum Bentuk Soal Nama Penyusun
: 2013 : Pilihan Ganda : Nurul Hayati
KOMPETENSI DASAR : 3.8.5. Memahami struktur
data dasar (array sederhana)
Buku Sumber: Pengetahuan/ Keterampilan
Aplikasi
Penalaran
Nomor Soal
RUMUSAN BUTIR SOAL Perhatika kode program array berikut:
// membuat array
String[] nama = {"Linda", "Santi",
"Susan", "Mila", "Ayu"};
// mengambil data array
System.out.println(teman[2]);
Jika kita menghasilkan output “Mila”, maka pendeklarasian yang benar adalah:
a. string[3] nama = {"Linda",
"Santi", "Susan", "Mila",
"Ayu"};
b. string[4] nama = {"Linda",
"Santi", "Susan", "Mila",
"Ayu"};
c. System.out.println(teman[4]);
d. System.out.println(teman[3]);
5 LINGKUP MATERI : Algoritma dan Pemrograman
MATERI : Dasar-dasar Pemrograman
INDIKATOR SOAL : Disajikan kode program yang mengandung array peserta didik menganalisis pendeklarasian array
Kunci Jawaban
D
PAKET - …
115
KESIMPULAN
Dasar-dasar pemrograman yang dipelajari pada unit ini merupakan salah
satu materi yang digunakan dalam memahami pembentukan suatu program
komputer dengan menggunakan bahasa pemrograman tingkat tinggi. Peserta
didik di tingkat Sekolah Menengah Atas kelas X diajarkan untuk dapat
memahami dasar-dasar pembuatan program komputer dengan
menggunakan suatu bahasa pemrograman tingkat tinggi. Ini dilakukan
dengan tujuan untuk mengasah kemampuan berfikir dan penalaran mereka
lebih lanjut untuk menghasilkan suatu karya teknologi dimasa depan.
Untuk itu dengan dipelajarinya dasar-dasar pemrograman pada subunit ini,
guru di Indonesia diharapkan dapat memiliki pengetahuan untuk
mengajarkan materi dasar-dasar pemrograman 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 dengan menggunakan suatu bahasa pemrograman.
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
116
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 Unit
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
117
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
Keterangan
1=tidak menguasai
2 = cukup menguasai
3 = menguasai
4 = Sangat Menguasai
Pedoman Penskoran
Skor= 𝐽𝑢𝑚𝑙𝑎ℎ 𝑇𝑜𝑡𝑎𝑙
40x100
Keterangan Umpan Balik
Skor Umpan Balik
< 70 : Masih banyak yang belum dipahami, di antara konten, cara
membelajarkannya, mengembangkan penilian dan melaksanakan
Program PKB melalui PKP berbasis Zonasi
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN
Lembaga Pengembangan dan Pemberdayaan Pendidik dan Tenaga Kependididikan
Bidang Kelautan Perikanan Teknologi Informasi dan Komunikasi
118
penilaian berorientasi HOTS. Saudara membaca ulang subunit ini
dan mendiskusikannya dengan dengan fasilitator di MGMP sampai
anda memahaminya.
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.
KEMENTERIAN PENDIDIKAN DAN KEBUDAYAANLEMBAGA PENGEMBANGAN DAN PEMBERDAYAANPENDIDIK DAN TENAGA KEPENDIDIKANBIDANG KELAUTAN PERIKANANTEKNOLOGI INFORMASI DAN KOMUNIKASI2019Jl. Diklat No. 30 Tambungbatu Desa Paccellekang Kec. PattallassangKab. Gowa Prov. Sulawesi Selatan - 92171
Unit PembelajaranProgram Pengembangan Keprofesian Berkelanjutan (PKB)melaluiPeningkatan Kompetensi Pembelajaran (PKP)Berbasis Zonasi