Lógica Básica No Scratch - Scratch Brasil (Tutorial 5)
Lógica Básica No Scratch - Scratch Brasil (Tutorial 5)
Lógica Básica No Scratch - Scratch Brasil (Tutorial 5)
Neste tutorial vamos ver alguns recursos de lgica, importantes para serem usados na criao
de jogos e animaes no Scratch.
Mas o que lgica? Lgica a tcnica de encadear pensamentos para atingir determinado
objetivo, de forma rpida e eficiente.
A partir disso, para cada recurso de lgica aprendido, sero feitos vrios exemplos de projetos
no Scratch, para fixar melhor este contedo.
Alm disso, ser visto sobre todas as categoriais e qual a funo de cada uma delas.
J foi visto que temos uma categoria no Scratch chamada Variveis. Mas voc sabe o que
significa varivel? Varivel um local reservado na memria do computador, que pode armazenar
qualquer valor do conjunto ou conjunto de valores.
Para entender melhor isso, veja a imagem abaixo. Ela mostra que ao voc digitar no teclado a
letra A, a CPU manda isso para a memria. Na memria, onde fica esse espao reservado, que
armazena um valor. Sendo que em seguida, esse valor mostrado no monitor.
O exemplo s para ilustrar o que significa varivel, e como ela vai funcionar no Scratch.
Vale lembrar que embora uma varivel possa assumir diferentes valores, ela s pode armazenar um
valor a cada instante.
No Scratch, para se criar variveis, acesse a categoria
Variveis, e clique no boto criar uma varivel ou criar uma
lista. Veja na imagem ao lado.
Depois de clicado em um dos botes, vai ser aberto uma tela que vai pedir para voc dar um
nome a sua varivel, como mostrado ao lado.
Alm disso, voc dever selecionar se ela vai ser uma
varivel apenas de um nico componente do jogo, ou
responsvel por todos os objetos do jogo.
Esses operadores mostrados so na ordem, os de menor (<), igual (=) e maior (>). possvel
fazer com eles comparaes com variveis ou nmeros, como mostrados abaixo:
Para entendermos melhor como funciona cada um deles, vejamos esses exemplos:
Quando eu digo Tenho um computador e um celular, ao afirmar isso, a palavra e indica que
eu possuo os dois objetos, no caso o computador e o celular.
Quando eu digo Tenho um computador ou um celular, ao afirmar isso, a palavra ou indica
que eu possuo apenas um dos objetos, ou o computador, ou o celular.
E quando eu digo No tenho um celular, ao afirmar isso, a palavra no comprova que eu
no possuo um celular.
Assim como no caso dos operadores relacionais, os operadores lgicos mostrados so o (e), (ou)
e (no). possvel fazer com eles, comparaes com variveis ou nmeros, como mostrados abaixo:
,e
Como j foi visto antes, possvel criar no Scratch uma ou mais aes que funcionem de maneira
contnua, se repetindo por tempo indeterminado. Para isso se usa o comando sempre, da categoria
Controle. Qualquer outro bloco que for encaixado
dentro do comando sempre ser executado at o
programa ser parado. Para isso, vamos fazer o
exemplo abaixo:
O objetivo ser fazer um tambor tocar um
som, com o intervalo de tempo de 1 segundo de
diferena, alm do tambor trocar constantemente
de cor, assim como todo esse processo deve
ocorrer infinitamente.
Inicialmente, vamos arrastar o bloco quando
bandeira verde clicado e o sempre, unindo-os,
ambos da categoria Controle, como mostrado na
imagem abaixo.
parar, sempre mudando a cor do tambor e tocando um som. Caso queira parar o projeto, clique
sobre o
Depois de visto as estruturas sempre e se, existe tambm um bloco no Scratch que a
juno de ambos. O comando sempre se a juno destes dois blocos, e tem por funo verificar
constantemente, se uma condio verdadeira ou no.
Para isso, vamos criar um pequeno
conjunto de blocos com o seguinte objetivo:
Aps habilitar a bandeira verde, faa com que
seja
verificado
se
tecla
espao
foi
Perceba que os comandos sempre sero executados, se este tecla for apertada.
verde
clicado
repita,
ambos
da
Como visto na estrutura repita, s vezes h a necessidade de no Scratch voc fazer com que
um processo dure determinado nmero de vezes. Mas tambm pode ser necessrio que algo seja
realizado continuamente, at uma ao acontecer. Para isso, usa-se a estrutura de repetio repita
at, que faz com que as aes dentro deste bloco, sejam interrompidas quando alguma ao for feita.
Para melhor entendimento, vamos
usar o mesmo exemplo apresentado na
explicao do bloco sempre se. Mas
agora,
vamos
eliminar
comando
Observe que desta vez, com o repita at, o programa j comea com o gato se movimentando de
um lado para outro, e s para quando a tecla espao for pressionada. Porm, anteriormente, com o
sempre se, o programa fazia o gato se movimentar sempre que a tecla espao fosse pressionada.
s vezes, ao criarmos nossos jogos no Scratch, haver a necessidade que sair dos blocos de
comando de um sprite, e acessar comandos de outros personagens em nosso jogo. Para fazer esse
tipo de ao, usamos o recurso de Mensagens no Scratch.
Para entendermos como funciona, vamos fazer o
seguinte exemplo: Ao apertar a seta para a direita, nosso gato
vai andar para essa direo, e ser exibida na tela Voc est
andando para a direita. Caso seja pressionada a tecla para a
esquerda, o gato anda para essa direo, e aciona a frase
Voc est andando para a esquerda.
No nosso gato Scratch, monte esses dois conjuntos de blocos, como configurados abaixo,
que vai fazer nosso gato andar para a direita, quando a seta direita for pressionada, e andar para a
esquerda, quando a seta esquerda for pressionada.
Depois de feitos esses conjuntos de blocos no gato, arraste o bloco anuncie para todos, que
esta na categoria Controle, embaixo de cada conjunto de blocos, como mostra abaixo:
Para configurar os blocos abaixo, clique na setinha de cada comando, deixando a mensagem
Direita junto ao traje1, e a mensagem Esquerda, junto ao traje2. Agora, basta testar
pressionando as setas direita ou esquerda para ver o gatinho andar, e a frase ser mostrada na tela.
Outros comandos importantes desta categoria, so os espere at, pare comando e pare tudo,
ainda no mostrados.
O espere at, faz com que seus blocos pausem sua execuo, at ocorrer algo no jogo.
Depois que isso ocorre, a execuo dos comandos volta a acontecer.
O pare comando vai parar todo o conjunto de blocos em que este comando foi inserido.
E por fim, o pare tudo, vai fazer parar todos os blocos, de todos os objetos em nosso jogo.
Este bloco muito usado quando se deseja parar um jogo, depois que o jogador perde o jogo.
deslize em segundos para x y neste bloco, voc deve indicar um nmero para x, outro para
y, e outro para o tempo em segundo depois destas posies dadas, o seu objeto desliza neste
tempo mencionado, indo para as indicaes dadas;
J os comandos a seguir, ainda da categoria Movimento, dizem respeito especificamente s
posies x e y de um objeto, alm de sua direo, sendo eles os blocos posio x, posio y,
direo, mude x por, mude x para, mude y por e mude y para:
Caso seja necessrio realizar alguma conta em seu jogo ou animao criada, voc utilizar
destes operadores.
Ainda nesta mesma categoria, se caso for necessrio realizar outros tipos de clculos em seu
jogo ou animao, temos os blocos resto da diviso por, arredonde, raiz quadrada de 10, e sorteie
nmero entre 1 e 10:
A categoria Caneta, que ainda foi pouco utilizada, possui blocos responsveis por fazer nosso
personagem desenhar na tela. Alguns dos blocos mais simples desta categoria so o abaixe a
caneta, levante a caneta, limpe e carimbe: