Bab 7: Algoritma Pemrograman



Kode Control, Input, dan Variable

Input adalah sebuah proses yang digunakan untuk meminta masukan dari pengguna dan hasil masukannya akan disimpan dalam sebuah variable. Input pada Scratch menggunakan blok [ask and wait] pada kategori Sensing dan dapat ditempatkan pada blok kode sprite manapun. 

Variable adalah sebuah nama yang digunakan untuk menyimpan sebuah nilai, dan nilai yang disimpan dapat diubah dengan blok [set variable to] atau [change variable by]. Variable dapat dikenali di semua Sprite (global variable) atau hanya dikenali di Sprite yang aktif saat Variable dibuat (local variable).

Kode Control yang tepat akan membuat program kalian menjadi lebih sederhana karena kalian tidak perlu menuliskan hal yang sama berulang kali. Akan tetapi, kalian harus memperhatikan bahwa ada kode Control yang dapat berulang secara tidak terbatas dan terbatas. Maka, kalian harus dapat berhati-hati dalam menggunakannya. Dengan kode Control juga, kalian dapat mengatur kondisi program kalian. Sebuah program terkadang memerlukan sebuah masukan/input dari pengguna, dan input tadi akan disimpan dalam sebuah variable sehingga dapat digunakan di bagian kode lainnya. Variable sendiri dapat digunakan langsung tanpa memerlukan input dari pengguna..

 


Kode Custom Block



Pengantar Blockly Games dan Eksplorasi Puzzle Maze

Blockly adalah suatu tools yang dapat membantu membuat program sederhana dengan menggunakan blok-blok, seperti halnya Scratch.Dengan menggunakan Blockly, proses pengetikan kode program digantikan dengan menggabungkan blok-blok.

Kalian dapat melakukan drag and drop pada blok-blok ini. Blok-blok ini merepresentasikan konsep-konsep dasar pemrograman seperti variabel, ekspresi logika, looping, dan lain-lain. Pada Blockly, blok-blok yang sudah disusun dapat langsung diterjemahkan ke berbagai bahasa pemrograman seperti JavaScript, PHP, Python, dan lain-lain.

Hal inilah yang membedakan antara Blockly dengan Scratch yang pernah kalian pelajari sebelumnya. Perhatikan Gambar dibawah ini sebagai contoh kode blok pada Blockly dituliskan dalam kode JavaScript. 


Ada berbagai cara untuk mendapatkan dan menggunakan tools ini, yaitu: 

  1. Coding with Chrome (https://chrome.google.com/webstore/detail/ coding-with-chrome/becloognjehhioodmnimnehjcibkloed) 
  2. Melalui demo yang disediakan pada https://developers.google.com/ Blockly 
  3. Melalui https://Blockly-demo.appspot.com/static/demos/code/index.html

Blockly Games dapat diakses melalui link https:// blockly.games/?lang=en. Tampilan Blockly Games ditunjukkan pada Gambar dibawah ini. Setiap lingkaran melambangkan sebuah permainan. Untuk mulai bermain, klik di salah satu lingkaran yang kalian pilih 



Eksplorasi Blockly Games Music

sekarang kalian akan mencoba permainan Music. Di bagian ini, kalian akan mengenali fungsi/ prosedur yang sama seperti Custom Block pada Scratch. Eksplorasi dapat kalian lakukan dengan mengakses situs https://blockly.games/music?lang=en



Bagian-bagian dari tampilan berikut menyerupai tampilan pada permainan Maze. Hanya ada perubahan pada blok yang tersedia dan sebuah slide bar pada bagian kiri seperti pada Gambar 7.8.


Slide bar pada Gambar 7.8 digunakan untuk mempercepat dan memperlambat jalannya program. Cobalah untuk menyelesaikan level 1 dan bereksplorasi dengan slide bar tersebut. Untuk menyelesaikan permainan Music, kalian harus menentukan nada-nada yang akan dimainkan saat Run Program di-klik. Nada-nada yang dimainkan sesuai dengan blok [play.. note..] yang tersedia.


Pada permainan ini, output dari program tidak hanya berupa display gambar, tetapi juga dapat menghasilkan suara. Jika kalian memasukan note C4 pada blok [play..note..], maka program kalian akan mengembalikan suara nada sesuai kunci C4.


Eksplorasi Sprites dengan Blockly

Kalau kalian ingat sewaktu eksplorasi dengan Scratch, blok kode program akan ditempatkan pada setiap sprite yang tersedia. Adapun Blockly memiliki pendekatan yang sedikit berbeda. Blok kode program pada Blockly ditempatkan pada tempat yang sama dan melalui aktivitas ini. Kalian akan mencoba eksplorasi Blockly dengan beberapa objek/sprite.

kalian akan menggunakan tools Coding with Chrome yang dapat diunduh dari https://chrome.google.com/webstore/detail/codingwith-chrome/becloognjehhioodmnimnehjcibkloed. Sesuai namanya, aplikasi ini dapat diunduh apabila kalian memiliki browser Google Chrome.

Setelah kalian berhasil melakukan instalasi tools Coding with Chrome, akan muncul tampilan awal seperti pada gambar 7.10



Kalian dapat memilih level programming kalian, Beginner untuk yang masih belajar dan Advanced untuk yang sudah lebih terbiasa dengan pemrograman. Untuk kali ini, kalian akan mencoba dulu yang tahap Beginner. Pilih menu Use Beginner Mode” dan kalian akan diminta untuk memilih lagi, ada menu Blockly, Games, dan Robots seperti pada Gambar 7.11.



Pada menu Beginner Mode, terdapat 3 kategori di dalamnya, yaitu:

Blockly: menggunakan blok-blok yang di drag & drop seperti pada Scratch dan Blockly Games untuk membuat kode program.

Games: menggunakan blok-blok yang di-drag & drop juga untuk membuat games

Robots: menggunakan Blockly untuk mengontrol jalannya robot. Terdapat beberapa merk robot yang dapat digunakan langsung, seperti Lego EV3 atau Sphero.



Pengenalan Pemrograman Prosedural 

Dalam pemrograman prosedural, kalian akan memprogram berdasarkan konsep komputer yang sudah dipelajari pada modul SK (Sistem Komputer). Tentunya kalian masih ingat, bahwa komputer mempunyai tiga elemen penting, yaitu perangkat input, pemroses utama (CPU), dan perangkat output. CPU memiliki memori, bus dan ALU.

Maka, komputer dapat menerima input, yang kemudian akan ditampung dalam memori, dan supaya dapat diambil kembali disimpan dalam sebuah “nama” variabel. Mengapa disebut variabel? Karena isinya dapat digantiganti, bervariasi sehingga disebut sebagai variabel. Dengan menyebutkan nama variabel, kalian akan mendapatkan nilainya.

Komputer dapat menampilkan/menuliskan suatu nilai isi variabel ke layar/ printer dengan perintah print. Adapun komponen komputer yang melakukan proses perhitungan aritmatika dan logika adalah ALU (bagian dari CPU).

Sebuah program komputer akan mengendalikan komputer dalam melakukan Input-Proses-Output. Maka, dengan menuliskan sebuah program komputer, kalian dapat memerintah komputer untuk hal berikut.

  1. Menerima input, dan menyimpannya dalam sebuah variabel, serta mengambil isinya jika diperlukan dengan menyebutkan nama variabel. 
  2. Mengeluarkan output, dengan menggunakan perintah “print”, “write”, atau “display” atau lainnya, yang akan membuat komputer menampilkan nilai yang disimpan dalam variabel atau diberikan, tergantung perintah tersebut mau diarahkan ke layar atau ke printer, atau ke piranti atau bahkan artefak keluaran lainnya (misalnya menyalakan/mematikan lampu).
  3. Melakukan perhitungan aritmatika dan logika, sesuai dengan operasi aritmatika yang menggunakan operator kali, bagi, tambah, kurang atau operasi logika dengan menggunakan operator and, or, not, atau operasi perbandingan dengan operator <, >, = 



Variabel

variabel digunakan untuk menyimpan nilai-nilai. Sebuah variabel juga harus memiliki nama sehingga dapat dibedakan dengan variabel lainnya. Berikut beberapa tips berikut ini ketika memberi nama untuk sebuah variable:

1. Buatlah nama variabel yang menggambarkan fungsi variabel tersebut. Misalkan, kalian ingin membuat variabel untuk menyimpan panjang, berilah nama “panjang” untuk variabel tersebut. Pemberian nama yang sesuai dengan fungsi variabel akan memudahkan kalian untuk memanggil variabel tersebut saat dibutuhkan. Bayangkan jika variabel kalian hanya bernama “x”, “y”, “z”. Mungkin kalian akan lupa apa fungsi variabel tersebut di tengah-tengah pengerjaan program. 

2. Tidak perlu memberikan nama yang panjang untuk variabel yang kalian buat. Untuk pemrograman dengan Blockly mungkin kalian merasa panjang dan pendek tidak berpengaruh, karena untuk menggunakan variabel tersebut kalian cukup memilih blok variabel tersebut. Akan tetapi, jika kalian menggunakan bahasa pemrograman lain yang mengharuskan kalian mengetik nama variabel untuk memanggil variabel tersebut, kalian akan kesulitan mengetik nama yang panjang dan mungkin kalian akan sulit mengingat semua nama variabel itu. Ada bahasa pemrograman yang bahkan membatasi panjangnya nama variabel. 


Percabangan

Salah satu kemampuan dari sebuah program komputer ialah kemampuannya dalam pengambilan keputusan. Untuk membuat program dapat memilih di antara beberapa alternatif atau keputusan-keputusan, ada dua hal yang harus dilakukan oleh komputer, yaitu:

  • a. memeriksa apakah suatu kondisi bernilai benar atau salah,
  • b. memilih keputusan atau alternatif berdasarkan kondisi tersebut.

Komputer memeriksa nilai kebenaran dari suatu kondisi dengan menggunakan operasi perbandingan dan operasi logika. Operasi perbandingan di dalam pemrograman antara lain adalah sebagai berikut.

  1. Sama dengan (=): operasi ini digunakan untuk memeriksa apakah dua buah nilai bernilai sama atau tidak.
  2. Tidak sama dengan (≠ ): operasi ini digunakan untuk memeriksa apakah dua buah nilai bernilai berbeda atau tidak. 
  3. Kurang dari (<): operasi ini digunakan untuk memeriksa apakah suatu nilai lebih kecil daripada nilai lainnya. 
  4. Lebih dari (>): operasi ini digunakan untuk memeriksa apakah suatu nilai lebih besar daripada nilai lainnya.

Selain operasi perbandingan, komputer juga menggunakan operasi logika saat memeriksa suatu nilai kebenaran dari dua buah kondisi. Terdapat tiga buah operator logika, yaitu AND, OR, dan NOT. Suatu pernyataan yang mengandung operasi logika akan bernilai False jika pernyataan tersebut salah. Jika pernyataan tersebut benar, ia akan bernilai True.



Pengulangan

Di dalam kehidupan sehari-hari, seringkali kalian perlu melakukan suatu kegiatan yang di dalamnya terdapat hal yang dilakukan secara berulangulang. Sebagai contoh, pada saat seseorang mengecat kamar, paling tidak dua hal berikut ini harus dilakukan secara berulang-ulang:

  1. Celupkan kuas ke wadah cat. 
  2. Usapkan kuas ke dinding kamar yang akan dicat.

Kedua proses di atas harus dilakukan secara berulang-ulang sampai semua bagian dinding telah dicat

Tidak hanya manusia, komputer juga perlu melakukan pengulangan dalam mengerjakan tugasnya. Di dalam komputer, khususnya pemrograman, konsep ini dikenal dengan repetition atau loops. Pada bagian ini, kalian akan mempelajari cara menggunakan loops dalam Blockly. Gambar 7.14 ini menunjukkan blok-blok dalam Blockly yang dapat digunakan untuk loops.


a. Blok [repeat n times]

Blok ini dapat digunakan untuk melakukan sebanyak yang ditentukan. Terdapat dua buah bagian yang perlu diisi ketika menggunakan blok ini, yaitu banyaknya perulangan dan tindakan atau action apa yang perlu dilakukan secara berulangulang. Sebagai contoh, kalian dapat menampilkan kata “Blockly” sebanyak 10 kali seperti pada Gambar 7.15.


b. Blok [repeat..while] 
Blok [repeat…while] digunakan jika kalian ingin melakukan perulangan selama suatu kondisi atau syarat tertentu terpenuhi. Dengan kata lain, ketika syarat perulangan sudah tidak lagi terpenuhi, perulangan akan berakhir. Berikut ini beberapa contoh perulangan jenis ini: 
  1. Maju satu langkah sampai ada dinding 
  2. Berolahraga setiap hari hingga berat badan turun sebanyak 10 Kg Gambar 7.16 menunjukkan blok [repeat…while] pada Blockly


Ada dua hal yang perlu ditentukan untuk blok perulangan ini, yaitu syarat atau kondisi serta tindakan atau action yang akan dilakukan secara berulangulang. 



Bermain dengan Robot Ozobot

Modul ini adalah modul tambahan apabila sekolah kalian memiliki robot Ozobot. Robot ini bisa digantikan dengan robot dengan jenis line follower lainnya. Modul ini siap pakai apabila kalian memiliki robot Ozobot. Kalian dapat berperan sebagai robot Ozobot sehingga menjadi aktivitas unplugged. Ikuti perintah lebih lanjut dari guru kalian terkait modul ini.

Ozobot adalah salah satu mainan kecil robot canggih dalam dunia digital ini. Ozobot dapat dipakai untuk melatih pemrograman dasar secara menyenangkan. Ozobot dapat membaca garis dan warna. Ozobot juga dapat digunakan di atas tablet digital atau di atas benda fisik seperti kertas. Instruksi dapat diberikan pada Ozobot untuk menyelesaikan perintah-perintah yang dimasukkan ke dalam memorinya.

Sebelum menggunakan Robot Ozobot, kalian perlu tahu bagaimana menggunakan dan merawat robot ini. 

Comments

Post a Comment

Popular posts from this blog

pengalamanku saat mengikuti acara Digital Labs SMP Labschool Jakarta