informatika kelas 9 bab 7 Algoritma dan pemrograman, bilangan prima dengan scratch dan blockly
By Insight Chamber
Algoritma dan Pemrograman: Ringkasan Komprehensif
Key Concepts:
- Algoritma: Urutan langkah-langkah logis untuk menyelesaikan masalah.
- Pemrograman: Proses menerjemahkan algoritma ke dalam bahasa yang dapat dimengerti komputer.
- Scratch: Bahasa pemrograman visual berbasis event yang dirancang untuk pemula.
- Blockly: Pustaka JavaScript untuk membuat bahasa pemrograman visual berbasis blok.
- Event-driven programming: Paradigma pemrograman di mana alur program ditentukan oleh event (misalnya, klik mouse).
- Procedural programming: Paradigma pemrograman di mana program dieksekusi secara berurutan berdasarkan prosedur atau fungsi.
- Modularisasi: Memecah program menjadi modul-modul kecil yang dapat digunakan kembali.
- Bilangan Prima: Bilangan yang hanya dapat dibagi oleh 1 dan bilangan itu sendiri.
- Modulo (MOD): Operator yang menghasilkan sisa pembagian.
- Variabel Boolean: Variabel yang hanya memiliki dua nilai: true (benar) atau false (salah).
1. Pengantar dan Tujuan Pembelajaran
Bab 7 membahas algoritma dan pemrograman, dengan fokus pada penggunaan Scratch dan Blockly. Tujuan pembelajarannya meliputi:
- Memahami instruksi dalam lingkungan pemrograman.
- Memahami modularisasi program dan model komputasi.
- Mengembangkan program visual sederhana.
- Menerapkan aturan translasi konsep dari bahasa visual ke bahasa visual lainnya.
- Memahami ozobot atau robot lainnya (jika tersedia).
2. Apersepsi: Modularisasi Program
Program yang rumit seringkali memiliki bagian kode yang berulang. Modularisasi memungkinkan penyimpanan bagian kode yang berulang ini dalam prosedur atau fungsi, yang dapat dipanggil saat dibutuhkan. Ini meningkatkan efisiensi dan keterbacaan kode.
3. Perbandingan Scratch dan Blockly
- Scratch: Bahasa pemrograman visual berbasis event yang dirancang untuk membuat cerita, komik, permainan, dan animasi interaktif. Memiliki stage, backdrop, dan Sprite.
- Blockly: Pustaka JavaScript untuk membuat bahasa pemrograman visual berbasis blok. Lebih primitif daripada Scratch, tetapi dapat digunakan untuk membuat produk serupa dengan waktu yang lebih lama.
- Perbedaan Utama: Scratch berbasis event, sedangkan Blockly menerapkan teknik pemrograman prosedural. Scratch 3.0 dikembangkan dengan menggunakan Blockly.
4. Perbandingan Blok Scratch dan Blockly
Terdapat banyak blok yang memiliki fungsi serupa di Scratch dan Blockly, tetapi dengan nama dan sintaks yang sedikit berbeda. Beberapa contoh:
| Nama Blok Scratch | Nama Blok Blockly | Keterangan to the best of my knowledge.
repeat
: Mengulangi blok di dalamnya sejumlah kali tertentu.repeat until
: Mengulangi blok di dalamnya sampai kondisi tertentu terpenuhi.forever
: Mengulangi blok di dalamnya tanpa henti.if then
: Mengeksekusi blok di dalamnya jika kondisi tertentu terpenuhi.if then else
: Mengeksekusi satu blok jika kondisi tertentu terpenuhi, dan blok lain jika tidak.length of
: Mengembalikan panjang (jumlah karakter) dari sebuah string.set variable
: Menetapkan nilai ke sebuah variabel.change variable
: Mengubah nilai sebuah variabel.show variable
: Menampilkan nilai sebuah variabel di layar.hide variable
: Menyembunyikan nilai sebuah variabel di layar.make a block
: Membuat blok kustom yang dapat digunakan kembali.
5. Uji Pemahaman
- Pemrograman berbasis event: Alur program ditentukan oleh event seperti klik mouse atau ketukan keyboard.
- Mengapa menguasai banyak bahasa pemrograman? Memungkinkan penggunaan bahasa yang paling sesuai untuk masalah tertentu.
- Blok yang ada di Scratch tetapi tidak ada di Blockly:
length of
danhide variable
. - Blok yang ada di Blockly tetapi tidak ada di Scratch:
function
danfor each item in list
.
6. Praktik: Menentukan Bilangan Prima
Tujuan: Membuat program di Scratch dan Blockly untuk menentukan apakah sebuah bilangan bulat positif adalah bilangan prima.
Konsep Bilangan Prima: Bilangan yang hanya dapat dibagi oleh 1 dan bilangan itu sendiri.
Input: Bilangan bulat positif n
.
Output: "Prima" jika n
adalah bilangan prima, "Bukan Prima" jika bukan.
Analisis:
- Definisikan variabel
n
sebagai input. - Definisi bilangan prima:
n
hanya memiliki dua faktor, yaitu 1 dann
. - Buat variabel
i
yang bernilai dari 2 hinggan-1
. - Periksa apakah ada faktor pembagi antara 2 dan
n-1
.
Algoritma:
- Input bilangan bulat
n
. - Untuk semua nilai
i
dari 2 hinggan-1
:- Periksa apakah
n
habis dibagii
. - Jika ya, maka
n
bukan bilangan prima.
- Periksa apakah
- Jika tidak ada
i
yang habis membagin
, makan
adalah bilangan prima.
7. Implementasi di Scratch
- Variabel:
n
(input),i
(pembagi),result
(penanda prima/bukan prima). - Inisialisasi:
set n to 173
(atau input lain).set i to 2
.set result to 1
(asumsi awal: prima).
- Looping:
repeat until i = n
.- Di dalam loop:
if n modulo i = 0 then
:set result to 0
(bukan prima).
change i by 1
.
- Di dalam loop:
- Output:
if result = 0 then
:say "Bukan Prima"
.
else
:say "Prima"
.
Penjelasan Kode Scratch:
- Program dimulai saat bendera hijau diklik (event).
- Tiga variabel dibuat:
n
,i
, danresult
. n
diatur ke 173 (dapat diganti).i
diatur ke 2 (pembagi awal).result
diatur ke 1 (asumsi awal bahwan
adalah prima).- Loop
repeat until i = n
dijalankan. - Di dalam loop,
if n modulo i = 0
memeriksa apakahn
habis dibagii
. Jika ya,result
diatur ke 0 (menandakan bahwan
bukan prima). change i by 1
meningkatkan nilaii
untuk iterasi berikutnya.- Setelah loop selesai,
if result = 0
memeriksa apakahresult
masih 1 (prima). Jika ya, program mengatakan "Prima". Jika tidak, program mengatakan "Bukan Prima".
8. Implementasi di Blockly
- Variabel: Sama seperti Scratch.
- Inisialisasi:
set n to 173
.set i to 2
.set result to true
(asumsi awal: prima).
- Looping:
repeat while i < n
.- Di dalam loop:
if remainder of n / i = 0 then
:set result to false
(bukan prima).
change i by 1
.
- Di dalam loop:
- Output:
if result = true then
:window alert "Prima"
.
else
:window alert "Bukan Prima"
.
Penjelasan Kode Blockly:
- Program dimulai dengan inisialisasi variabel
n
,i
, danresult
. - Loop
repeat while i < n
dijalankan. - Di dalam loop,
if remainder of n / i = 0
memeriksa apakahn
habis dibagii
. Jika ya,result
diatur kefalse
(menandakan bahwan
bukan prima). change i by 1
meningkatkan nilaii
untuk iterasi berikutnya.- Setelah loop selesai,
if result = true
memeriksa apakahresult
masihtrue
(prima). Jika ya, program menampilkan pesan "Prima". Jika tidak, program menampilkan pesan "Bukan Prima".
9. Perbandingan Implementasi
| Fitur | Scratch | Blockly |
| --------------------- | ------------------------------------- | ------------------------------------- |
| Tipe data boolean | Tidak ada, menggunakan 0 dan 1 | Ada (true/false) |
| Blok pengulangan | repeat until
| repeat while
|
| Sisa hasil bagi | modulo
| remainder of
|
| Menampilkan hasil | say
| window alert
|
10. Kesimpulan
Bab ini memberikan pengantar tentang algoritma dan pemrograman menggunakan Scratch dan Blockly. Dengan memahami konsep-konsep dasar dan perbedaan antara kedua bahasa pemrograman visual ini, pembelajar dapat mengembangkan program sederhana dan memecahkan masalah komputasi. Perbedaan utama terletak pada pendekatan event-driven (Scratch) versus procedural (Blockly), serta perbedaan sintaks dan fitur yang tersedia.
Chat with this Video
AI-PoweredHi! I can answer questions about this video "informatika kelas 9 bab 7 Algoritma dan pemrograman, bilangan prima dengan scratch dan blockly". What would you like to know?