programação divertida: aprenda a programar com scratch. · existem várias linguagens de...
TRANSCRIPT
Capítulo
6
Programação divertida: aprenda a programar
com Scratch.
Mike Christian de Sousa Araujo e Fábio Luiz Almeida Rolim
Resumo
O minicurso se destina a apresentar uma alternativa para ensino/aprendizado de
conceitos básicos e essenciais de lógica de programação em um ambiente que permite
programar com elementos interativos, utilizando recursos de mídias, jogos e
simulações. O Scratch é um ambiente com ferramentas multimídias que permite criar
aplicações de forma fácil e interativa. O objetivo deste minicurso é apresentar o
Scratch como ferramenta alternativa para ensino/aprendizado da programação,
permitindo aos participantes conhecer a ferramenta, programar sem muitas
dificuldades e aperfeiçoar suas habilidades de raciocínio.
6.1. O que é o Scratch
O Scratch é um ambiente de aprendizado criado e mantido pelo grupo Lifelong
Kindergarten do laboratório (Media Lab) do Instituto de Tecnologia de Massachusetts
(MIT), sob o comando de Mitchel Resnick [ScratchBrasil, 2017]. O ambiente Scratch
possui diversos recursos de mídia (blocos lógicos, recursos de som e imagem) que
permite a criação de projetos interativos por meio de uma programação visual incluindo
jogos, animações e simulações.
Este ambiente foi projetado para ser usado especialmente por crianças e
adolescentes entre 8 e 16 anos de idade [Scratch, 2017], mas nada impede que seja
utilizado, como de fato acontece, por pessoas de outra faixa etária, seja para auxiliar no
ensino de programação de computadores, lógica matemática, auxiliar no
desenvolvimento de habilidades relacionadas ao raciocínio e encontrar soluções para
problemas diversos.
III Escola Regional de Informática do Piauí. Livro Anais - Artigos e Minicursos, v. 1, n. 1, p. 361-381, jun, 2017.www.eripi.com.br/2017 - ISBN: 978-85-7669-395-6
6.2. Introdução ao Ambiente de Programação Scratch
De maneira simplificada podemos dizer que um programa de computador é um conjunto
de instruções escritas em uma linguagem de programação que diz ao computador o que
o mesmo deve fazer. Existem várias linguagens de programação atualmente, cada uma
com suas particularidades principalmente no que diz respeito às regras de sintaxe.
Escrever um programa de computador portanto, não é uma tarefa trivial para a
maioria das pessoas. É necessário ter um conhecimento da linguagem de programação
além de conceitos de algoritmos e lógica de programação. Tudo isso pode ser muito
desafiador principalmente para os iniciantes. Para as crianças, então, que nunca tiveram
contato com esses assuntos e que ainda estão em idade de formação do pensamento o
desafio se torna ainda maior.
O scratch adota um ambiente de programação visual, no qual o usuário não
precisa escrever códigos, está tudo disponível em blocos coloridos que se encaixam
como um quebra-cabeças, onde o simples fato de arrastar o bloco para área de scripts já
é o suficiente para ordenar uma ação para o computador. O fato de não haver a
necessidade de escrita de código, permite que o scratch tenha uma boa aceitação e seja
utilizado não apenas como ferramenta de entrada para aqueles que querem aprender a
programação e se tornarem profissionais, mas também por crianças e adultos tendo em
vista todos os benefícios já citados acima.
6.2.1. Como Funciona o Ambiente Scratch
Podemos utilizar o Scratch online através do endereço eletrônico
(https://scratch.mit.edu/), no menu Criar. Existe também uma versão offline da
ferramenta com as mesmas funcionalidades que pode ser baixada em
(https://scratch.mit.edu/scratch2download/), a ferramenta está disponível para Windows,
Linux e MAC. É necessário ter instalado o Adobe Air no computador, caso não tenha o
mesmo também está disponível no link.
Observamos na figura 6.2.1 a interface padrão do Scratch, em sua versão atual
(versão 2). Na parte superior esquerda temos a barra de ferramentas, figura 6.2.2, que
apresenta o botão (Scratch), este abre o site do Scratch na internet, seguido pelo botão
de idiomas, o nosso ambiente está configurado para o idioma português brasileiro. Ao
usar o Scratch pela primeira vez, talvez seja necessário acessar o menu de idiomas e
selecionar o idioma português brasileiro.
Figura 6.2.1. Interface padrão do Scratch.
Figura 6.2.2. Barra de Ferramentas do Scratch.
No menu (Arquivo), temos as opções de criar um projeto novo através do botão
(Novo); abrir um projeto existente (Abrir); salvar alterações em um projeto (Salvar) e
salvar um novo projeto (Salvar como).
Os projetos do Scratch 2 tem uma extensao de arquivo (.sb2) para distingui-los
dos projetos criados com a versao anterior do Scratch (.sb) [Marji, 2014]. pag33
Podemos gravar animações do projeto (Gravar um projeto de vídeo);
compartilhar seu projeto na Web (Compartilhar no site), é necessário ter uma conta no
site do Scratch para poder compartilhar; buscar atualizações da ferramenta (Verificar
atualizações); e fechar o aplicativo (Sair).
Através do menu (Editar), podemos trazer de volta a última ação ou
funcionalidade que você apagou (Recuperar); diminuir o tamanho do Palco (Figura
6.2.3) para proporcionar mais espaço à Área de Script (Figura 6.2.11), através da opção
(Disposição com palco pequeno); aumentar a velocidade de execução de alguns blocos
(Turbo Mode). Quando utilizamos blocos que realizam operações demoradas como
movimentos longos podemos optar por esse modo a fim de testarmos e verificarmos
nosso script em menos tempo.
Figura 6.2.3. Palco
O menu (Dicas) abrirá a janela de dicas conforme a figura 6.2.4, nela
encontramos uma série de projetos desenvolvidos que podemos carregar, visualizar e
customizar seus blocos de scripts.
Figura 6.2.4. Janela de dicas
O menu (Sobre) abrirá a página Web do Scratch na seção sobre, que contém
informações relevantes sobre o Scratch.
No centro da nossa tela, conforme figura 6.2.1, encontra-se as ferramentas de
cursor (Figura 6.2.5), onde encontramos respectivamente as funções de duplicar um
objeto em (1), apagar um objeto em (2), ampliar o tamanho de um objeto em (3) e
reduzir o tamanho de um objeto em (4), estas duas funcionam apenas para elementos
que estejam no palco. Por fim o botão ajuda em (5), basta clicar no botão e depois clicar
sobre um elemento que a janela de dicas será aberta com uma séria de informações
sobre o uso do elemento.
Figura 6.2.5. Ferramenta de cursor
6.2.2. Palco
O Stage (Palco) e o local em que os seus atores (sprites) se movem. Os sprites entendem
e obedecem a conjuntos de instruções que você lhes atribui [Marji, 2014]. O Stage tem
480 passos de largura e 360 passos de altura, conforme mostrado na figura 6.2.6. O
centro do Stage tem coordenada x igual a 0 e coordenada y igual a 0 [Marji, 2014].
Figura 6.2.6. O Stage (Palco) e como um plano de coordenadas com o ponto
(0,0) no centro.
Se movermos o mouse sobre o palco, podemos observar o valor em coordenadas
da localização atual do cursor do mouse. Na figura 6.2.3, no item 5, temos os valores
x:240 e y: -40, indicando a posição ocupada pelo cursor durante a captura dessa
imagem.
O item (1) da figura 6.2.3 é o modo de Apresentação, através dele podemos
ocultar todos os scripts de programação e fazer com que o palco ocupe a tela inteira. O
ícone de bandeira verde em (2) e o ícone vermelho em (3) permitem respectivamente
iniciar e terminar o seu programa.
6.2.3. Lista de Atores
A figura 6.2.7 mostra a Lista de Atores (Sprite List). Quando iniciamos um novo projeto
um ator padrão, o gato, fica disponível em nosso projeto conforme o item (1) da figura
6.2.7. No item (2) podemos escolher um outro ator do acervo do Scratch. Experimente
selecionar essa opção e trocar o ator padrão por outro. A biblioteca de atores é dividida
em categorias para facilitar nossa escolha por atores adequados ao nosso projeto. Caso
você queira desenhar seu próprio ator, o item (3) abre uma ferramenta de desenho (Paint
Editor). Para mais informações sobre o Paint Editor do Scratch acesse a documentação
oficial em: https://wiki.scratch.mit.edu/wiki/Paint_Editor.
Você pode carregar um ator a partir de outros arquivos de imagem através do item (4)
ou através de uma câmera conectada ao seu computador item (5).
O item (6) da figura 6.2.7 mostra o plano de fundo do Palco que, por padrão,
vem em branco. As mesmas operações que podem ser realizadas com os atores também
pode ser realizadas com os planos de fundo e na mesma ordem apresentada no parágrafo
anterior através dos itens 7, 8, 9, e 10 da figura 6.2.7.
Cada Sprite de seu projeto tem seus proprios scripts, fantasias e sons [Marji,
2014]. Voce pode selecionar qualquer Sprite e ver os seus pertences. (1) Clique na
miniatura do Sprite na Lista de Sprites ou (2) de um clique duplo no proprio Sprite no
Stage. A miniatura do Sprite selecionado no momento sempre estara em destaque,
contornada com uma borda azul. Ao selecionar um Sprite, voce podera acessar seus
scripts, suas fantasias e os sons ao clicar em uma das tres abas localizadas acima da
Area de Scripts.
Figura 6.2.7. Lista de Atores
Clicando no botão direto do mouse sobre um ator teremos as opções conforme a
figura 6.2.8, temos em (1), o menu (info) nos mostra informações acerca do ator
conforme a figura 6.2.9, nela podemos alterar o nome do ator através do campo texto
(1); verificar sua posição no palco, conforme os eixos x e y em (2); alterar sua direção
em relação ao palco em (3), optar por um estilo de rotação (4), optar por permitir que o
ator possa ser arrastado pelo palco em (5) e por último a opção de exibir ou não o ator
em (6). Nas próximas sessões falaremos sobre direção e rotação.
Figura 6.2.8. Menu pop-up na Lista de Atores
Figura 6.2.9. Informações sobre o autor
Voltando à figura 6.2.8, no menu (duplicar), opção (2), é possível criarmos uma
cópia para nosso ator alterando apenas o nome; no menu (apagar), opção (3), apagamos
o ator; a opção (4), (salvar em arquivo local), salva um ator com todos os seus
conteúdos no computador com a terminação .sprite2; a última opção (esconda), em (5),
tem a mesma função do campo mostrar na figura 6.2.9, que faz com que o ator seja ou
não exibido no Palco.
6.2.4. Aba de Blocos
Os blocos são instruções que desejamos que os objetos do projeto realizem. No Scratch
os blocos estão divididos em 10 categorias conforme figura 6.2.10. Cada categoria
agrupa blocos com funcionalidades específicas. A categoria de (Movimento), por
exemplo, é formada por um grupo de blocos que tratam dos movimentos que um ator é
capaz de realizar. Tente selecionar categoria de (Movimento) e em seguida dar um
clique duplo sobre o bloco (mova 10 passos) em (1). Se tudo der certo, você verá o ator
se movimentar 10 passos para direita.
Figura 6.2.10. Aba de scripts.
Experimente clicar em outros blocos da categoria de movimentos e fique atento
às ações do ator. Já conhecemos a aba de blocos e como ela funciona, nas próximas
sessões serão apresentadas situações onde utilizaremos blocos de outras categorias, por
enquanto ficaremos por aqui.
6.2.5. Área de Scripts
Na sessão anterior, conseguimos reproduzir um movimento com nosso ator clicando
duas vezes sobre o bloco de movimento desejado, isso é possível porque o Scratch nos
fornece uma pré-visualização das ações de todos os blocos, mas repare que esse tipo de
ação não é desejada em um projeto real, nós queremos dar dinamismos aos nossos
projetos e para isso as ações devem ocorrer de forma contínua e automática em tempo
de execução. Então como faremos isso? A resposta é simples, basta utilizarmos a Área
de Script.
A Área de Script, demonstrada na figura 6.2.11, é onde programaremos as ações
que desejamos executar através dos blocos, para isso, basta clicar sobre um determinado
bloco e arrasta-lo para a Área de Script. Vamos tentar? (1) Na aba de blocos, selecione a
categoria de eventos, essa categoria agrupa os blocos responsáveis por detectar eventos
que possam ocorrer durante a execução do nosso projeto, tais como: detecção de um
clique do mouse, uma tecla do teclado, entre outros; (2) clique sobre o bloco (quando
clicar em), arraste o bloco para a Área de Script; em seguida (3) selecione a categoria
(Controle), localize o bloco (repita 10 vezes); (4) arraste o bloco para a Área de Script,
note que as margens inferiores do bloco (quando clicar em) ficarão com efeito branco,
isso significa que os dois blocos se encaixam como duas peças de quebra-cabeças sendo
compatível a execução de um após o outro; (5) selecione a categoria (Movimento) e
procure pelo bloco (mova 10 passos); (6) arraste o bloco para a Área de Script, perceba
que existe um espaço interno no bloco (repita 10 vezes); (7) encaixe o bloco (mova 10
passo) dentro do bloco (repita 10 vezes); (8) em seguida selecione a categoria aparência;
(9) clique sobre o bloco (próxima fantasia); (10) arraste o bloco para o interior do bloco
(repita 10 vezes) de modo que fique encaixado ao bloco (mova 10 passos). Ao final a
Área de Script deve estar como a figura 6.2.11.
Figura 6.2.11. Área de Script
Para executarmos nosso projeto vamos clicar na bandeira verde do Palco item
(1), figura 6.2.3. Perceba que nosso ator caminha 10 passos para direita. Vamos
entender um pouco melhor nosso script. Repare na figura 6.2.11, o bloco (1) é um bloco
de evento que detecta um clique no botão da bandeira verde do palco, quando este
clique for detectado o próximo bloco a ser executado será o bloco (2), este é um bloco
de repetição que faz com o que todos os blocos que estejam dentro dele sejam
executados um número finito de vezes, no nosso exemplo 10 vezes, o bloco (3) é um
bloco de movimento e faz com que o nosso ator mova-se 10 vezes conforme nosso
exemplo, o bloco (4) é um bloco de aparência que faz com que nosso ator troque sua
fantasia para a próxima fantasia disponível. Aprenderemos mais sobre fantasias na
sessão Aba de Fantasias. Os blocos (3) e (4), serão repetidos por 10 vezes nessa ordem,
dessa forma temos a percepção de movimento do nosso ator.
6.2.6. Aba de Fantasias
No exemplo anterior, utilizamos o bloco (próxima fantasia), mas o que é fantasia?
Fantasia é uma imagem de estado do nosso ator, aparência física que podemos trocar
para dar mais realismo aos nossos atores. Observe a figura 6.2.12, onde temos em (1) a
fantasia1 e em (2) a fantasia2, perceba que existe uma diferença entre as duas imagens,
então fizemos com que nosso ator trocasse a sua fantasia para simular um movimento de
suas pernas.
Na figura 6.2.12 nos botões (3), (4), (5) e (6) temos as mesmas funcionalidades
presentes na Lista de Atores, com a diferença que aqui não estamos adicionando novos
atores ao nosso projeto, mas novas fantasias. Na caixa de texto podemos também
nomear as nossas fantasias.
Figura 6.2.12. Aba de Fantasias.
Clicando com o botão direito do mouse sobre uma fantasia temos o (menu pop-
up fantasia), figura 6.2.13, onde em (1) temos a opção de criar uma cópia da fantasia
selecionada; em (2) podemos apagar uma fantasia selecionada e, por fim, em (3)
podemos salvar essa fantasia em um arquivo.
Figura 6.2.13. Menu pop-up na Aba de Fantasias
6.2.7 Aba de Sons
Para tornar nossos projetos ainda mais divertidos podemos adicionar sons aos nossos
atores. Na Aba de Sons, figura 6.2.14, podemos observar o som padrão do nosso projeto
em (1). Assim como na Aba de Fantasias, também podemos inserir outros sons em
nosso projeto. Clicando no botão (2), abrimos a biblioteca de sons, composta por várias
categorias, para escolher um som basta seleciona-lo e clicar em OK.
Na Aba de Sons também temos a opção de gravar um som a partir de um
microfone conectado ao computador, para isso, basta clicarmos no botão (3), em
seguida botão (7) para iniciar a gravação. É possível controlar o volume do microfone
através da barra de ajuste, item (8).
No botão (4), podemos importar um som do nosso computador, apenas sons no
formato MP3 e WAV são permitidos. Os botões (5) e (6) são respectivamente, o play
para reproduzir o som e stop para parar.
Figura 6.2.14. Aba de Sons
Figura 6.2.15. Menu pop-up na aba de sons
Clicando com o botão direito do mouse sobre um som, veremos as opções de
duplicar o som em (1), que cria uma cópia do mesmo som na Aba de Sons, porém com
nome diferente; apagar um som em (2) e salvar em arquivo local (3), nos formatos
WAV ou MP3. Para obter mais informações sobre sons no Scratch acesse a
documentação original em: https://wiki.scratch.mit.edu/wiki/Sounds.
6.3. Metodologia
Os conceitos básicos de programação serão apresentados e demostrados com uso dos
recursos de multimídias da ferramenta aos participantes, ao modo que os mesmos
também estarão acompanhando e praticando com a resolução de problemas no decorrer
do minicurso.
6.4. Programação Divertida com Scratch
O Scratch oferece muitos recursos como imagens, interações, sons, entre outras
possibilidades que deixam o ato de programar mais atraente e divertido. Nesta secção
será mostrado alguns destes recursos e como podemos utilizá-los para praticar
programação.
6.4.1. Elementos de Movimento, Aparência e Som
Para tornar a programação mais atraente e divertida o Scratch possui ferramentas para
criar programas animados como os recursos da paleta movimento (motion), aparência
(looks) e som (sound).
Os movimentos são realizados por meio de blocos de comandos que fazem o
ator se movimentar pelo palco. Para isso, podemos utilizar comandos que indiquem
exatamente o local, por meio das coordenadas, para onde o ator deve ir [Marji, 2014].
Esses comandos são referentes aos movimentos absolutos do ator.
Mas, caso não tenha as coordenadas do ponto específico para onde o ator deva se
movimentar, você pode utilizar outros comandos para isso, como, por exemplo,
movimentar o ator passo a passo até chegar no local desejado. Esses comandos são
referentes aos movimentos relativos do ator [Marji, 2014].
Além de movimentar os objetos também é possível mudar a aparência do ator
para criar animações, efeitos visuais e até mesmo acrescentar balões para representar
“seus pensamentos” [ScratchBrasil, 2017].
Outro recurso que o Scratch permite é inserir efeitos sonoros e fundo musical
por meio de arquivos de áudio ou por sons de instrumentos predefinidos pelo próprio
Scratch, além da possibilidade, também, de controlar o volume e a velocidade dos sons
[Scratch, 2017].
Para exemplificar o uso dos recursos de movimento, aparência e som, imagine a
seguinte situação: O gato gosta de brincar com a sua bola de tricô, mas não sabe onde
está a sua bola. Vamos ajudar o gato a chegar até sua bola. Para isso vamos utilizar os
comandos de movimento para simular a procura pela bola e levar o gato até ela.
O script da figura 6.4.1 demonstra os blocos e comandos utilizados no ator gato
para movimentá-lo até a sua bola, assim como os recursos de aparência para animação
dos movimentos e o uso de recursos da paleta de som para emitir a onomatopeia do
gato.
Figura 6.4.1. Script que exemplifica o gato procurando a sua bola.
Observe que utilizamos o recurso da paleta aparência no linha 2 para exibir a
caixinha de pensamento do gato durante 2 segundos. Observe, também, que utilizamos
os comandos de movimentos relativos (linhas 3, 6, 15 e 18) para movimentar o gato, e
que a cada 50 passos dado, pedimos para exibir a próxima fantasia do ator gato e
inserimos um delay de 1 segundo (paleta controle) para gerar o efeito que o gato está
caminhando. Para simular a procurar do gato pela bola, utilizamos os comandos nas
linhas 9 e 12 para girar o gato para esquerda e direita, e, neste momento, emitir a
onomatopeia do gato (linhas 10 e 13).
Figura 6.4.2. Resultado da execução do script do ator gato.
Sobre o ator bola foi aplicado o script da figura 6.4.3 para deixar a bola nos
primeiros 4 segundos sem visibilidade para melhor simular a procurado do gato pelo o
seu brinquedo.
Figura 6.4.3. Script aplicado sobre o ator bola.
6.4.2. Programando Tomada de Decisões com Problemas
Os programas naturalmente podem ter vários fluxos de execuções e para que eles
ocorram corretamente devemos inserir instruções que realizem as avaliações
necessárias. O Scratch possui recursos que nos permite comparar valores, avaliar
expressões lógicas e tomar decisões conforme os resultados obtidos de uma operação
[Scratch, 2017].
Uma forma de comparar valores é por meio dos operadores relacionais que
verificam, por exemplo, se um valor X é maior ou menor do que um valor Y. O Scratch
oferece 3 possibilidades de usar esses operadores: maior que , menor que
e igual a [ScratchBrasil, 2017].
Também podemos utilizar outros operadores para nos auxiliar na comparação
dos valores e na tomada de decisões. Os operadores lógicos permitem que avaliemos
expressões lógicas como, por exemplo, descobrir se um aluno está aprovado ou não
(média = 7 ou média > 7 ). No Scratch podemos fazer uso dos seguintes operadores
lógicos [ScratchBrasil, 2017]:
: Para que o resultado seja verdadeiro é necessário que as duas
expressões sejam verdadeiras;
: Para que o resultado seja verdadeiro é necessário que pelo
menos uma das expressões seja verdadeira;
: Se a expressão for verdadeira o resultado é falso e se a expressão
for falsa o resultado é verdadeiro.
Agora que sabemos algumas formas de fazer as comparações de valores, temos
que decidir qual o fluxo que o nosso programa irá tomar diante dos resultados de cada
comparação. Para isso, o Scratch nos permite utilizar “blocos condicionais” conforme
ilustrado na figura abaixo [Marji, 2014].
Figura 6.4.4. Blocos condicionais do Scratch
Podemos observar na figura 6.4.4, caso a condição seja satisfeita, o primeiro
bloco de comandos será executado. Caso contrário (comando else), o segundo bloco de
comandos é que será executado no lugar do primeiro bloco.
Mas em algum momento podemos querer realizar uma nova avaliação depois de
uma condição ser satisfeita. Chamamos isso de blocos de “SE” aninhados. Veja a figura
6.4.5 para entender melhor como fazer isso.
Figura 6.4.5. Blocos de “SE” aninhados.
Então como mostrado na figura 6.4.6, podemos realizar uma nova avaliação caso
o primeiro “SE” tenha como resultado um valor verdadeiro. Ou seja, podemos inserir
blocos de “SEs” dentro de outros “SEs”. Isso é muito útil para executar instruções que
dependem do resultado de várias avaliações preliminares.
Para exemplificar o uso destes blocos condicionais, imagine a seguinte situação:
Precisamos comprar Leite, Pão e Café. O mercadinho do senhor cat é o lugar onde
podemos comprar os produtos mais baratos: Leite de R$ 2,00 reais, Pão de R$ 3,00 reais
e Café de R$ 4,00 reais. Sendo assim, vamos até o mercadinho verificar se temos
dinheiro suficiente para comprar os produtos desejados.
O script da figura 6.4.6 demonstra os blocos utilizados para exemplificar a
situação anterior.
Figura 6.4.6. Script para exemplificar o uso do “SE”.
Observe que iniciamos nosso script com um recurso para interagir com o usuário
(linha 2) para que possamos informa o valor que temos em dinheiro e, assim, o senhor
cat nos informa se temos dinheiro suficiente para realizar as compras. Este recurso pode
ser encontrado na paleta “Sensores”. No primeiro “SE” (linha 3) estamos verificando se
temos dinheiro suficiente para comprar algum produto, ou seja, se tivermos menos de
R$ 2 reais não temos dinheiro suficiente para comprar nenhum produto. Caso contrário,
(linha 5) vamos analisar as outras possibilidades que temos de comprar algum produto,
ou até mesmo todos os produtos (linha 14).
6.4.3. Programando Repetições com Problemas
Bom, certamente iremos precisar que algumas instruções sejam repetidas algumas
vezes, seja por uma quantidade determinada ou quantas vezes forem necessárias. As
estruturas que nos permitem fazer isso são os laços de repetições que podem ser laços
definidos (repete um conjunto de instruções por um por uma quantidade informada) ou
laços indefinidos (repete um conjunto de instruções até que uma condição seja satisfeita)
[ScratchBrasil, 2017].
Os blocos de repetição do Scratch são:
: Um conjunto de instruções será executado quantas vezes for
determinado.
: Um conjunto de instruções será executado até que uma
condição seja satisfeita (verdadeira).
: Um conjunto de instruções será sempre executado. É um laço
infinito incondicional.
O bloco de repetição “ Sempre ” é laço infinito incondicional, ou seja, não
existe uma condição que fará a repetição parar. Isso pode ser útil, por exemplo, para
trocar a fantasia de um ator [Marji, 2014]. No entanto o Scratch possui um recurso que
nos permite para a execução de um bloco de repetição: .
Vale destacar que podemos colocar blocos condicionais (blocos de “SE”) dentro
dos blocos de repetições como ilustrado na figura 6.4.6 [Marji, 2014].
Figura 6.4.7. Exemplo do uso de bloco de repetição com bloco condicional.
Tomando como exemplo a situação citada na seção anterior, vamos inserir um
bloco de repetição que permite ao senhor cat perguntar se desejamos realizar uma nova
compra (ver figura 6.4.6).
Figura 6.4.8. Script para exemplificar o uso de repetições.
Desse modo, foi inserido as linhas 2, 3, 23 e 24 do exemplo da secção anterior
para permitir a repetição. Agora o script começa com a pergunta se desejamos comprar
algo (linha 2). E logo na próxima linha utilizamos o bloco de repetição para avaliar o
que foi respondido. Caso 1(sim), será executado o script da seção anterior. Caso
contrário, o script é encerrado. Na linha 24 é feito novamente a pergunta para saber se
continuará realizando compras.
6.5. Considerações
O ambiente Scratch possibilita que seja explorado várias habilidades relacionadas a
resolução de problemas, permitindo que estas habilidades sejam usadas não só para
programação, mas também para o dia a dia, para situações cotidianas em que se precise
analisar problemas, levantar alternativas e encontrar soluções.
Além disso, os vários recursos de mídias permitem uma maneira simples de
racionar em busca de uma solução, motivando e estimulando um aprendizado autônomo
e prático. Portanto, o Scratch é uma boa ferramenta para ser aplicada no processo de
ensino-aprendizado de programação.
Referências
Marji, M. (2014). Aprenda a programar com Scratch: Uma introdução visual à programa
ção com jogos, arte, ciência e matemática. Novatec, 1 edition.
Scratch (2017), https://scratch.mit.edu/, Maio.
ScratchBrasil (2017), http://www.scratchbrasil.net.br/, Maio.