Introdução à Programação com Scratch/Instruções
Laços e condicionais
[editar | editar código-fonte]Alguns tipos de projetos contêm sequências de blocos que devem ser executadas mais de uma vez, como bolas que se movem em um jogo e notas que se repetem em uma música. Os laços são estruturas de controle que permitem a repetição em linguagens de programação.
Por exemplo, você pode usar o comando abaixo:
repeat 3
move 10 steps
que apresentará o mesmo resultado que
move 10 steps
move 10 steps
move 10 steps
Outros blocos de repetição: "sempre" e "repita até".
forever
move 10 steps
if on edge, bounce
Se não quiser que o Sprite rotacione na direção y:
forever
move 10 steps
if on edge, bounce
set rotation style left-right
go to x: -200 y:0
repeat until x position of Sprite1 = 180
move 10 steps
Blocos de controle: "condicionais".
A função destes blocos é permitir a execução de uma sequência somente se uma condição for satisfeita.
forever
if key space pressed? then
play sound meow
forever
if key space pressed? then
play note 60 for 0.5 beats
else
play note 62 for 0.5 beats
A figura ao lado mostra o uso de comandos de repetição para imprimir na tela os números da sequência de Fibonacci.
Exemplos
[editar | editar código-fonte]Os comandos if e else são empregados quando deseja-se executar uma tarefa desde que uma condição seja satisfeita. No exemplo abaixo, uma ação é executada Se a condição for satisfeita. Senão, outra ação será executada.
when clicked
forever
if health=0
say morri! for 2 secs
stop all
else
say Estou vivo!
Para criar a variável "health" clique em "Data" e depois "Make a variable". É possível editar o valor da variável, que aparecerá perto do Sprite.
No exemplo abaixo, a palavra costume# é uma variável que armazena algum dado, como um número ou uma palavra. O exemplo abaixo faz o Sprite andar e virar na mesma direção em que está andando.
when right arrow key pressed
if costume# > 1 then
move 10 steps
switch costume to costume1
else
move 10 steps
switch costume to costume2
when up arrow key pressed
change y by 50
wat 0.25 secs
change y by -50
when left arrow key pressed
if costume# < 4 then
move -10 steps
switch costume to costume4
else
move -10 steps
switch costume to costume3
Variáveis
[editar | editar código-fonte]Variáveis são locais onde se podem armazenar texto, números ou valores booleanos (falso/verdadeiro). Para criá-las no Scratch, basta ir em "Data"->"Make a variable" e digitar o nome da variável.
when clicked
set health to 10
forever
move 1 steps
if touching edge? then
change health by -1
if touching mouse-pointer? then
change health by 1
Lista
[editar | editar código-fonte]Lista ou matriz é uma ferramenta que pode ser usada para armazenar diversas informações de uma só vez. Para criá-las no Scratch, basta ir em "Data"->"Make a list" e digitar o nome da lista. No exemplo abaixo, List1 é o nome da lista.
when clicked
add Gato to List1
add Cachorro to List1
add Coelho to List1
if List1 contains Gato
move 50 steps
insert Rato at 1 of List1
else
move -50 steps
replace item last of List1 with Tartaruga
O exemplo abaixo gera a sequência de Fibonacci, em que Counter é o nome de uma variável e Fibonacci é o nome de uma lista.
when clicked
delete all of Fibonacci
add 1 to Fibonacci
add 1 to Fibonacci
set Counter to 0
forever
change Counter by 1
add (item Counter of Fibonaci) + (item (Counter + 1) of Fibonacci)