Programming Fundamental I
Programming Fundamental I
01
Pengenalan
Pemrograman
Unit Overview
Ruang Lingkup : Agar Siswa/i dapat mengenal pembagian bahasa pemrograman
berdasarkan tingkat kedekatannya dengan komputer
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Siswa/i dapat mengenal pembagian bahasa pemrograman berdasarkan tingkat
kedekatannya dengan komputer
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong,
kerjasama, toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam
berinteraksi secara efektif sesuai dengan perkembangan anak di lingkungan, keluarga,
sekolah, masyarakat, dan lingkungan alam sekitar, bangsa, negara, kawasan regional, dan
kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual,
konseptual, prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks
berdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan
humaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradaban
terkait penyebab fenomena dan kejadian, serta menerapkan pengetahuan pada bidang
kajian yang spesifik sesuai dengan bakat dan minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif,
produktif, kritis, mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan
abstrak terkait dengan pengembangan dari yang dipelajarinya di sekolah, serta mampu
menggunakan metoda sesuai dengan kaidah keilmuan
Kompetensi Dasar
Memahami bahasa pemrograman
Mampu menentukan kategori bahasa pemrograman
Topik
Mengenal Bahasa Pemrograman
Mengenal Bahasa Pemrograman
Pemrograman sudah menjadi bagian dari kehidupan kita sehari-hari. Saat kita membuka
aplikasi, setiap fiturnya digerakkan oleh berbagai macam kode. Begitu pula dengan website
atau software yang kita gunakaan. Semuanya perlu kode untuk bisa bekerja sesuai dengan
fungsinya.
Sebagai contoh, misalkan kita membuka aplikasi traveloka lalu melakukan booking tiket
pesawat. Proses booking tersebut dijalankan oleh kode-kode yang ada di dalam aplikasinya.
Atau misalkan kita menyalakan lagu di Spotify, lagu yang kita play bisa terdengar karena ada
kode yang menginstruksikan aplikasinya untuk memutar lagu yang dipilih.
Python punya fungsi yang cukup luas. Mulai dari pengembangan web, aplikasi
Python
bisnis, hingga AI dan Machine Learning
Umumnya digunakan untuk mengembangkan aplikasi web atau aplikasi
Java
android
JavaScript Berguna untuk pengembangan aplikasi web, aplikasi mobile atau game.
Biasanya digunakan untuk pengembangan lintas aplikasi, khususnya untuk
C#
bisnis.
Berfungsi untuk pengembangan website dan CMS (Content Management
PHP
System)
C++ Umumnya digunakan untuk mengembangkan game
Swift Bahasa pemrograman ini umumnya digunakan untuk membuat aplikasi di IOS
TEST YOUR
KNOWLEDGE
Question
1. Sebutkan aplikasi-aplikasi apa saja yang ada pada laptop, komputer, atau
handphone anda beserta kegunaannya. (Minimal 3).
2. Menurut kalian, Adakah keuntungan kita mempelajari bahasa pemrograman di kelas
8 ini?
3. Coba jelaskan bagaimana hubungan antara manusia, program dan komputer?
UNIT
02
Pengenalan Algoritma
dan Flowchart
Unit Overview
Ruang Lingkup : Agar siswa-siswa mampu membuat dan memahami algoritma dan
flowchart
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Siswa/i mampu menyusun langkah-langkah algoritma dalam menyelesaikan masalah dan
menggambarkan ke dalam flowchart
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan
lingkungan alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan
wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena
dan kejadian, serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan
bakat dan minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif,
kritis, mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait
dengan pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda
sesuai dengan kaidah keilmuan
Kompetensi Dasar
Memahami alur logika pemrograman komputer berupa algoritma dan flowchart
Mampu memahami alur logika pemrograman dan menggambarkan flowchart dengan perangkat
lunak komputer
Topik
Algoritma
Flowchart
Algoritma
Algoritma merupakan langkah-langkah dalam menyelesaikan suatu masalah dimana algoritma ini
akan berhenti ketika masalah sudah terselesaikan. Didalam algoritma kita dapat
mengibaratkannya seperti ini:
Pada gambar diatas kita dapat melihat masalah yang kita hadapi dan kita mengetahui solusi yang
ingin kita dapatkan, sehingga membutuhkan proses untuk menyelesaikan masalah tersebut.
Pada gambar diatas, dapat kita lihat proses menyelesaikan suatu masalah disebut dengan
algoritma. Sehingga kita dapat simpulkan bahwa algoritma itu merupakan langkah-langkah atau
proses yang terurut dalam menyelesaikan suatu masalah.
Dalam kehidupan kita sehari-hari, kita selalu menemukan banyak permasalahan yang dihadapi.
Berbagai cara kita lakukan untuk menyelesaikan permasalahan tersebut. Cara dari seseorang
belum tentu sama dengan cara orang lain untuk menyelesaikan permasalahan yang sama. Dengan
kata lain, kita menentukan langkah-langkah yang dilakukan untuk mencapai tujuan tertentu dalam
penyelesain masalah. Jadi dapat disimpulkan, masalah merupakan sejenis penghalang yang
mengganggu kita untuk mencapai tujuan kita. Penyelesaian masalah (problem solving) merupakan
proses untuk menghilangkan penghalang tersebut dengan melakukan aktivitas yang jelas dan
terurut.
Contoh kasus yang lain sebagai berikut:.
Kita memiliki masalah dimana kita memiliki 3 gelas, sebut saja gelas A, gelas B dan gelas C. Dimana
gelas A berisi air dan gelas B itu adalah sirup.
Dan kita menginginkan gelas A menjadi sirup dan gelas B menjadi air seperti gambar dibawah ini.
Dalam proses mencapai solusi diatas kita dapat memikirkan berbagai cara untuk menyelesaikan
masalah diatas diamana cara-caranya adalah:
Algoritma A:
1. Pindahkan isi A ke C
2. Pindahkan isi B ke A
3. Pindahkan isi C ke B
Algoritma B:
1. Pindahkan isi B ke C
2. Pindahkan isi A ke B
3. Pindahkan isi C ke A
Algoritma:
1. Baca masukan berupa alas segitiga (alasSegitiga)
2. Baca masukan berupa tinggi segitiga (tinggiSegitiga)
3. LuasSegitiga = alasSegitiga * tinggiSegitiga / 2
4. Tampilkan LuasSegitiga
Flowchart
Flowchart merupakan diagram visual yang menggambarkan cara kerja dari program. Flowchart
menunjukkan urutan dari setiap program atau subrutin yang dieksekusi. Pada dasarnya, flowchart
dapat digunakan sebagai panduan dalam coding. Flowchart dapat memberikan arahan kepada
programmer, apa yang harus dilakukan dari awal program sampai program tersebut berhenti.
Flowchart memiliki beberapa notasi yang digunakan untuk menggambarkan setiap urutan kerja
dari program. Notasi flowchart terdiri dari berbagai bentuk yang akan dihubungkan dengan garis
panah. Garis panah yang menghubungkan antar notasi menunjukkan proses yang dijalankan.
Proses tersebut akan dieksekusi oleh komputer secara berurutan. Setelah flowchart selesai
digambarkan, programmer cukup fokus konversi menjadi kode program.
TERMINAL
Notasi terminal digunakan sesuai dengan nama pada teks di simbol, seperti mulai (Start), selesai
(End) dan pause (Halt) pada logika berpikir. Notasi ini selalu digunakan sebagai awal dan akhir dari
program.
INPUT / OUTPUT
Notasi input/output digunakan untuk menunjukkan fungsi masukan / keluaran dari program. Jika
instruksi program menerima masukan dari disk, terminal atau lainnya, maka notasi ini akan
digambarkan pada flowchart. Hal yang sama juga berlaku ketika instruksi program menampilkan
keluaran pada program.
PROSES
Notasi proses digunakan untuk menggambarkan instruksi program seperti perhitungan aritmatika,
assignment, dan lain-lain, Semua logika proses digambarkan dengan notasi ini.
DECISION
Notasi decision digunakan untuk menunjukkan adanya percabangan pada program karena ada
kondisi kriteria yang menghasilkan beberapa alternatif pilihan instruksi. Setiap alternatif akan
menjalankan instruksi yang berbeda sesuai dengan kriteria yang sesuai. Setiap alternatif harus
dapat menuju ke posisi end.
KONEKTOR
Notasi konektor digunakan untuk menggambarkan flowchart yang panjang atau kompleks,
sehingga perlu untuk dipisah supaya lebih jelas dan mudah untuk dipahami. Notasi konektor juga
dapat digunakan untuk menghubungkan flowchart pada beberapa halaman yang berbeda.
Untuk menggambarkan flowchart pada komputer, kita dapat menggunakan berbagai alat bantu
perangkat lunak, seperti Microsoft Visio, Microsoft Word, Paint, atau aplikasi website seperti
draw.io. Pada modul ini, digunakan alat bantu berupa aplikasi draw.io atau app.diagrams.net.
Contoh Flowchart:
1. Menampilkan luasSegitiga
Task 2:
Buatlah Algoritma dan Flowchart untuk menyelesaikan masalah berikut:
a. Menghitung uang kembalian di pasar
b. Cara memasak Indomie di dapur
c. Menghitung Luas Lingkaran
Solution
Task 1
Permasalahan: Menghitung Luas Persegi Panjang
Masukan:
Panjang persegi panjang
Lebar persegi panjang
Keluaran yang diharapkan:
Luas persegi panjang
TEST YOUR
KNOWLEDGE
Question
1. Flowchart disebut juga…
a. Diagram grafis
b. Diagram visual
c. Diagram komunikasi
d. Diagram struktur
e. Diagram bebas
4. Berisi instruksi awal untuk persiapan yang diperlukan sebelum menangani pemecahan
masalah adalah…
a. Read
b. Process
c. Write
d. End
e. Start
5. Proses yang menentukan arah jalannya algoritma berdasarkan keputusan terhadap suatu
kondisi adalah…
a. Decision
b. Terminal
c. Input/Output
d. Process
UNIT
03
Pengenalan Aplikasi
mBlock
Unit Overview
Ruang Lingkup : Agar siswa/I mampu menggunakan dan memhami cara penggunaan aplikasi
mBlock
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Siswa/i mampu mempelajari ilmu dasar dan logika-logika umum di balik proses coding melalui
aplikasi mBlock.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami penggunaan aplikasi mblock
Topik
Pengenalan mBlock
Lingkungan kerja mBlock
Menjalankan Program mBlock
Pengenalan mBlock
mBlock adalah alat perangkat lunak pemrograman Science, Technology, Engineering, Arts and
Mathematics (STEAM) yang dirancang untuk pemrograman. mBlock ini dikembangkan dari Scratch
3.0 dan kode Arduino. mBlock mendukung bahasa pemrograman berbasis blok dan berbasis teks.
mBlock juga menyediakan layanan pemrograman perangkat lunak, layanan desain perangkat lunak
dan layanan pemeliharaan perangkat lunak komputer dalam pendidikan pemrograman. Dengan
mBlock, kita tidak hanya dapat membuat game dan animasi dengan menyeret blok atau
menggunakan kode Python. Dan mBlock juga menghadapkan kita pada teknologi mutakhir,
memungkinkan kita membuat proyek dengan teknologi seperti Artificial Intelligence (AI) dan Internet
of Things (IoT).
Instalasi mBlock
Aplikasi mBlock dapat didownload pada webstite https://mblock.makeblock.com/en-us/download/
dan mengikuti langkah-langkah instalasinya sesuai dengan sistem operasi komputer yang dipilih.
Kita juga bisa menggunakan versi web atau mobile untuk mBlock yang kita pelajari ini.
Setelah berhasil mendownload dan menginstall aplikasi mBlock, maka secara otomatis mBlock
akan terinstall pada sistem operasi komputer kita. Versi mBlock yang akan kita gunakan adalah
V5.3.0. Jika sistem operasi komputer tidak mendukung mBlock V5, maka kita boleh mendownload
versi yang lebih rendah.
Lingkungan Kerja mBlock
Ketika mBlock telah terinstall dengan baik pada komputer, maka kita dapat mencoba untuk
membuka aplikasi mBlock dan tampilannya akan seperti gambar dibawah ini.
STAGE AREA
Stage Area digunakan untuk mempresentasikan desain, mengkoneksikan, dan mengubah gambar
sprite beserta latar belakangnya. Pada Stage Area terdapat 3 panel yaitu:
A. Panel Device
Digunakan untuk mengkoneksikan Arduino. Arduino adalah kit elektronik atau papan
rangkaian elektronik open source yang didalmnya terdapat komponen utama yaitu sebuah
chip mikrokontroler dengan jenis AVR yang memakai konsep Internet of Things (IoT).
B. Panel Sprites
Digunakan untuk mengubah gambar visual atau objek yang bisa di program. Gambar default
yang dipakai pada mBlock 5 ini adalah gambar Panda. Selain mengubah gambar, pada panel
Sprites memiliki fungsi untuk mengatur ukuran dari gambar, mengubah posisi gambar dan
arah gambar tersebut.
C. Panel Background
Digunakan untuk mengubah latar belakang pemandangan untuk panggung gambar. Kita
dapat melakukan operasi apa pun di atasnya melalui pemrograman.
Pada pembelajaran ini kita hanya akan menggunakan panel Sprites dan Background.
BLOCKS AREA
Blocks Area berisi perintah-perintah dalam bentuk blok yang digunakan untuk menggerakkan sprite.
Blok pada mBlock dirancang dalam bentuk yang berbeda, masing-masing menunjukkan satu tipe
data. Blok dapat dihubungkan satu sama lain secara vertikal seperti teka-teki gambar. Program (atau
script) di mBlock dikompilasi dengan menghubungkan berbagai jenis blok secara vertikal.
Setiap hat blocks menggunakan cara tersendiri untuk mengaktifkan script, dan oleh karena itu
script dapat dieksekusi secara terpisah pada titik waktu yang berbeda.
2. Stack Blocks
Stack blocks adalah blok persegi panjang yang dapat ditampung di atau di bawah blok lain
dengan takik dibagian atas dan tonjolan dibagian bawah. Secara umum, stack blocks terlihat
seperti berikut ini.
Stack blocks digunakan untuk menjalankan perintah utama, dan karena itu merupakan
mayoritas di antara semua blok.
3. Reporter blocks
Reporter blocks digunakan untuk mengisi nilai yang dapat berupa nilai numerik atau string
karakter. Umumnya, reporter blocks terlihat seperti berikut ini.
Reporter blocks dapat digunakan dalam script apapun yang membutuhkan data, tetapi tidak
dapat digunakan secara tersendiri. Reporter blocks dapat dimasukkan ke dalam blok lain
selama slotnya sesuai.
4. Boolean blocks
Boolean blocks berisi kondisi, yang bisa berupa “True” atau “False”. Umumnya, boolean blocks
adalah segi enam memanjang seperti yang ditunjukkan berikut ini.
Boolean blocks harus dimasukkan ke dalam slot heksagonal dari blok lain. Itu tidak dapat
digunakan secara mandiri.
5. Cap blocks
Cap blocks digunakan untuk mengakhiri script atau program. Blok ini hanya bisa diletakkan
dibawah semua blok. Umumnya, cap blocks terlihat seperti ini.
Pada Blocks Area juga terdapat beberapa jenis command type block seperti:
Fungsi yang dipakai untuk menggerakkan sprite, memutar posisi sprite dan mengubah
posisi sesuai dengan kondisi yang diinginkan.
Fungsi ini digunakan untuk memberikan suara pada sprite ataupun stage seperti
memberikan suara pada panda dan memberi backsound pada program.
Fungsi untuk mengeluarkan suara pada sprite dan melakukan pengaturan volume sesuai
dengan kondisi yang diinginkan.
Fungsi yang digunakan untuk mengatur script atau kode pada sprite untuk
bergerak/berjalan.
Fungsi untuk mengatur pergerakkan pada sprite untuk mengulangi perintah gerakan
secara terus-menerus dan berhenti dengan kondisi yang diinginkan.
Fungsi yang digunakan untuk memberikan sensor pada perintah yang digunakan. Contoh:
“touching color brown” jika digabungkan dengan blok if maka perintah tersebut akan
menjadi: “jika menyentuh warna coklat, maka lakukan perintah dibawah ini (Perintah di
dalam blok if).
SCRIPT AREA
Script area adalah tempat untuk membuat sprite melakukan sesuatu (bergerak, melompat, bersuara,
dan seterusnya). Kita harus membuat bahasa program (sekumpulan instruksi), dengan cara mendrag
(menggeser) blok tab ke bagian script area. Jika tediri dari beberapa blok, maka kaitkan atau
satukan bloknya berdasarkan urutan instruksi.
Untuk lebih jelasnya perhatikan gambar dibawah ini.
Saat menyimpan file mBlock kita tidak bisa langsung menggunakan shortcut CTRL + S. Untuk
menyimpan file di mBlock harus melalui menu “File” kemudian pilih “Save to your computer”. Berkas
yang berisi kumpulan blok memiliki ekstensi .mblock. Nama dari berkas sebaiknya sederhana namun
menggambarkan sesuatu. Hal yang perlu diingat adalah nama file tidak boleh memiliki karakter spasi.
Contoh penulisan nama berkas mblock adalah Chapter1-1.mblock, Contoh1.mblock dan lain-lain.
Penggunaan nama berkas yang benar akan memudahkan kita untuk mencari dan melihat ulang blok
program yang telah kita buat.
Langkah-langkah pembuatan:
1. Bukalah aplikasi mBlock.
2. Pilih Menu “File” – “Save to your computer”. Simpanlah berkas tersebut dengan nama “Unit03-
01.mblock” pada direktori komputer kita.
3. Pada Stage Area pilihlah menu Sprites.
4. Pada command type block pilih menu Events, kemudian cari blok when Green Flag clicked klik
and drag ke bagian script area.
5. Pada command type block pilih Looks, kemudian cari blok say Hello! klik and drag ke bagian
bawah dari blok when Green Flag clicked. Ganti kata Hello! menjadi Hello World!
6. Klik tombol icon bendera hijau untuk melihat sprite panda mengucapkan Hello World!.
7. Hasil dari blok program pada berkas “Unit03-01.block” akan ditampilkan seperti gambar
dibawah ini.
Kita telah berhasil membuat blok program sederhana dengan menggunakan aplikasi mblock.
Exercise
Task 1:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit03-E01.mblock”
c. Buatlah Sprite Panda mengucapkan
1. Kata pertama “Hello my name is ‘your name’.“ selama 4 detik.
2. Kedua berpikir “Hmm... What to say next?” selama 3 detik.
3. Yang ketiga “My favourite food is ‘your choice’.” Selama 2 detik.
Task 2:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit03-E02.mblock”
c. Buatlah Sprite Panda:
1. Sprite menunggu selama 4 detik.
2. Berjalan sejauh 100 steps
3. Mengubah size Sprite menjadi 200%
4. Kemudian Sprite Panda mengucapkan “I am a GIANT NOW!!!”
Task 3:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit03-E03.mblock”
c. Tambahkan Sprite baru “Bird19” di bagian Animal. Kita dapat menyembunyikan Sprite Panda
d. Kemudian ubahlah Background “Forest4” di bagian nature.
e. Dan terakhir tambahkan blok agar Sprite Bird19 mengucapkan kata “Hello I am Zoro, Nice to
meet you.”
Solution
Task 1
TEST YOUR
KNOWLEDGE
Question
1. Putra adalah seorang siswa SMP yang akan membuat animasi gerak sederhana
menggunakan pemrograman visual mblock. Untuk menjalankan animasi tersebut Putra
2. Untuk membuat Sprite berjalan 10 atau 1000 langkah kita bisa menggunakan blok…
a. Move 10 / 1000 steps
b. Turn right 10 degrees
c. Turn Left 10 degrees
d. Set X to 1000
e. Set Y to -1000
3. Area yang digunakan untuk mengganti / menambahkan sprite atau mengganti background
sprite adalah…
a. Script Area
b. Stage Area
c. Block Area
d. Panel Stage
e. Design Area
UNIT
04
Operator pada
Mblock 5
Unit Overview
Ruang Lingkup : Agar siswa/I mampu memahami dan menggunakan operator-operator pada
aplikasi mBlock
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Agar siswa memahami penggunaan operator-operator yang ada pada aplikasi mblock 5
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami bahasa pemrograman
Mampu menentukan kategori bahasa pemrograman
Topik
Operator pada mBlock
Pengenalan Operator
Dalam bahasa pemrograman, terdapat istilah operand dan operator. Operator adalah instruksi yang
diberikan untuk mendapatkan hasil dari proses tersebut, sedangkan operand adalah nilai asal yang
digunakan didalam proses operasi.
Kondisi bernilai benar jika bilangan pertama lebih besar dari bilangan kedua.
Kondisi bernilai benar jika bilangan pertama lebih kecil dari bilangan kedua.
Kondisi bernilai benar jika bilangan pertama sama dengan bilangan kedua.
Kondisi bernilai benar jika kondisi pertama dan kondisi kedua bernilai benar.
Kondisi bernilai benar jika kondisi pertama atau kondisi kedua bernilai benar.
Blok yang mengembalikan apakah teks parameter pertama berisi teks parameter
kedua atau tidak.
Melaporkan hasil fungsi yang dipiliha dari (abs, sqrt, sin, cos, tan, asin, acos, atan,
In, log, e ^, 10 ^.
Operator Aritmatika
Blok yang digunakan untuk melakukan operasi penambahan (+), pengurangan (-), perkalian (*), dan
pembagian (/) merupakan operator aritmatika. Contoh sederhana dapat dilihat dari gambar dibawah
ini.
Operator
penambahan
(+)
Operator
pengurangan
(-)
Operator
perkalian (*)
Operator
pembagian
(/)
Selain operasi dasar matematika, kita juga dapat menggunakan kombinasi operator yang ada. Python
akan mengeksekusi operasi matematika sesuai dengan aturan pada matematika. Operasi dasar
matematika yang akan dijalankan terlebih dahulu dengan prioritas 1 sampai 4 adalah sebagai berikut:
1 Pengelompokkan ()
2 Perpangkatan ^
4 Penjumlahan, Pengurangan +, -
Operator Relasional
Blok yang digunakan untuk melakukan operasi lebih dari (>), kurang kecil (<), dan sama dengan (=)
merupakan operator relasional. Hasil dari penggunaan operator relasional biasanya berupa jawaban
TRUE (benar) atau FALSE (salah). Contoh sederhana dapat dilihat dari gambar dibawah ini.
Operator
lebih dari (>)
Operator
kurang dari
(<)
Operator
sama
dengan
(=)
Operator Logika
Blok yang digunakan untuk melakukan operasi and, or dan not merupakan operator logika. Hasil dari
penggunaan operator logika biasanya berupa jawaban TRUE (benar) atau FALSE (salah).
Kondisi1 Kondisi1
Kondisi1 Kondisi2 and or not Kondisi1 not Kondisi2
Kondisi2 Kondisi2
TRUE TRUE TRUE TRUE FALSE FALSE
TRUE FALSE FALSE TRUE FALSE TRUE
Operator
and
Operator
or
Operator
not
Operator Random
Suatu project tertentu kita perlu menghasilkan angka acak di beberapa titik, terutama jika membuat
game dan simulasi. Pada mBlock menyediakan random blok untuk kasus ini. Output dari pick random
0-1 dan random 0-1.0 itu berbeda. Jika terdapat input pada blok random yang mengandungg desima;,
output juga akan menjadi nilai desimal.
{0, 1}
{0, 1, 2, 3, … , 10}
{-2, -1, 0, 1, 2}
2.
UNIT
05
Variabel Pada
mBlock 5
Unit Overview
Ruang Lingkup : Agar siswa/I mampu memahami cara pembuatan dan penggunaan fungsi dan
Variabel pada aplikasi mBlock
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Agar siswa memahami penggunaan variabel dan fungsinya pada aplikasi mblock 5
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami bahasa pemrograman
Mampu menentukan kategori bahasa pemrograman
Topik
Pengenalan Variabel
Studi Kasus Variabel pada mBlock
Pengenalan Variabel
Pada pemrograman, komputer dapat menyimpan dan memanipulasi data setiap waktu. Hal ini
merupakan bagian paling dasar dalam pemrograman. Untuk menyimpan dan manipulasi data, kita
menggunakan yang namanya variabel.
Variabel adalah penamaan nilai pada memori komputer. Kita dapat menganggapnya sebagai sebuah
kotak yang menyimpan data, termasuk angka dan teks, untuk program yang mengakses jika
diperlukan. Pembuatan variabel memerlukan memori yang cukup untuk menyimpan nilai variabel dan
tag memori yang dialokasikan dengan nama variabel.
Contoh dari penamaan variabel yang bisa dinamakan adalah ‘namaSaya’ , ‘nama1’ , ‘Saya’ dan
sebagainya. Setelah membuat variabel, kita dapat menggunakan namanya dalam program kita untuk
menyimpan suatu nilai. Perhatikan gambar dibawah ini.
Memberikan perubahan variabel dengan jumlah yang ditentukan. Jika kita memilih
lebih dari satu variabel, kita dapat menggunakan menu pull down untuk memilih nama
variabel.
7. Masih di menu Looks, drag think Hmm… for 2 seconds sebanyak 2 kali dan ganti Hmm…
dengan variabel b dan variabel c. Perhatikan gambar dibawah ini.
8. Apabila sudah mengikuti langkah-langkah diatas kita akan mencoba untuk menjalankan
blok yang sudah kita susun. Jika susunannya sudah benar maka sprite panda akan
mengucapkan angka 10 selama 2 detik, memikirkan angka 20 selama 2 detik dan angka
selanjutnya 30 selama 2 detik (kita boleh mencoba untuk mengganti background sprite
sesuai dengan keinginan kita).
Exercise
Task 1:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit05-E01.mblock”
c. Buatlah 2 buah variabel “pemb” dan “peny”
d. Variabel pemb memiliki nilai 1 / 5 + 5 / 7 dan variabel peny memiliki nilai 7 / 8 – 2 / 3
e. Kemudian Sprite Panda akan menyebutkan hasil dari pemb / peny.
Berapakah nilai yang akan diucapkan oleh sprite panda?
Task 2:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit05-E02.mblock”.
c. Sediakan 4 buah variabel “a”, “b”, “c”, “d”.
d. Kemudian set:
1. Variabel a dengan 1 / 5
2. Variabel b dengan 5 / 7
3. Variabel c dengan 7 / 8
4. Variabel d dengan 2 / 3
e. Sprite Panda akan menyebutkan hasil dari a + b / c – d
Task 3 (Challenge):
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit05-E03Challenge.mblock”.
c. Buatlah 2 buah sprite, anggap saja sprite Panda dan sprite Alladin. Sprite panda akan
memikirkan sebuah angka random dari 1 sampai 10 dan sprite Alladin akan diminta untuk
menebak angka yang dipikirkan oleh sprite Panda.
Hint: pada sprite Panda kita gunakan blok Events broadcast message1 dan sprite Alladin
gunakan blok Event when I receive message1. Fungsi broadcast adalah untuk mengirim pesan
ke semua sprite, kemudian dilanjutkan dengan blok berikutnya.
Solution
Task 1
TEST YOUR
KNOWLEDGE
Question
1. Variabel digunakan dalam suatu program untuk…
a. Menyimpan sebuah nilai
b. Menyembunyikan sebuah nilai
c. Melenyapkan nilai yang ada
d. Menyimpan sebuah shape
e. Semua Benar
2. Perintah yang digunakan untuk membuat variabel baru pada mblock adalah…
a. New Variable
b. Make a Variable
c. Set a Variable
d. Show a Variable
e. Make a Variable List
3. Perintah yang digunakan untuk memberikan nilai 100 pada variabel jumlah pada mblock…
a. Change jumlah by 100
b. Give jumlah value 100
c. Set jumlah to 100
d. Show jumlah value 100
e. Jumlah = value 100
4. Pada mblock, nama variabel berikut yang cocok(dapat) digunakan adalah…
a. JumlahSiswa
b. Jumlah_Siswa
c. Jumlah Siswa
d. jumlahsiswa
e. Semua Benar
5. Pada mblock, nilai berikut yang mungkin disimpan oleh variabel adalah…
a. True
b. False
c. 3.14
d. “Budi”
e. Semua jawaban Benar
UNIT
06
Percabangan pada
Mblock 5
Unit Overview
Ruang Lingkup : Agar siswa/I mampu memahami dan penggunaan fungsi IF pada aplikasi
Mblock
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Siswa/I mampu memahami cara pengguanaan fungsi IF / percabangan pada mBlock
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami bahasa pemrograman
Mampu menentukan kategori bahasa pemrograman
Topik
Pengenalan Percabangan
Penggunaan Blok If Else
Pengenalan Percabangan
Perintah yang ada di blok control menjelaskan tentang cara mengatur pergerakkan di dalam objek
untuk mengulangi perintah gerakan secara terus-meneurs dan berhenti dengan kondisi yang
diinginkan. Blok control if dapat digunakan sebagai alat pengambil keputusan tentang perintah mana
yang akan dijalankan berdasarkan kondisi tertentu yang diberikan. Struktur tersebut dikenal sebagai
struktur percabangan / decision making
Penggunaan Blok If
Pada Mblock 5 terdapat blok control if yang digunakan untuk melakukan seleksi sederhana. Jika
kondisi bernilai benar maka program akan menjalankan perintah blok berikutnya.
# proses
If ( kondisi ) then:
execute block
# blok
# proses
If ( kondisi ) then:
execute block 1
else
execute block 2
# blok
Perintah execute block 1 akan dijalankan ketika kondisi benar dan execute block 2 akan dijalankan
ketika kondisi salah. Contoh sederhana dapat dilihat dari gambar dibawah ini.
Penjelasan:
Pada contoh diatas jika kita memasukkan nilai di antara 51 sampai 100, maka sprite panda akan
mengucapkan “Selamat Anda Lulus” karena sesuai dengan kondisi yang dibuat. Sprite Panda akan
mengucapkan “Anda Tidak Lulus” ketika kita memasukan nilai di antara 1 sampai 50.
Exercise
Task 1:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit06-E01.mblock”
c. Anda diminta untuk mencari tahu apakah bilangan dimasukkan berupa ganjil atau genap. Jika
anda memasukkan sebuah angka, maka sprite panda akan mecari tahu apakah bilangan
tersebut merupakan bilangan ganjil atau bilangan genap.
Task 2:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit06-E02.mblock”
c. Anda diminta untuk mencari tahu apakah bilangan dimasukkan merupakan bilangan positif
atau bilangan negatif. Jika anda memasukkan sebuah angka, maka sprite panda akan mecari
tahu apakah bilangan tersebut merupakan bilangan positif atau negatif
Task 3 (Challenge):
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit06-E03Challenge.mblock”
c. Buatlah 2 buah sprite, anggap saja sprite Panda dan sprite Penguin. Panda akan menanyakan
sebuah angka kepada penguin. Ketika penguin memberikan sebuah angka, maka panda akan
menjawab apakah angka tersebut merupakan bilangan ganjil atau bilangan genap.
Solution
Task 1
UNIT
07
Perulangan pada
Mblock 5
Unit Overview
Ruang Lingkup : Agar siswa/I mampu menggunakan fungsi perulangan/looping pada aplikasi
Mblock
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Agar siswa-siswi mampu memahami penggunaan perulangan dalam bahasa pemrograman.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami bahasa pemrograman
Mampu menentukan kategori bahasa pemrograman
Topik
Penggunaan Blok Repeat (value)
Penggunaan Blok Forever
Penggunaan Blok Repeat until (Condition)
Pengenalan Perulangan
Perulangan adalah struktur program yang digunakan untuk melaksanakan suatu perintah secara
berulang-ulang. Meskipun perintah kode program uang dijalankan sama, namun data yang diolah
untuk setiap perulangan bisa saja berbeda. Pada Mblock 5, kita dapat menggunakan blok repeat
(value), forever, dan repeat until (condition).
# proses
repeat ( value ) :
execute block
# blok
Penjelasan:
Kita memulainya dengan membuat sebuah variabel number, kemudian kita memberikan variabel
number dengan angka 1. Karena kita ada menggunakan blok change number by 1, maka setelah
angka 1 akan dilanjutkan dengan angka 2, 3, 4, dst sebanyak 10 kali perulangan.
Penggunaan Blok Forever
Blok control forever digunakan untuk menjalankan blok dalam berulang-ulang. Pada blok forever
kita tidak memerlukan kondisi apapun agar dapat dijalankan.
# blok
Penjelasan:
Blok forever akan terus melakukan perulangan sampai tak terhingga. Salah satu cara untuk
menghentikan blok forever adalah dengan menekan tombol stop.
# blok
Contoh sederhana dapat dilihat dari gambar dibawah ini.
Penjelasan:
Kita memulainya dengan membuat sebuah variabel number, kemudian kita memberikan variabel
number dengan angka 0 dan kita menetapkan kondisi number sama dengan 11. Sprite panda akan
mengucapkan angka dari 0 sampai 10. Karena variabel number sudah menyimpan angka 11 dan
dilakukan pengecekan terhadap kondisi yang dibuat telah sesuai, maka sprite panda akan
mengucapkan All Clear.
Exercise
Task 1:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit07-E01.mblock”
c. Anda diminta untuk membantu sprite panda untuk menyebutkan 10 buah angka bilangan
ganjil. Bilangan ganjil tersebut berupa 1, 3, 5, 7, …, 19.
Task 2:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit07-E01.mblock”
c. Anda diminta untuk membantu sprite panda untuk melakukan countdown 10 buah angka
bilangan dimulai dari 10. Bilangan tersebut berupa 10, 9, 8, …, 1.
Task 3:
Eksekusi program Mblok dengan ketentuan:
a. Bukalah aplikasi mblock.
b. Simpan dengan nama “Unit07-E03.mblock”
c. Anda diminta untuk membantu sprite Panda mengucapkan 10 buah angka random dari nilai 1
sampai dengan 20.
Solution
Task 1
TEST YOUR
KNOWLEDGE
Question
1. Blok perintah berikut yang digunakan untuk perulangan di mblock adalah…
a. Repeat, repeat until, dan loop until
b. Repeat, loop until, dan forever
c. Repeat, Repeat until dan forever
d. Repeat until, loop until, dan forever
e. For, while
2. Blok perintah pada mblock yang digunakan jika jumlah perulangan yang dijalankan telah
diketahui adalah blok perintah…
a. Repeat (value)
b. Repeat until
c. Forever
d. Loop until
e. For
3. Blok perintah pada mblock yang sering digunakan pada game dengan gerakan sprite tidak
pernah berhenti sampai diinterupsi adalah blok perintah…
a. Repeat (value)
b. Repeat Until
c. Forever
d. Loop Until
e. For
4. Blok perintah yang dijalankan sampai suatu kondisi tujuan tercapai adalah blok perintah
perulangan…
a. Repeat (value)
b. Repeat until
c. Forever
d. Loop until
e. For
UNIT
08
Pengenalan Python
Unit Overview
Ruang Lingkup : Siswa-siswa memahami penggunaan Aplikasi Python
Alokasi Waktu : 80 menit
Tujuan Pembelajaran
Siswa/i mampu melakukan instalasi Editor Python sesuai dengan sistem operasi yang dipilih.
Siswa/i dapat menjalankan kode program Python pada lingkungan kerja Python.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya.
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional.
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan.
Kompetensi Dasar
Memahami dan menggunakan perangkat lunak Python.
Mampu menentukan kategori bahasa pemrograman dan menjalankan program Python sederhana.
Topik
Pengertian Python
Instalasi Python
Setting Lingkungan kerja Python
Terminal pada Windows
Menjalankan Kode Program Python
Python
Python adalah bahasa pemrograman yang mudah untuk dipahami dan populer dalam pengembangan
aplikasi. Python merupakan bahasa tingkat tinggi dan dipakai di segala bidang seperti membuat
game, sistem berbasis web, dan bahkan dapat membuat mesin pencarian sendiri. Sintaks pada
Python memudahkan programmer untuk menuliskan instruksi untuk komputer dalam baris yang lebih
pendek dibandingkan dengan bahasa pemrograman lain.
Sebelum memulai untuk mempelajari bahasa pemrograman Python, beberapa pengetahuan yang
perlu diketahui, yaitu:
1. Kita harus mempunyai komputer dengan sistem operasi yang telah terinstall, seperti Windows,
Mac OS atau Linux.
2. Kita harus mempunyai dasar penggunaan komputer, seperti membuka file, menyimpan file
ataupun menghapus file.
3. Kita harus teliti pada setiap rincian pada program, seperti bisa membedakan colon (:) dan
semicolon (;), karena kedua karakter tersebut memiliki arti dan peran yang berbeda.
Instalasi Python
Bahasa pemrograman Python dapat dijalankan pada komputer dengan sistem operasi Windows,
Linux dan Mac OS. Langkah-langkah untuk mendownload dan menginstall Python:
3. Setelah selesai mendownload, kita dapat mendapatkan file python yang didownload pada
folder Download di File Explorer.
4. Pada tahapan ini kita diminta untuk memilih siapa saja yang boleh memakai python. Pilih
saja ‘Install for all users’ agar bisa dipakai untuk semua user di komputer/ laptop.
5. Tentukan lokasi python yang akan diinstall. Biarkan saja di C:\Python##\, kemudian klik
next.
6. Selanjutnya jangan lupa untuk mengaktifkan ‘Add python.exe to path’ agar perintah python
dikenali pada CMD (Command Prompt).
Setelah
diaktifkan
Program dengan bahasa Pemrograman Python juga dapat diketikkan pada editor sederhana seperti
notepad atau wordpad. Hal yang paling penting adalah pada saat penyimpanan file harus diakhiri
dengan ekstensi .py.
Interpreter merupakan program komputer yang menerjemahkan baris kode program dan
menjalankannya secara langsung. Interpreter diibaratkan sebagai seorang penerjemah yang
langsung merjemahkan kalimat satu per satu baris. Siklus dari interpreter adalah tulis/ edit kode
program kemudian eksekusi. Untuk lebih jelasnya dapat dilihat pada gambar dibawah ini.
Kompilator merupakan program komputer yang membaca keseluruhan baris kode program dan
menerjemahkannya sekaligus ke bahasa mesin. Siklus dari kompilator adalah tulis/ edit kode
program, kompilasi dan eksekusi. Untuk lebih jelasnya dapat dilihat pada gambar dibawah ini.
Untuk memahami dasar dari penulisan kode program Python, kita dapat membuat script yang
sederhana yaitu Hello World.
Kode program tersebut akan meminta kepada interpreter Python untuk menjalankan perintah
secara langsung pada editor. Hasil dari kode program yang dimasukkan dapat dilihat dengan
menekan tombol “enter”.
3. Hasil yang ditampilkan dari kode program tersebut adalah sebagai berikut.
Selain menggunakan Interpreter untuk menjalankan kode program secara langsung, kita juga dapat
menuliskan kode program tersebut pada file dengan ekstensi .py. Langkah-langkah pembuatannya:
1. Bukalah editor Python IDLE.
2. Pilihlah menu “File” -> “New File” atau kita dapat menekan shortcut “Ctrl + N”.
3. Pilihlah menu “File” -> “Save” atau kita dapat menekan shortscut “Ctrl + S” untuk menyimpan
file Python. Simpanlah file tersebut dengan nama “Unit08-01.py”.
4. Ketikanlah kode program dibawah ini pada kompilator.
5. Untuk menjalankan kode program tersebut dapat dilakukan dengan cara menu “Run” -> “Run
Module” atau kita dapat menekan shortcut “F5”.
6. Hasil dari kode program pada file “Unit08-01”.py akan ditampilkan pada Python Shell, seperti
yang diitunjukkan gambar dibawah ini.
Exercise
Task 1:
Mengeksekusi kode program Python dengan mode compiler, dengana ketentuan:
a. Buka editor berupa Python Shell
b. Buka File baru dan simpan dengan nama “Unit08-Task1”
c. Masukkan kode program yang menampilkan nama Anda dan Hobi yang paling Anda sukai.
Contoh luaran dan eksekusi kode program Python sebagai berikut.
Task 2:
Mengeksekusi kode program Python dengan mode interpreter, dengan ketentuan:
a. Buka editor berupa Python Shell
b. Kemudian ketikkanlah kode program dibawah ini untuk mendapatkan .
UNIT
09
Tujuan Pembelajaran
Siswa/i dapat mengenal dan membedakan berbagai tipe data bahasa pemrograman Python.
Siswa/i mampu memberikan penamaan variabel yang sesuai data yang disimpan pada variabel
berdasarkan aturan yang ada pada bahasa pemrograman Python.
Siswa/i dapat mengenal berbagai macam keyword yang tidak boleh digunakan sebagai variabel.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Memahami tipe data dan variabel serta penggunaannya dalam program Python.
Mampu membuat program dengan memanfaatkan tipe data, variabel, dan keyword.
Topik
Tipe data Program
Penggunaan Tipe Data Program
Variabel
Keyword
Case Sensitive
INTEGER
Dalam bahasa pemrograman, tipe data integer adalah tipe data yang terdiri dari angka bulat (tidak
mengandung nilai pecahan atau nilai desimal). Nilai ini bisa berbentuk angka positif maupun angka
negatif. Contoh data yang menggunakan tipe data integer adalah 1, 2, 6, -44, 20000, atau 128730123.
FLOAT
Tipe data float juga termasuk dalam tipe data numerik yang menyimpan bilangan pecahan atau sering
juga dikenal bilangan real. Pemisah bilangan desimal yang digunakan adalah tanda titik (.). Contoh
data yang menggunakan tipe data float adalah:
a. Nilai konstanta matematika PI (π).
b. Suhu normal tubuh manusia (36.5˚).
STRING
Tipe data string sering disebut dengan tipe data teks, karena tipe data string menyimpan nilai berupa
teks. Contoh data yang menggunakan tipe data string adalah:
a. Nama guru
b. Nama jalan raya
c. Judul buku
BOOLEAN
Tipe data boolean adalah tipe data yang menyimpan dua nilai, yaitu True dan False. Penulisan True
dan False di huruf pertamanya menggunakan huruf besar. Dan biasanya tipe data ini berpasangan
dengan pengecekan suatu kondisi yang menggunakan IF.
a. Status aktif dari siswa: True untuk siswa yang aktif dan False untuk siswa tidak aktif
b. Kondisi pencarian data: True untuk ditemukan dan False untuk tidak ditemukan
3. String, data teks atau kumpulan karakter. Tipe data string ditandai dengan pemberian kutip,
baik itu kutip satu (‘) ataupun kutip dua (“). Setiap nilai yang berada dalam tanda kutip
satu/dua dianggap tipe data string baik itu huruf ataupun angka.
Variabel
Pada pemrograman, komputer akan menyimpan dan memanipulasi data setiap waktu. Hal ini
merupakan bagian paling dasar dalam pemrograman. Untuk menyimpan dan manipulasi data, kita
menggunakan Variabel.
Variabel adalah lokasi memori yang dicadangkan untuk menyimpan nilai-nilai. Ini berarti bahwa
ketika ingin membuat sebuah variabel kita memesan beberapa ruang di memori. Variabel menyimpan
data yang dilakukan selama program dieksekusi, yang nantinya isi dari variabel tersebut dapat diubah
oleh operasi-operasi tertentu pada program yang menggunakan variabel.
Variabel dapat menyimpan berbagai macam tipe data. Di dalam pemrograman Python, variabel
mempunyai sifat yang dinamis, artinya variabel Python tidak perlu dideklarasikan tipe data tertentu
dan variabel Python dapat diubah saat program dijalankan.
NAMA VARIABEL
Berdasarkan definisinya, setiap variabel wajib memiliki nama. Programmer diharapkan mampu
memberikan nama variabel yang menggambarkan isi dari variabel (deskriptif). Contohnya, kita ingin
membuat toko secara virtual. Toko virual memiliki sejumlah barang dan produk yang berbeda.
Komputer tidak akan peduli dengan penamaan dari semua variabel yang akan kita buat. Nama
variabel seperti a, bc, asdf, qwerty tidak akan menjadi masalah bagi komputer. Namun, programmer
harus mampu mengingat semua nama variabel tersebut untuk dipanggil dan diproses lebih lanjut.
Oleh karen itu, nama variabel diharapkan dapat memberikan informasi yang jelas kepada
programmer, sehingga mudah dibaca dan mudah dipahami dalam jangka waktu yang lama.
Contoh penamaan variabel dengan konvensi camel case adalah namaLengkap, jumlahBuku,
alamatRumah, nomorTelepon, dan lain-lain.
KEYWORD
Pada bahasa pemrograman, tidak semua kata dapat digunakan sebagai nama variabel. Terdapat
beberapa kata yang telah digunakan bahasa pemrograman sebagai penanda instruksi tertentu.
Proses compile akan membaca setiap baris kode program dan keyword untuk dieksekusi oleh
komputer. Pada bahasa pemrograman Python, beberapa keyword khusus yaang memiliki arti tertentu
adalah
Ketika kita mengetikkan keyword pada Python Shell, maka warna tulisan dari keyword akan menjadi
warna ungu atau jingga. Python Shell memberi penanda kepada programmer supaya tidak melakukan
kesalahan yang tidak diperlukan. Variabel dengan nama yang sama dengan keyword akan
menyebabkan program menjadi error.
2. Coba tentukan tipe data yang paling cocok untuk Data Edit profil pengguna dibawah ini:
Task 2:
Tentukan nama Variabel berikut yang salah dan berikan alasannya:
a. Suhu ruangan e. tinggiNada1 i. merek.
b. _jarak f. nama-lengkap j. print
c. Break g. 9data k. True
d. jumlahKata h. (Class) l. $berat
Statement pada
Python
Tujuan Pembelajaran
Siswa/i mampu memahami penggunaan statement bahasa pemrograman.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya.
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional.
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan.
Kompetensi Dasar
Memahami sintaks statement bahasa pemrograman Python.
Menulis kode pemrograman sesuai dengan aturan dan sintaks bahasa pemrograman Python.
Topik
Statement pada Python
Statement Assignment
Statement Ekspresi
Statement Print
Statement merupakan perintah/instruksi yang dapat dieksekusi oleh komputer. Ekspresi merupakan
kombinasi dari nilai variabel dan atau operator.
Statement Assignment
Setelah kita mengenal variabel, maka kita perlu operasi yang digunakan bahasa pemrograman untuk
memberi instruksi kepada komputer. Kita menggunakan statement assignment untuk melakukan hal
tersebut.
Statement assignment merupakan kode baris program yang memasukkan nilai ke dalam variabel.
Secara umum, bentuk umum dari statement assignment adalah
<variabel> = <expression>
Keterangan:
<variabel> = nama dari variabel pada baris program
<expression> = nilai yang akan dimasukkan dalam variabel, dapat berupa hasil perhitungan
atau variabel lain
Setelah kita memahami tentang aturan penamaan variabel, konversi dan case sensitif, maka kita
dapat menjalankan statement assignment yang lebih rumit. Selain berisi sebuah nilai, variabel juga
dapat berupa nilai dari variabel lain atau hasil perhitungan.
Pada bahasa pemrograman Python, kita dapat menuliskan statement assignment pada Python shell.
Baris pertama, menunjukkan statement assignment yang berisi sebuah nilai sederhana. Kita
membuat sebuah variabel buku yang berisi nilai 30.
Nilai variabel dapat berupa sebuah nilai yang sudah pasti (konstanta). Variabel konstanta biasa
ditandai dengan huruf kapital untuk semua karakternya. Contohnya : PHI, MAX, JUMLAH_ITERASI,
THETA, ALPHA, dan lain-lain.
Statement Print
Statement print merupakan salah satu keyword pada bahasa Python. Fungsi dari keyword print
adalah untuk menampilkan / mencetak luaran ke media yang ditentukan. Sintaks dari statement
print adalah
Selain menampilkan isi dari sebuah variabel, statement print juga dapat menampilkan beberapa hal
sekaligus dalam satu baris kode program. Pemisah antara nilai pertama dengan nilai berikutnya
adalah menggunakan karakter koma ( , ).
Tujuan Pembelajaran
Siswa/i mampu menggunakan operator pada bahasa pemrograman.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya.
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional.
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan.
Kompetensi Dasar
Memahami penggunaan operator pada bahasa pemrograman Python.
Membuat kode program dengan operasi aritmatika, logika, dan relasional.
Topik
Operator Aritmatika
Operator Logika
Operator Relasional
Operator Aritmatika
Operator aritmatika berhubungan dengan penanganan operasi dasar matematika, yang ditunjukkan
seperti tabel dibawah ini.
Selain operasi dasar matematika, kita juga dapat menggunakan kombinasi operator yang ada.
Python akan mengeksekusi operasi matematika sesuai dengan aturan pada matematika. Operasi
dasar matematika yang akan dijalankan terlebih dahulu dengan prioritas 1 sampai 4.
1 Pengelompokkan ()
2 Perpangkatan ^
3 Perkalian, Pembagian, Modulus *, / , mod
4 Penjumlahan, Pengurangan +, -
Operator Logika
Operator Boolean atau operator Logika adalah operator yang digunakan untuk melakukan operasi
logika, yang menghasilkan nilai TRUE (benar) atau FALSE (salah).
Kondisi1 Kondisi1
Kondisi1 Kondisi2 and or not Kondisi1 not Kondisi2
Kondisi2 Kondisi2
TRUE TRUE TRUE TRUE FALSE FALSE
TRUE FALSE FALSE TRUE FALSE TRUE
FALSE TRUE FALSE TRUE TRUE FALSE
FALSE FALSE FALSE FALSE TRUE TRUE
Operator Keterangan
(kurang dari)
Mengembalikan apakah x kurang dari y. Semua operator pembanding
<
mengembalikan True atau False. 5 < 3 mengembalikan False, 3 < 5
mengembalikan True dan 2 < 5 < 7 mengembalikan True.
(lebih dari)
>
Mengembalikan apakah x lebih dari y. 5 > 3 mengembalikan True.
(kurang dari atau sama dengan)
<= Mengembalikan apakah x kurang dari atau sama dengan y. 5 <= 5
mengembalikan True.
(lebih dari atau sama dengan)
>= Mengembalikan apakah x lebih dari atau sama dengan y. 5 >= 5 mengembalikan
True.
(sama dengan)
== Membandingkan apakah kedua obyek sama 2 == 2 mengembalikan True,
‘nama’ == ‘Nama’ mengembalikan False, ‘nama’ == ‘nama’ mengembalikan True.
(tidak sama dengan)
!=
Membandingkan apakah kedua obyek berbeda. 2 != 3 mengembalikan True.
2. Tuliskan niilai dari setiap variabel dari kode program Python berikut:
3. Tuliskan nilai dari setiap variabel dari kode program Python berikut:
Program Python
Sederhana
Tujuan Pembelajaran
Siswa/i mampu menggunakan program python dengan menggunakan mode compile
Siswa/i mampu melakukan perintah komentar program
Siswa/i mampu melakukan perintah Whitespace
Siswa/i mampu memahami kesalahan program / error
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Siswa/i dapat memahami
Topik
Program Perhitungan
Komentar Program
Whitespace
Kesalahan Program / Error
Komentar Program
Komentar memiliki peranan yang penting dalam pembuatan dokumentasi kode program. Komentar
membantu programmer untuk memahami maksud dari program tanpa harus membaca seluruh baris
kode program. Komentar pada program tidak akan dieksekusi oleh komputer.
Terdapat dua cara untuk membuat komentar pada kode program Python, yaitu:
Whitespace
Bahasa pemrograman Python mengabaikan semua karakter yang tidak terlihat. Kita dapat
menambah spasi dan tambahan baris kosong tanpa dieksekusi oleh komputer. Karakter spasi juga
sering ditambahkan ketika menuliskan operasi matematika. Dengan penambahan spasi, kode
program akan lebih mudah untuk dibaca. Karakter backslash ( \ ) dapat digunakan sebagai penanda
kode program ke baris berikutnya.
Ketika kita mendapatkan pesan kesalahan pada editor, kita wajib membacanya dengan teliti, supaya
kita dapat memperbaiki kode program yang salah. Pada kasus ini, kesalahan ditemukan pada nama
variabel ‘Planet’ yang belum pernah didefinisikan sebelumnya. Solusinya adalah ubah nama variabel
‘Planet’ menjadi ‘planet’.
EXCEPTION ERROR
Kesalahan tipe kedua yang terjadi pada saat kode program akan dijalankan. Kesalahan ini juga
dikenal sebagai runtime error. Tipe kesalahan ini cukup sulit dideteksi karena perlu pengetahuan yang
cukup mengenai bahasa pemrograman Python.
Gambar dibawah ini menunjukkan contoh exception error pada Python Shell.
Pada kasus ini, pesan kesalahan yang tampil adalah TypeError. Hal ini dikarenakan kesalahan dalam
penggunaan operator penambahan ( + ). Python tidak mengizinkan kita melakukan operasi
penambahan antara data bertipe string dan integer.
Kesalahan diatas terdapat pada kesalahan penggunaan operator. Solusi yang diharapkan adalah:
Dengan menggunakan variabel yang telah dideklarasikan, tampilkan keluaran program seperti berikut
Task 2:
1. Carilah kesalahan pada kode program Python berikut. Tuliskan tipe kesalahannya dan
berikan solusinya (jika ada)
a. x = y + 5 ) * 3
b. x = “1”
y=x+1
c. nilai = 9 ! 5
2. Coba cek kembali kode program dibawah ini. Carilah kesalahan pada program dan berikan
solusinya.
Tujuan Pembelajaran
Siswa/i mampu untuk menggunakan fungsi built-in pada bahasa pemrograman Python.
Siswa/i mampu untuk menggunakan program untuk meminta masukan dari pengguna.
Siswa/i mampu untuk melakukan penggabungan karakter (string).
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan
Kompetensi Dasar
Siswa/i dapat memahami penggunaan fungsi built-in pada bahasa pemrograman Python.
Siswa/i dapat memahami program untuk meminta masukan dari pengguna.
Siswa/i dapat memahami penggunaan karakter (string).
Topik
Fungsi Built-in pada program Python
Argument Fungsi, Hasil dari Fungsi, Fungsi Built-in: Type
Program untuk meminta masukan dari pengguna.
Fungsi Konversi, Fungsi Built-in: Int, Float, Str
Penggabungan Karakter
Sebagai ilustrasi, setiap mobil memiliki AC mobil. AC mobil merupakan bagian dari mobil yang terbuat
secara terpisah oleh pabrik lain. Namun, setiap mobil yang kita temui pasti memiliki AC. Ketika kita
ingin mendinginkan ruang mobil, kita dapat mengatur AC mobil supaya bisa menyala. AC mobil akan
mengeluarkan udara pendinginnya. Kita tidak perlu tahu bagaimana AC mobil bisa mengeluarkan
udara pendingin tersebut. Kita hanya perlu tahu bagaimana cara menyalakan dan mengatur
perangkat AC mobil. AC mobil dapat diibaratkan sebagai fungsi built-in. Kita tidak perlu memahami
cara kerja fungsinya secara rinci, namun kita perlu tahu bagaimana cara menggunakannya dengan
benar.
Python memiliki banyak fungsi built-in yang dapat digunakan dalam membuat program. Ketika kita
ingin menggunakan fungsi tersebut, kita perlu menuliskan nama fungsinya dan memberikan
beberapa informasi yang dibutuhkan dengan benar. Luaran dari fungsi dapat berupa informasi yang
baru.
Pemanggilan Fungsi
Fungsi built-in pada Python dapat dipanggil pada program dengan menuliskan nama fungsi dan
diikuti dengan karakter tanda kurung buka dan tanda kurung tutup.. Bentuk umum dari pemanggilan
fungsi
<functionName>( )
Gambar dibawah ini menunjukkan contoh pemanggilan fungsi built-in pada Python yaitu fungsi
license.
Contoh pemanggilan fungsi built-in yang memiliki argumen pada Python yaitu fungsi max.
Contoh pemanggilan fungsi built-in pada Python yang disimpan pada variabel.
Fungsi Konversi
Python memiliki beberapa fungsi built-in yang digunakan untuk konversi tipe data. Fungsi Konversi
sangat penting untuk mengolah data pada program. Kita tidak dapat melakukan operasi matematika
dasar pada data yang bertipe string. Semua masukan dari pengguna yang bertipe string harus
dikonversi ke tipe data integer atau float supaya dapat dilakukan operasi matematika. Contohnya,
string “1” harus dikonversi menjadi nilai 1. Fungsi built-in yang berhubungan dengan konversi tipe
data adalah fungsi int, float dan str.
Fungsi split digunakan untuk membagi atau memisahkan string dan menambahkan datanya ke array
string (list) menggunakan pemisah yang didefinisikan. Jika tidak ada pemisah yang didefinisikan saat
kita memanggil fungsi tersebut, maka secara otomatis akan menggunakan spasi.
Contoh program Python untuk fungsi split:
Selain itu fungsi split dapat juga digunakan untuk memisahkan kalimat yang ditandai sebagai
pemisah, akan tetapi kalimat pemisah tersebut tidak akan muncul di dalam list.
Fungsi split bisa juga digabungkan dengan fungsi input. Kata-kata yang kita input akan dipisahkan
dan tersimpan kedalam array string (list).
Contoh program Python fungsi split digabungkan dengan fungsi input.
Untuk menyelesaikan program diatas, kita akan melakukan langkah-langkah sebagai berikut:
1. Membuat berkas baru pada IDLE
2. Simpan berkas tersebut dengan nama Unit13-Kasus1.py
Selain cara diatas, kita mempunyai cara lain untuk mengganti bagian proses menjadi baris yang lebih
pendek, yaitu
Kode program ini dapat mempersingkat jumlah baris program. Cara ini dapat digunakaan jika nilai
dari variabel bilangan1 dan bilangan2 jarang digunakan. Untuk kasus ini, variabel bilangan1 dan
bilangan2 hanya digunakan satu kali untuk memproses nilai untuk variabel penjumlahan.
Task 2:
1. Buatlah sebuah Program perhitungan kasir, dengan ketentuan:
a. Buatlah kompilator baru dan save dengan nama Unit13-Task2a.py
b. Pengguna akan memasukkan nilai dari total pembelian
c. Pengguna akan memasukkan nilai dari jumlah uang yang diterima
d. Program akan menghitung total pengembalian yang merupakan pengurangan dari jumlah
uang yang diterima dengan total pembelian
e. Program akan menampilkan total pengembalian tersebut. Keluaran dari program ketika
dijalankan seperti dibawah ini
Task 3:
Buatlah sebuah kompilator untuk Program Biodata diri dan save dengan Unit13-Task3.py
a. Pengguna akan memasukkan masukan berupa nama, umur, tinggi badan, kelas, dan no hp.
b. Program akan menampilkan pesan biodata lengkap dan kata string. Keluaran dari program
ketika dijalankan seperti dibawah ini:
Agar pengecekan menjadi cepat, dibutuhkan sebuah program yang dapat mengkonversi panjang
tersebut menjadi satuan yang lebih mendetail, yaitu kilometer (km), meter (m) dan sisanya dalam
centimeter (cm). Buatlah sebuah kompilator untuk Program Menghitung Jarak dan save dengan
Unit13-Task4(Challenge).py.
Statement
Percabangan
Tujuan Pembelajaran
Siswa/i mampu memahami dan menerapkan ekspresi kondisi sesuai dengan persoalan.
Siswa/i mampu mengetahui struktur penulisan kode program percabangan.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya.
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional.
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan.
Kompetensi Dasar
Memahami struktur control percabangan dalam bahasa pemrograman,
Mampu memahami kode program struktur kontrol percabangan pada Python.
Topik
Penggunaan If
Alur logika percabangan dengan flowchart
Penggunaan If
Perintah if digunakan untuk melakukan seleksi sederhana. Jika kondisi bernilai benar maka program
akan menjalankan kode perintah berikutnya.
# proses
if ( kondisi ) :
kode
# proses
if ( kondisi ) :
Kode-1
else:
Kode-2
Perintah kode-1 akan dijalankan ketika kondisi benar dan kode-2 akan dijalankan ketika kondisi
salah.
Penggunaan if-elif-else
Perintah if-elif-else digunakan jika kita memiliki beberapa kondisi yang harus diseleksi sehingga kita
dapat memilih menjalankan perintah yang sesuai kondisi.
# proses
if (kondisi-1) :
Kode-1
elif (kondisi-2):
Kode-2
else:
Kode-3
2. Kita diminta untuk membuat program untuk mengecek apakah siswa lulus ujian atau tidak.
Jika nilai yang dimasukkan diatas atau sama dengan 65, maka tampil “Lulus”. Jika nilai lebih
kecil dari 65, maka tampil “Tidak Lulus”. Buatlah kompilator baru dan save dengan nama
Unit14-Task1b.py
3. Buatlah program untuk membandingkan 2 (dua) nilai yang dimasukkan pengguna. Luaran
dari aplikasi adalah nilai-1 = nilai-2, nilai-1 < nilai-2 atau nilai-1 > nilai-2. Buatlah kompilator
baru dan save dengan nama Unit14-Task1c.py
Task 3 (Challenge):
Buatlah kompilator baru dan save dengan nama Unit14-Task3(Challenge).py.
a. Jika masukan N merupakan angka satuan, cetak satuan.
b. Jika masukan N merupakan angka puluhan, cetak puluhan.
c. Jika masukan N merupakan angka ratusan, cetak ratusan.
d. Jika masukan N merupakan angka ribuan, cetak ribuan.
e. Jika masukan N merupakan angka puluh ribuan, cetak puluhribuan.
Tujuan Pembelajaran
Siswa/i mampu memahami dan menerapkan ekspresi kondisi sesuai dengan persoalan.
Siswa/i mampu mengetahui struktur penulisan kode program percabangan bertingkat.
Kompetensi Inti
Menghayati dan mengamalkan ajaran agama yang dianutnya.
Menghayati dan mengamalkan perilaku jujur, disiplin, santun, peduli (gotong royong, kerjasama,
toleran, damai), bertanggung jawab, responsif dan pro-aktif dalam berinteraksi secara efektif
sesuai dengan perkembangan anak di lingkungan, keluarga, sekolah, masyarakat, dan lingkungan
alam sekitar, bangsa, negara, kawasan regional, dan kawasan internasional.
Memahami, menerapkan, menganalisis, dan mengevaluasi pengetahuan faktual, konseptual,
prosedural, dan metakognitif pada tingkat teknis, spesifik, detil, dan kompleks berdasarkan rasa
ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan
kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait penyebab fenomena dan kejadian,
serta menerapkan pengetahuan pada bidang kajian yang spesifik sesuai dengan bakat dan
minatnya untuk memecahkan masalah.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif, kreatif, produktif, kritis,
mandiri, kolaboratif, komunikatif, dan solutif dalam ranah konkret dan abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah, serta mampu menggunakan metoda sesuai
dengan kaidah keilmuan.
Kompetensi Dasar
Memahami fungsi String, karakter Khusus, format dan operasi string pada Python.
Mampu memahami membuat kode program dengann menggunakan string, karakter khusus,
format dan operasi string pada Python.
Topik
Percabangan IF bertingkat
Penggunaan Operator Logika Kompleks
Penggunaan If-bertingkat
Percabangan bertingkat merupakan perintah percabangan yang berada didalam perintah
percabangan lainnya. Perintah percabangan bertingkat digunakan jika kita ingin menyelesaikan
masalah yang cukup kompleks.
# proses
if ( kondisi-1 ) :
if ( kondisi-2 ) :
kode-1
else :
kode-2
kode-3
else :
kode-4
Berikut adalah contoh penggunaan operator logika kompleks untuk menyelesaikan masalah pada
contoh diatas.
Buatlah kompilator baru dan save dengan nama Unit15-Task2.py untuk menyelesaikan masalah
diatas.