Input, Control dan Variabel dalam Scratch

Input, kontrol, dan variabel merupakan tiga konsep fundamental dalam pemrograman menggunakan Scratch.

Input berfungsi untuk menerima data dari pengguna, yang dapat diperoleh melalui blok "ask and wait", sensor, atau interaksi dengan elemen program.

Dalam Scratch, input bisa diperoleh melalui:

  • Blok "ask and wait" (bertanya dan menunggu jawaban pengguna)
  • Sensor, seperti mouse position, loudness, atau key pressed
  • Klik pada sprite atau event lainnya

Contoh Input:
Berikut adalah skrip yang meminta pengguna memasukkan namanya dan menyapanya:

when green flag clicked ask [Siapa namamu?] and wait say (join [Halo, ] (answer)) for (2) seconds

šŸ’” Penjelasan:

  • Blok ask [Siapa namamu?] and wait meminta pengguna mengetikkan nama mereka.
  • Blok answer menyimpan jawaban pengguna.
  • join [Halo, ] (answer) menggabungkan teks "Halo, " dengan jawaban pengguna lalu menampilkannya sebagai ucapan karakter.

Kontrol digunakan untuk mengatur alur eksekusi program, seperti pengulangan (loop) dan percabangan (conditional statements). 

Contoh Control:
Berikut adalah skrip yang memeriksa apakah pengguna menyukai Scratch atau tidak:

when green flag clicked ask [Apakah kamu suka Scratch? (ya/tidak)] and wait if <(answer) = [ya]> then say [Keren! Scratch sangat menyenangkan!] for (2) seconds else say [Tidak masalah, coba eksplorasi lagi!] for (2) seconds end

šŸ’” Penjelasan:

  • if <(answer) = [ya]> then memeriksa apakah jawaban pengguna adalah "ya".
  • Jika iya, sprite akan mengatakan "Keren! Scratch sangat menyenangkan!".
  • Jika tidak, sprite akan mengatakan "Tidak masalah, coba eksplorasi lagi!".

Variabel berperan dalam menyimpan dan mengelola data yang dapat berubah selama program berjalan. Dengan menggabungkan ketiga konsep ini, pengembang dapat menciptakan program yang interaktif dan dinamis dalam lingkungan Scratch.

Contoh Variabel:
Berikut adalah skrip yang menggunakan variabel untuk menghitung skor dalam sebuah kuis sederhana:

when green flag clicked set [Skor] to (0) ask [Berapakah 5 + 3?] and wait if <(answer) = [8]> then change [Skor] by (1) say (join [Benar! Skormu: ] (Skor)) for (2) seconds else say [Salah! Coba lagi.] for (2) seconds end

šŸ’” Penjelasan:

  • set [Skor] to (0) menginisialisasi skor awal menjadi 0.
  • change [Skor] by (1) menambah skor jika jawaban benar.
  • say (join [Benar! Skormu: ] (Skor)) menampilkan skor setelah menjawab.


Comments