PROGRAMAÇÃO DE COMPUTADORES
NA EDUCAÇÃO UM PASSO A PASSO UTILIZANDO O SCRATCH
Programação de Programação computadores na educação um passo a passo utilizando o Scratch
Neuza Terezinha Oro Ariane Mileidi Pazinato Adriano Canabarro Teixeira
UNIVERSIDADE DE PASSO FUNDO
José Carlos Carles de Souza Reitor
Rosani Sgari Vice-Reitora de Graduação
Leonardo José Gil Barcellos Vice-Reitor de Pesquisa e Pós-Graduação Pós-Graduação
Bernadete Maria Dalmolin Vice-Reitora de Extensão e Assuntos Comunitários
Agenor Dias de Meira Junior Vice-Reitor Administrativo
UPF Editora
Karen Beltrame Becker Fritz Editora
CONSELHO EDITORIAL
Altair Alberto Fávero Carlos Alberto Forcelini Cleci Teresinha Werner da Rosa Giovani Corralo José Ivo Scherer Scherer Jurema Schons Karen Beltrame Becker Fritz Leonardo José Gil Barcellos Luciane Maria Colla Paula Benetti Telmo Marcon Verner Luis Antoni
CORPO FUNCIONAL
Daniela Cardoso Cardoso Coordenadora de revisão
Cristina Azevedo da Silva Revisora de textos
Mara Rúbia Alves Revisora de textos
Sirlete Regina da Silva Coordenadora de design
Rubia Bedin Rizzi Designer gráfico
Carlos Gabriel Scheleder Auxiliar administrativo
PROGRAMAÇÃO DE COMPUTADORES
NA EDUCAÇÃO
Neuza Terezinha Oro Ariane Mileidi Pazinato Adriano Canabarro Teixeira 2016
Copyright© dos autores Dani el a Cardos o Cristina Azevedo da Silva Mara Rúbia Alves Revisão de textos e revisão de emendas
Sirlete Regina da Silva Rubia Bedin Rizzi Projeto gráfico, diagramação e produção da capa
Este livro, no todo ou em parte, conforme determinação legal, não pode ser reproduzido por qualquer meio sem autorização expressa e por escrito do(s) autor(es). A exatidão das informações e dos conceitos e as opiniões emitidas, as imagens, as tabelas, os quadros e as figuras são de exclusiva responsabilidade do(s) autor(es).
UPF EDITORA Campus I, BR 285 - Km 292,7 - Bairro São José Fone/Fax: (54) 3316-8374 CEP 99052-900 - Passo Fundo - RS - Brasil Home-page: www.upf.br/editora E-mail:
[email protected]
Editora UPF aliada à
Associação Brasileira das Editoras Universitárias
Colaboradores Débora Sernajotto (Licenciatura em Matemática - UPF) Guilherme Alvim Barbosa (Licenciatura em Física - UPF) Gustavo de Oliveira Rosa (Licenciatura em Matemática - UPF) Jader Hartmann (Bacharelado em Ciência da Computação - UPF) Jonas Vaz (Bacharelado em Ciência da Computação - UPF) Jônatas Strapazzon (Bacharelado em Ciência da Computação - UPF) Lucas Vieira May (Curso Superior de Tecnologia em Sistema para Internet - Imed) Marília Rampanelli (Licenciatura em Matemática - UPF) Thaíse Uczay de Jesus (Licenciada em Matemática - UPF)
Sumário Apresentação ............................................................................................8 Introdução .................................................................................................10 Projeto Escola de Hackers ................................................................. 11 Educação e programação de computadores .....................14
Blocos lógicos .......................................................................................19 Atividades com os blocos lógicos .............................................20 Atividades de programação analógica ................................... 27
Conhecendo o software Scratch .............................................29 Tela inicial.......................................................................................................31 Palco................................................................................................................32 Atores (sprites ou personagens) .................................................35 Atividades .....................................................................................................43 Roteiros ..........................................................................................................44 Roteiros de movimento ......................................................................45 Roteiros de controle..............................................................................45 Roteiros relativos a eventos.............................................................47 Roteiros relativos à aparência ...................................................... 48 Roteiros que se constituem em sensores ........................... 49 Roteiros para manipulação de som .........................................50 Roteiros que implementam operadores .................................51 Roteiros para uso da caneta ...........................................................52 Roteiros para utilização de variáveis e listas .....................53
Trabalhando no Scratch ..................................................................54 Faça você mesmo...................................................................................54 Noção de variável ..................................................................................60
Uso de listas .............................................................................................. 66 Criando clones ..........................................................................................76 Atividades extras .................................................................................... 89
Jogos e animações ............................................................................. 97 O que é jogo? ............................................................................................ 97 Sugestões de jogos e animações .............................................. 97 Quiz – criação de quiz interativo ................................................. 97 Games literários ....................................................................................... 97 Animações .................................................................................................. 98 Jogos de tabuleiro..................................................................................98 Jogos ou games digitais ...................................................................98 RPG ...................................................................................................................98 Passos para a construção de um jogo ...................................99
Sobre os autores............................................................................... 108
Apresentação Este livro tem dupla motivação: a primeira nasce do reconhecimento de que o mundo contemporâneo transformou-se profundamente pelas tecnologias de informação e comunicação. Mais precisamente, é um contexto social que se descobre no início do desenvolvimento de todo o potencial desses aparatos. São tendências e horizontes que apontam para a potencialização da computação nas nuvens e para a necessidade de desenvolvimento de habilidades reais de ser e estar em um mundo que ruma para a computação das coisas, quando cada eletrodoméstico, lâmpada, interruptor ou outro aparelho qualquer estarão conectados à internet e serão programáveis. A segunda motivação, que de fato pode ser encarada como uma inspiração, vem das atividades realizadas pelo Grupo de Estudo e Pesquisa em Inclusão Digital, em projetos solo, em parceria com outros grupos e cursos – como é o caso da Matemática e da Física da Universidade de Passo Fundo – ou naqueles em que atuamos como apoiadores. E não são poucos. Desde 2012, criamos e participamos de pro jetos de extensão e pesquisa envolvendo a exploração pesada da programação de computadores, seja para controlar um objeto virtual na tela do computador, seja para movimentar um aparato robótico. Vale destacar as várias edições das Olimpíadas de Programação de Computadores, desenvolvidas em parceria com o curso de Matemática, das Olimpíadas de Robótica Livre, com a participação da Física e do Berçário de Hackers, com estudantes do ensino fundamental, organizado e mantido pelo projeto Mutirão pela Inclusão Digital. Entretanto, sem sombra de dúvida, a experiência mais intensa e inspiradora vem da Escola de Hackers, projeto da
Programação de computadores na educação: um passo a passo utilizando o Scratch
9|
Prefeitura Municipal de Passo Fundo, em que o know-how desenvolvido na Universidade de Passo Fundo, em parceria com a Faculdade Meridional, é posto a serviços de mais de setecentos jovens das escolas de ensino fundamental de Passo Fundo, que desde 2014 aprendem a programar computadores. No decorrer das atividades ocorreu um natural processo de aprimoramento metodológico e de conteúdo que queremos compartilhar neste material. E é esse o espírito desta obra acadêmico-didática: apresentar a experiência e, sobretudo, a metodologia de ensino criada e implementada na educação básica. No ano de 2015, o projeto Escola de Hackers foi agraciado com o prêmio Líderes & Vencedores 2015, promovido pela Federação das Associações Comerciais e de Serviços do Rio Grande do Sul em parceria com a Assembleia Legislativa do Estado do Rio Grande do Sul, na categoria destaque educacional. Em um mundo em que tudo será programável, onde a tecnologia é elemento determinante de desenvolvimento pessoal, corporativo, social e cultural, a expressão máxima de inclusão digital consiste em programar computadores! De forma poética, porém não menos real, a programação de computadores é a nova linguagem do mundo contemporâneo, no qual temos uma escolha a fazer: programar ou ser programado! A escolha é de cada um. Aqui vai nossa contribuição!
Prof. Dr. Adriano Canabarro Teixeira Idealizador do projeto Escola de Hackers
Introdução A Escola de Hackers é um projeto interinstitucional que oportuniza espaço para o desenvolvimento de conhecimentos em diversas áreas por meio da programação programaçã o de computadores. Utiliza o software Scratch e é direcionado aos estudantes do ensino fundamental da rede pública de Passo Fundo. A realização do projeto conta com o envolvimento da Secretaria Municipal de Educação de Passo Fundo, na coordenação, da Universidade de Passo Fundo (UPF), na organização e elaboração da proposta propo sta metodológica, do Instituto Federal Sul-rio-grandense e da Faculdade Meridional, no apoio e na divulgação. Em 2014, iniciamos as atividades na fase piloto, da qual participaram alunos de 6º ao 9º ano do ensino fundamental, com idades entre onze e catorze anos. Abrangendo 21 escolas da rede municipal de educação, teve a participação de 312 alunos. A proposta da Escola de Hackers foi concretizada por meio de oficinas semanais – com aproximadamente duas horas de duração – nas escolas municipais, ministradas por monitores do projeto. Em 2015, o projeto foi ampliado, visando atender também crianças de cinco e seis anos (com o Berçário de Hackers), os estudantes que já participaram da escola em 2014 e os alunos que participaram da Olimpíada de Programação (com a Escola de Hackers Avançada). Avançada). É importante ressaltar que, na fase piloto do projeto, a Escola Municipal Notre Dame foi o local de aplicação inicial das atividades da Escola de Hackers. Na semana anterior à aplicação nas escolas municipais participantes, as ativida-
Programação de computadores na educação: um passo a passo utilizando o Scratch
11 |
des eram planejadas e realizadas – no referido local – pelo grupo de professores e monitores da Universidade de Passo Fundo, e posteriormente discutidas e adequadas para serem executadas nas demais escolas.
Projeto Escola de Hackers É indiscutível a importância que a área de tecnologia tecno logia da informação tem assumido no mundo contemporâneo, instituindo-se como elemento determinante de desenvolvimento de pessoas, empresas, municípios, estados e países. Motor do desenvolvimento econômico e vetor de agregação social, as tecnologias contemporâneas transformam profundamente o mundo e abrem inúmeras perspectivas de ampliação da qualidade de vida dos indivíduos, de transparência para as instituições públicas e de transformação da sociedade como um todo. Entretanto, é possível identificar claramente dois paradoxos. Primeiro, apesar da importância fundamental da área e de seu crescimento, existe um déficit de profissionais. Segundo, apesar do potencial democrático das tecnologias em diminuir a distância existente entre as diferentes difere ntes camadas sociais, o Brasil continua a ocupar as últimas posições nos rankings mundiais de qualidade em educação. Passo Fundo ocupa lugar estratégico e de destaque no cenário da Tecnologia da Informação fora de capitais, contando com uma grande base de empresas na área, associações de profissionais, incubadoras empresariais, parques científicos e tecnológicos, além de vários cursos de nível médio e superior de graduação e pós-graduação. Assim, é fundamental que se criem espaços e oportunidades para o desenvolvimento de competência nessa área já no ensino fundamental.
| 12
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
O projeto Escola de Hackers, inovador na área de programação de computadores, é um desses espaços promovidos pela Secretaria Municipal de Educação do município de Passo Fundo, que atende 41 escolas de ensino fundamental, nas zonas urbana e rural, conforme exposto no site oficial da prefeitura. A idealização do projeto veio de diversas ações que aconteceram na UPF, em 2013, mais especificamente do Grupo de Estudos e Pesquisa em Inclusão Digital e do projeto de extensão Mutirão para Inclusão Digital. D igital. A ação responsável por essa promoção foi a Olimpíada de Programação de Computadores para Estudantes de Ensino Fundamental, que já viabilizava a utilização do software Scratch pelas equipes participantes. No final de 2013, o projeto foi sistematizado por professores colaboradores desse grupo grup o e desse projeto de extensão, tendo como principal objetivo oportunizar espaços para o desenvolvimento de competências na área de programação de computadores e de raciocínio lógico-matemático em estudantes do ensino fundamental da rede pública de ensino de Passo Fundo. A partir disso, no início de 2014, iniciaram-se as atividades da Escola de Hackers, com a inscrição de 21 escolas e de seus 312 alunos matriculados. Em cada escola, foram realizadas oficinas semanais de aproximadamente duas horas, das quais participavam um monitor, acadêmicos bolsistas das instituições de ensino superior envolvidas no pro jeto e alunos bolsistas do Programa Institucional de Bolsa de Iniciação à Docência da licenciatura em Matemática da UPF. As atividades trabalhadas nas oficinas foram elaboradas e discutidas em reuniões semanais com os monitores e os integrantes da equipe organizadora do projeto, quando eram abordados conceitos iniciais de programação e racio-
Programação de computadores na educação: um passo a passo utilizando o Scratch
13 |
cínio lógico, noções de variável, listas, operadores, sensores, controle, entre outros temas. Com a base de programação construída, os alunos passaram a adquirir autonomia para a criação de seus próprios projetos. Dessa forma, as atividades passaram a explorar essa característica por meio de animações e jogos. Inicialmente, os monitores apresentaram aos seus alunos os conceitos de jogo e de animação. Na sequência, eles os desafiaram a elaborar um jogo e uma história animada. Os alunos – então divididos em grupos e motivados – realizaram os dois desafios. No final de 2014, foram apresentados os projetos desenvolvidos pelos alunos na sua comunidade escolar. Cada escola organizou um espaço e um dia para a execução da atividade. No dia escolhido pela escola, cada grupo de alunos descreveu as concepções para elaboração de seus projetos e a sua finalização. Dois desafios foram lançados para os alunos realizarem seus projetos – a construção de um jogo e a animação de uma história natalina. Participaram das apresentações dos alunos: representantes da UPF e da Imed, direção, coordenador do laboratório de informática e alunos da escola.
Após o encerramento desse projeto piloto, em 2015 ocorreu a continuidade das oficinas nas escolas para novos estudantes, que contou com o auxílio daqueles que já haviam participado do projeto, e a realização de oficinas avançadas de programação, na UPF, para estudantes destaque na primeira experiência, agora envolvendo robótica educacional. A avaliação do desenvolvimento do projeto é feita por meio de relatórios mensais, resultados das reuniões e seminários realizados com os monitores e a equipe organizadora, e questionários aplicados aos responsáveis pela direção das
| 14
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
escolas e aos professores responsáveis pelos laboratórios computacionais.
Educação e programação de computadores Segundo Papert (2008), as crianças desenvolvem, antes de ir para a escola, estilos orais de aprender, entretanto, quando chegam lá, precisam desenvolver estilos “leterados”1 de aprender. Para o autor, essa transição é menos aplicável à matemática, uma vez que a palavra “matemática” é reservada apenas para o tipo de matemática “leterada” da escola e exclui uma base de conhecimentos orais que poderiam ser usados como alicerce para a matemática formal. Nesse sentido, a programação pode privilegiar a utilização desses conhecimentos informais (orais) na construção de algoritmos necessários para resolução dos problemas, em especial da Escola de Hackers. Acreditamos que esse processo sequencial utilizado na elaboração de algoritmos contribua para a compreensão de conceitos, teoremas, conteúdos, etc., da matemática e de outras áreas do conhecimento em uma situação formal de ensino. A partir disso, compreendemos que é possível criarmos estratégias inovadoras dentro do sistema escolar, privilegiando processos de aprendizagem pela invenção e criação. Papert e Freire convergem nesse sentido, quando Papert diz que, para Piaget, “entender é inventar. Ele (Piaget) estava pensando nas crianças. O princípio, porém, aplica-se a todos nós” (Papert, 2008). Ainda, Freire afirma que:
1
Papert (2008) utiliza a palavra "leterado" para se referir à habilidade de ler palavras formadas com as letras do alfabeto.
Programação de computadores na educação: um passo a passo utilizando o Scratch
15 |
[...] fora da busca, fora da práxis, os homens não podem ser. Educadores e educandos se arquivam na medida em que, nesta distorcida visão da educação, não há criatividade, não há transformação, não há saber. Só existe saber na invenção, na reinvenção, na busca inquieta, impaciente, permanente, que os homens fazem do mundo, com o mundo e com os outros (2005, p. 66).
Na busca de uma educação mais criativa, a Escola de Hackers utiliza o software de programação Scratch, elaborado no Massachusetts Institute of Tecnology (disponível em:
) por Mitchel Resnick.2 O Scratch é um ambiente gráfico de programação que possibilita o desenvolvimento de aplicativos, integrando recursos de multimídia de forma intuitiva. Tem por objetivo facilitar a introdução de conceitos de lógica e de computação bem como oportunizar o pensamento criativo, o raciocínio e o trabalho colaborativo. Segundo informações que constam no portal EduScratch (disponível em:
), a ferramenta Scratch foi concebida e desenvolvida como resposta ao problema do crescente distanciamento entre a evolução tecnológica no mundo e a fluência tecnológica dos cidadãos. Entre os recursos do Scratch, destacam-se as competências para a resolução de problemas e para a concepção de projetos com raciocínio lógico, decomposição de problemas complexos em partes mais simples, identificação e eliminação de erros, desenvolvimento de ideias, desde a compreensão até a concretização do projeto, concentração e perseverança (Marques, 2009). 2
Dirigiu o grupo Lifelong Kindergarten, no Media Laboratory do Instituto de Tecnologia de Massachusetts, que desenvolve novas tecnologias para envolver as pessoas (especialmente crianças) em experiências de aprendizagens criativas. Trabalhou com Seymour Papert. Recebeu o Prêmio McGraw em Educação 2011. Disponível em:
.
| 16
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
O Scratch é voltado, principalmente, ao usuário infantil e jovem, mas já conta com adeptos em idade adulta. Oferece uma linguagem de programação simples, com a qual é possível criar projetos que auxiliam na aprendizagem e no desenvolvimento de habilidades matemáticas e computacionais, de modo a complementar e enriquecer o pensamento criativo e aprender a trabalhar de maneira colaborativa. Segundo Resnick: [...] no processo de aprender programação, as pessoas aprendem muitas outras coisas. Eles não estão apenas aprendendo a programar, eles são programando para aprender. Além de aprender ideias matemáticas e computacionais (tais como variáveis e condicionantes), eles também estão aprendendo estratégias para a resolução de problemas, elaboração de projetos e a comunicar ideias. Essas habilidades são úteis não apenas para cientistas da computação, mas para todos, independentemente da idade, interesse ou ocupação (2013, tradução nossa).
Vemos que na interação da criança com o computador, delineia-se um processo em espiral, no qual a criança programa uma ideia inicial (hipótese) e a testa. Assim, se algo não sai conforme previsto, a criança tem a possibilidade de refletir, propor novas hipóteses e testá-las novamente. Resnick (2007) propõe um modelo de espiral que apresenta o processo sequencial de criação do estudante. Tal modelo inicia com Imagine, imaginar o que quer fazer, seguido por Create, criar o projeto a partir de suas ideias, Play, divertir-se com suas criações, Share, compartilhar suas ideias com outros, e Reflect, refletir sobre suas experiências para depois reiniciar o processo. Dessa forma, antes de iniciar o processo em espiral, o estudante necessita do apoio do professor para apropriar-se dos recursos básicas do programa e conhecer alguns exemplos de jogos e criações já prontos para que, a partir deles,
Programação de computadores na educação: um passo a passo utilizando o Scratch
17 |
consiga imaginar o que deseja fazer faze r. Na criação, o estudante utilizará tais recursos em seu projeto, e o papel do professor é de mediador desse processo, dando liberdade de criação ao estudante e, só interferindo se for solicitado. A diversão é um dos fatores mais relevantes para a aprendizagem, pois leva o estudante a querer aprender. Segundo Resnick (2007), divertir-se e aprender são ações que podem e devem estar intimamente ligadas, pois incentiva buscar novos conhecimentos, desenvolver ideias e testar seus limites e, talvez o mais importante, gerar novas ideias a partir de suas experiências. O compartilhamento do pro jeto é parte fundamental fundame ntal do processo criativo, embora a habilidade de compartilhar e colaborar seja pouco enfatizada nas atividades escolares. Mostrar suas criações para outras pessoas e conhecer outros trabalhos facilita a troca de informações e de experiências e contribui para a reformulação dos projetos e a geração de novas ideias. Por conseguinte, a reflexão leva o estudante a analisar se o resultado obtido foi o esperado e como poderia ser modificado para melhorar. Assim, novamente haverá a etapa de imaginar o que poderá ainda ser feito, criar, divertir-se, compartilhar e refletir novamente. E a espiral continua. Com base nisso, Resnick e Rosenbaum (2013) afirmam que um projeto de construção criativa precisa partir do interesse do estudante, e não de um conteúdo escolar predeterminado. Os conteúdos específicos das área científicas podem, ou não, ser trabalhados dentro de um projeto com tais particularidades. Esse é um fato importante a ser destacado, pois, o professor, ao determinar que ensinará certo conteúdo matemático por meio do Scratch, deverá ter cuidado para não tornar a atividade de programação algo de-
| 18
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
sinteressante e sem sentido ao estudante. É importante importa nte que eles queiram programar. programar. Na verdade, a programação de computadores utiliza muita matemática, que, muitas vezes, não se apresenta da mesma forma que na escola. O estudante, ao programar computadores, aplica seus conhecimentos prévios de matemática, aprende e desenvolve outros conhecimentos necessários à programação, sem saber necessariamente que o está fazendo. Ele tem a compreensão de uma matemática aplicada ao problema que está resolvendo pela programação, mas não chega a ter clareza dessa relação com a matemática escolar.
Para tanto, acreditamos que a programação de computadores pode facilitar a aprendizagem de conhecimentos de diversas áreas do conhecimento formais da escola, quando for possível a criação de vínculos entre o que se faz no computador e o que se aprende em sala de aula. Portanto, nos capítulos que seguem descrevemos como inserir a programação de computadores no ensino de forma clara e didática. No capítulo Blocos lógicos, sugerimos atividades por intermédio desse material didático para compreender conceitos de lógica. Já no capítulo seguinte, – Conhecendo o software Scratch – apresentamos os comandos do Scratch 2.0. No terceiro capítulo, apresentamos o passo a passo das atividades desenvolvidas na Escola de Hackers, em 2014 e 2015, e no último capítulo descrevemos as etapas para a construção de jogos.
Blocos lógicos Os blocos lógicos são pequenas peças geométricas criadas na década de 1950 pelo matemático húngaro Zoltan Paul Dienes. São 48 peças geométricas, quadrados, retângulos, triângulos e círculos, nas cores azul, vermelho e amarelo, com duas espessuras, grossa ou fina, nos tamanhos grande e pequeno. Os blocos têm por finalidade auxiliar a aprendizagem de crianças na educação infantil e educação básica. Podem ser confeccionados em madeira, plástico, borracha, isopor ou cartolina, em diferentes tamanhos, espessura e cores. Sua função é dar aos alunos a ideia das da s primeiras operações lógicas, como correspondência e classificação, auxiliando na capacitação de análise e raciocínio. Essa importância atribuída aos materiais concretos tem raiz nas pesquisas do psicólogo suíço Jean Piaget (1896-1980). Segundo ele, a aprendizagem da matemática envolve o conhecimento físico e o lógico-matemático. No caso dos blocos, o conhecimento físico ocorre quando o aluno manuseia, observa e identifica os atributos de cada peça. As atividades apresentadas a seguir, seguir, envolvendo as peças dos blocos lógicos e a encenação de rotinas utilizadas em programação – que chamaremos de programação analógica – foram desenvolvidas na Escola de Hackers com o intuito de levar os alunos participantes a compreender a lógica dos comandos utilizados na programação de computadores.
| 20
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividades com os blocos lógicos Atividade 1
Apresente os blocos lógicos aos alunos (Figura 1). Figura 1 – Peças dos blocos lógicos
Fonte: disponível em:
.
Atividade 2
Classifique os blocos lógicos quanto aos atributos: cor, tamanho, forma e espessura. Atividade 3
Pergunte aos alunos: a) Vocês conhecem os blocos lógicos? b) O que vocês entendem por blocos lógicos? O que vocês lembram de blocos lógicos?
Programação de computadores na educação: um passo a passo utilizando o Scratch
21 |
Atividade 4
Apresente alguns exemplos, usando sentenças que envolvam: a) conectivo “e”, por exemplo: separe blocos amarelos e circulares; Figura 2 – Resposta para a sentença envolvendo o conectivo “e” 3
b) conectivo “ou”, por exemplo: separe blocos azuis ou quadrados;
3
As imagens deste capítulo fazem parte do arquivo da Escola de Hackers.
| 22
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 3 – Resposta para a sentença envolvendo o conectivo “ou”
c) condicional “se – então”, por exemplo: se blocos vermelhos, então triangulares; Figura 4 – Resposta para a sentença envolvendo o condicional “se – então”
d) condicional “se – então (senão)”, por exemplo: se blocos circulares, então coloridos. Senão, triângulos e quadrados coloridos.
Programação de computadores na educação: um passo a passo utilizando o Scratch
23 |
Figura 5 – Resposta para a sentença envolvendo o condicional “se – então (senão)”
Atividade 5 Divida os alunos em grupos e solicite que eles separem:
– blocos azuis e quadrados; – blocos circulares e grandes; – blocos finos e vermelhos; – blocos azuis ou quadrados; – blocos amarelos ou grossos; – blocos circulares ou grandes; – se blocos azuis, então quadrados; – se blocos triangulares, então coloridos; – se blocos finos, então retângulos; – se blocos azuis, então quadrados. Senão, círculos, triângulos e retângulos;
– se triângulos ou círculos, então colorido. Senão, quadrados e retângulos; – se blocos grossos, então coloridos. Senão, finos.
| 24
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 6 Divida os alunos em grupos (sugerimos dois ou três alunos por grupo). Solicite que cada grupo elabore sentenças utilizando: “e”, “ou”, “se – então” e “se – então (senão)”. Após, cada grupo aplicará a outro grupo participante da atividade o exercício (a escolha do grupo que irá responder a(as) sentença(s) fica a critério dos participantes da atividade).
Atividade 74
Essa atividade é uma adaptação da apresentada no site Só matemática (disponível em: ), e começa com a contação de uma história: “Era uma vez um pirata que adorava tesouros. No porão de seu navio havia um baú carregado de pedras preciosas. Nesse porão, ninguém entrava, somente o pirata tinha a chave. Mas sua felicidade durou pouco. Numa das viagens, uma tempestade virou seu barco e obrigou todos os marinheiros a se refugiarem numa ilha. Furioso, o pirata ordenou que eles voltassem a nado para resgatar o tesouro”. A história será a chave para descobrir o marujo que está com o tesouro. Assim, novamente em grupos: • escolha do capitão; • entrega de um bloco lógico por grupo; 4
Imagens disponíveis em: .
Programação de computadores na educação: um passo a passo utilizando o Scratch
25 |
• exceto o capitão, os demais integrantes do grupo (marujos) escolhem as peças dos blocos de forma que todas fiquem distribuídas (o número de peças não precisa ser igual para todos os integrantes do grupo); • o capitão dá dicas da peça usando os atributos dos blocos lógicos (diz sentenças lógicas); • os marujos observam em suas peças as atribuições enunciadas, descartando as peças que não satisfazem a sentença dita pelo capitão; • a única peça restante (que estará com o maru jo no final) será o tesouro.
Supondo que a peça escolhida seja um triângulo, pequeno, azul e grosso, você diz: “Quem pegou o tesouro tem a peça azul”. Em seguida, dê outra dica: “Quem pegou o tesouro tem a forma triangular”. Siga até chegar ao marujo que esconde o tesouro. A atividade estimula mais do que a comparação visual.
Também exercita a comparação entre o atributo – agora imaginado pelo capitão – e a peça que o marujo tem na mão. A negação leva à classificação e ajuda a compreender, por exemplo, que um número pertence a um e não a outro con junto. Atividade 8
Divida a turma em três grupos representando cores distintas. Distribua as peças dos blocos lógicos, separadas por cor, entre os integrantes de cada grupo. O professor sor-
| 26
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
teia sentenças lógicas previamente elaboradas e colocadas em uma caixa. A criança que tiver pelo menos uma das peças que obedeça à sentença sorteada executa a ação de deslocar-se em um trajeto traçado no chão, conforme Quadro 1. Ganha a equipe cuja cor chegar primeiro. Quadro 1 – Traçado do caminho a ser percorrido por cada grupo Vermelho
Amarelo
Azul
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
6
6
6
7
7
7
8
8
8
9
9
9
10
10
10
Exemplos de questões a serem sorteadas e lidas pelo professor: – se blocos grossos, então ande uma casa; – se blocos pequenos ou amarelos, então ande uma casa; – se triângulos e finos, então ande duas casas; – se grandes e grossos, então: se estiver na largada, permaneça na sua posição; senão, volte uma casa; – se grossos, grandes e amarelos, então ande duas casas; – se blocos finos, então retorne uma casa;
27 |
Programação de computadores na educação: um passo a passo utilizando o Scratch
– se não amarelo, grandes e grossos, então ande uma – – – – – – – – –
casa; se grandes, finos e azuis, então ande três casas; se quadrado e pequeno, então ande uma casa; se círculo, grande, fino e não azul, então ande duas casas; se blocos não grossos e não grandes, então ande quatro casas; se retângulos grandes e grossos, então ande três casas;
se círculo, grande e fino, então ande duas casas; se blocos grossos e pequenos, então ande cinco casas;
se círculo e fino, então volte uma casa; se blocos grossos e amarelos, então ande duas casas.
Atividades de programação analógica Atividade 1
Questione os alunos: O que é programar? (Entende-se que programar é dar uma série de comandos para alguém/ algo executar). Atividade 2
Convide um aluno para se aproximar do professor, na frente da turma, e realizar os seguintes comandos: a) escolha uma posição no ambiente, que será considerada a posição inicial. 1. gire 90 no sentido anti-horário; 2. mova-se cinco passos; 3. se tocar em obstáculo, então gire 90 para a direita e mova-se cinco passos. Senão, volte à posição inicial. °
°
| 28
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
b) escolha uma posição no ambiente, que será considerada a posição inicial. 1. fique em pé; 2. quando o professor colocar a mão sobre o ombro do aluno: repita três vezes a sequência: – – – – – –
agache; levante; agache; levante; mova-se cinco passos se tocar em algum objeto (classe ou cadeira), pare (terminar aqui).
c) quando ouvir um som: 1. repita seis vezes: mude para o traje 1 – abrir os braços e fechar as pernas; 2. espere dois segundos; 3. mude para o traje 2 – abaixar os braços e abrir as pernas. Atividade 3
Divida o grupo em duplas e solicite que eles criem uma encenação com os seguintes comandos: 1. mova, gire e diga; 2. mova, gire, se – então; 3. quando tocado, mude de traje e emita som. Atividade 4
Trocar uma lâmpada. Em grupo, escreva passo a passo os comandos necessários para trocar uma lâmpada, em seguida, escreva em um cartaz. Todos os grupos devem apresentar o resultado para os colegas.
Conhecendo o software 5 Scratch O Scratch é um ambiente gráfico de programação desenvolvido pelo Massachusetts Institute of Technology, que permite e possibilita o desenvolvimento de aplicativos que integram recursos de multimídia de forma intuitiva. Tem por objetivo facilitar a introdução de conceitos de matemática e de computação bem como oportunizar o pensamento criativo, o raciocínio e o trabalho colaborativo. A ferramenta Scratch foi concebida e desenvolvida como resposta ao problema do crescente distanciamento entre a evolução tecnológica no mundo e a fluência tecnológica dos cidadãos.6 O termo scratch provém da técnica de scratching, utilizada pelos disc-jóqueis do hip-hop, que giram os discos de vinil com as mãos para frente e para trás, de modo a fazer misturas musicais originais. Com o software Scratch, é possível fazer algo semelhante, misturando diferentes tipos de clipes de mídia de modos criativos, usando uma programação matemática similar à feita nos programas de computador reais, porém de forma lúdica, simples e intuitiva (Marques, 2009).
5
Todas as imagens deste capítulo fazem parte do arquivo da Escola de Hackers. EDUSCRATCH. Site do Scratch para educadores. Disponível em: . Acesso em: 10 jun. 2012.
6
| 30
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Entre os recursos do Scratch, destacam-se as competências para a resolução de problemas e para a concepção de projetos com raciocínio lógico, decomposição de problemas complexos em partes mais simples, identificação e eliminação de erros, desenvolvimento de ideias – desde a concepção até a concretização do projeto – concentração e perseverança. 7
Voltado ao usuário infantil e jovem, esse software oferece uma linguagem de programação simples, com a qual é possível criar projetos que auxiliam na aprendizagem e no desenvolvimento de habilidades matemáticas e computacionais. Desse modo, complementa e enriquece o pensamento criativo, desenvolvendo o trabalho de maneira colaborativa. O Scratch é um software livre que está disponível no endereço eletrônico . É possível criar uma conta de acesso, visualizar o interior e o executável de projetos já compartilhados por outros usuários assim como compartilhar seus próprios projetos. O site disponibiliza, no link Ajuda, tutoriais e vídeos que auxiliam na melhor compreensão e utilização do software. Para instalar o Scratch (versões 1.4 e 2.0) em seu computador, você poderá utilizar o mesmo link. Se preferir, você poderá realizar seu projeto on-line clicando no link Criar. O próximo bloco apresenta o ambiente de programação e de visualização do software Scratch 2.0 bem como noções básicas de palco, pano de fundo e de atores – informações necessárias para a construção de programas, jogos, histórias, etc.
7
SCRATCH. About Scratch. Scratch documentation site. Disponível em: . Acesso em: 10 jun. 2012.
Programação de computadores na educação: um passo a passo utilizando o Scratch
31 |
Tela inicial Vamos conhecer os nomes dos campos, abas e botões da tela inicial do software para facilitar o uso do aplicativo. Na Figura 6, há um objeto ( sprite) com a imagem de um gato, que pode ser movimentado na tela utilizando alguns comandos dessa linguagem de programação. Figura 6 – Tela inicial do Scratch: áreas, botões, abas e elementos gráficos
Para a compreensão da tela do programa Scratch 2.0, descreve-se a seguir seus detalhes: 1) categoria de comandos: movimento, aparência, som, caneta, controle, sensores, operadores e variáveis;
2) bloco de comandos: ao escolher uma categoria de comando temos várias opções de comandos; 3) botões de atalho: selecionar idioma, salvar este pro jeto e compartilhar este projeto; 4) abas para opções: roteiros, fantasias e sons; 5) área de edição (depende da aba anteriormente selecionada no item 4); 6) botões para editar o objeto no palco: duplicar, apagar, crescer objeto e encolher objeto;
| 32
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
7) botão para alterar o tamanho de visualização do palco;
8) botões para iniciar (bandeira verde) e parar o script (círculo vermelho); 9) palco: local onde visualizamos o sprite; 10) área que disponibiliza a seleção/criação dos sprites e do palco.
Palco O palco é o lugar onde pode ser visualizada a execução de eventos ou projetos; é o ambiente no qual os objetos estão inseridos. Pode ser, por exemplo, um fundo com uma paisagem, um ambiente que represente um local, um período, como o dia, a noite ou qualquer outro contexto no qual a história do jogo esteja inserida. Agora, por intermédio das figuras a seguir, vamos aprender a buscar nos arquivos um palco já disponibilizado pelo Scratch.
Programação de computadores na educação: um passo a passo utilizando o Scratch
33 |
Figura 7 – Ícone para acesso ao palco
Na tela inicial do Scratch, clique em Panos de fundo, em seguida, no botão Importar fundo da biblioteca. Figura 8 – Ícones para importação de panos de fundo
| 34
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Assim você terá acesso à janela mostrada na Figura 9. Escolha o tema, por exemplo, Cidade. Figura 9 – Janela com arquivos para importação
Após, entre na pasta Cidade e escolha a primeira opção, como se vê na Figura 10. Figura 10 – Opções de panos de fundo, na pasta Cidade
Programação de computadores na educação: um passo a passo utilizando o Scratch
35 |
Assim, o seu palco será modificado automaticamente, conforme ilustrado pela Figura 11. Figura 11 – Novo pano de fundo inserido no palco
Atores ( sprites ou personagens) O desenvolvimento de qualquer aplicação é feito por meio de objetos denominados sprites, que se constituem em imagens, desenhos, fotos ou qualquer outro objeto visual. A aparência de um sprite pode ser modificada pela sua apresentação em uma fantasia diferente. Qualquer imagem pode ser usada como uma fantasia – pode-se desenhar uma imagem no editor Pintura, importar de uma lista ou baixá-la de um website. Você pode dar instruções a um sprite, mandar que ele se mova, que toque música, reaja a outros sprites, etc. A tela inicial do Scratch, quando aberta, mostra o sprite Gatinho, conforme já ilustrado na Figura 6. Para criar novos sprites, clica-se em um dos botões mostrados na Figura 12.
| 36
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 12 – Botões para criar sprites (ator equivale a sprite)
A Figura 13 mostra as características do sprite no momento em que está sendo elaborado ou executado um pro jeto: nome, abscissa e ordenada, direção e estilo de rotação. Figura 13 – Descrições das características do sprite
Para dar um novo nome, basta digitá-lo no retângulo em que está escrito Sprite 1.
Programação de computadores na educação: um passo a passo utilizando o Scratch
37 |
A direção indica para onde ele se moverá quando executar um comando de deslocamento (0 = para cima, 90 = direita, 180 = para baixo e -90 = esquerda). °
°
°
°
A linha azul na miniatura também mostra a direção do sprite. Arrastando essa linha com o mouse, a direção do sprite no palco será mudada, um clique duplo na miniatura devolverá à direção original (90 ). Pode-se exportar um sprite clicando com o botão direito do mouse no sprite do palco ou na Lista de sprites. Será guardado como um arquivo do tipo sprite e poderá ser importado em outro projeto. A seguir, ilustra-se (Figura 14) como alterar a fantasia do Objeto 1. Primeiramente, clique no Objeto 1. °
Figura 14 – Clique no Objeto 1
Clique na aba Fantasias e, em seguida, clique no botão Importar ator da biblioteca, como se vê na Figura 15:
| 38
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 15 – Importação de fantasias
Abre-se uma janela, selecione o botão em destaque Fantasias e, em seguida, clique na pasta Animais. A Figura 16 apresenta um exemplo da biblioteca de fantasias. Figura 16 – Arquivos contendo modelos de fantasias
Programação de computadores na educação: um passo a passo utilizando o Scratch
Selecione um animal: o cachorro chamado dog1-a: Figura 17 – Inserção do animal dog1-a
Assim, teremos a tela apresentada na Figura 18: Figura 18 – Nova fantasia para o sprite Gatinho
39 |
| 40
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Aprendemos assim a trocar o gato pelo cachorro, agora vamos inserir os dois no mesmo palco. Para isso, clique no ícone para ter acesso aos objetos que estão em pastas. Clique na pasta Animais e então escolha outro gato: Figura 19 – Menu de escolha de s prite
Agora temos dois objetos no palco, como se vê na Figura 20:
Programação de computadores na educação: um passo a passo utilizando o Scratch
41 |
Figura 20 – Dois objetos no palco
A lista de sprites contém miniaturas de todos os sprites do projeto, mostrando o nome, quantas fantasias e quantos scripts (roteiros, fantasias e sons vinculados aos objetos) cada um tem. Para ver e editar o script de um sprite, é preciso clicar na miniatura na lista de sprites, ou dar um duplo-clique no sprite da tela. O palco pode mudar de aparência, assumindo outros fundos de tela. Para ver e editar scripts, fundos de tela e sons associados ao palco, clique no ícone do palco (retângulo), à esquerda da lista de sprites.
| 42
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 21 – Lista de sprites usados no projeto
Cada objeto utilizado na animação pode ter o seu comportamento programado a partir de um conjunto de blocos, que se constituem em comandos que serão seguidos pelo personagem quando a animação for executada. Os comandos podem ser de movimento, por exemplo, indicando que o personagem vai se movimentar alguns passos em uma certa direção ou que vai até uma posição específica, etc. Outros comandos permitem modificar a aparência, a fantasia, as cores e demais características dos objetos. Além desses, existem estruturas de controle que permitem executar atividades de forma repetida, quando ou se uma condição for satisfeita.
Programação de computadores na educação: um passo a passo utilizando o Scratch
43 |
Atividades Atividade 1
a) Insira dois palcos e faça com que ocorra a troca entre eles; b) crie um palco (pintar um novo palco); c) crie um palco importando imagem da internet; d) salve a atividade em um arquivo. Atividade 2
a) Exclua o sprite gatinho; b) crie um sprite retangular usando o editor de pintura
;
c) salve a atividade em um arquivo. Atividade 3 a) Crie um arquivo novo (vai aparecer o sprite Gatinho); b) exclua o sprite Gatinho;
c) insira um objeto do arquivo ; d) insira um segundo objeto do arquivo ; e) clique sobre um dos objetos e insira um som usando o comando de inclusão de áudio; Figura 22 – Ícones de áudio
f) salve a atividade em um arquivo.
| 44
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 4
a) Crie um novo arquivo; b) exclua o sprite Gatinho; c) insira um palco à sua escolha da pasta Natureza; d) escolha um sprite que permita mudança de fantasia e insira-o no palco; e) faça a mudança da fantasia do sprite escolhido. Atividade 5
a) Crie um arquivo novo; b) salve imagens da internet em um arquivo no computador; c) importe a imagem salva no arquivo do computador usando o ícone ; d) na área de edição dos sprites, altere a fantasia do ator;
e) inclua um palco de acordo com a figura escolhida; f) finalize a atividade deixando o palco e os sprites esteticamente apresentáveis e faça mudança de fantasia, utilizando as imagens salvas.
Roteiros Neste item, descrevemos os comandos necessários à programação. Para determinar a execução de cada sprite, devemos criar individualmente sequências de roteiros, arrastando blocos gráficos e juntando-os em pilhas, chamadas scripts. Os blocos do Scratch somente se encaixam de determinadas maneiras, eliminando erros de digitação que tendem a ocorrer quando as pessoas usam linguagens de programação baseadas em texto.
Programação de computadores na educação: um passo a passo utilizando o Scratch
45 |
Para fazer rodar um script, basta um duplo clique em qualquer bloco. O Scratch executa esses scripts a partir do topo e, depois, sucessivamente, bloco a bloco, os de baixo. A seguir, apresentamos os roteiros usados no Scratch assim como a descrição básica de cada um dos blocos. Roteiros de movimento Gira o sprite 15 graus no sentido horário.
Gira o sprite 15 graus no sentido anti-horário. Aponta o sprite para uma direção (90o direita, 90o esquerda, 0o cima e 180o baixo). Aponta para outro sprite ou para o cursor.
Move o sprite para a posição indicada.
Move o sprite para outro sprite ou para o cursor. Desliza o sprite para a posição indicada no tempo indicado. Adiciona a quantidade de posições no eixo x.
Move o sprite para a posição indicada no eixo x.
Adiciona a quantidade de posições no eixo y.
Move o sprite para a posição indicada no eixo y.
Faz com que o sprite vire, se tocar na borda. Muda o estilo de rotação para esquerda-direita, não girar ou em todas as posições. Se clicado, mostra a coordenada x na tela.
Se clicado, mostra a coordenada y na tela.
Se clicado, mostra a coordenada direção na tela.
| 46
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Roteiros de controle
Adiciona o tempo de espera indicado. Repete o número de vezes das instruções que estão dentro do bloco. Repete sempre as instruções que estão dentro do bloco. Se a condição for verdadeira, então executa as instruções que estão dentro do bloco. Se a condição for verdadeira, então executa as instruções que estão dentro do bloco “se”, caso contrário, executa as instruções que estão no bloco “senão”. Espera até que a condição seja verdadeira para executar o bloco seguinte. Repete as instruções do bloco até que a condição esteja satisfeita. Envia uma mensagem para todos os sprites. Diz ao clone o que fazer, quando é clicado. Cria um clone do sprite especificado. Apaga o clone atual.
Programação de computadores na educação: um passo a passo utilizando o Scratch
47 |
Roteiros relativos a eventos
Quando a bandeira verde é clicada, iniciam-se as interações que estão no bloco. Quando a tecla selecionada é pressionada, iniciam-se as interações que estão no bloco. Quando clicar no ator, iniciam-se as interações que estão no bloco. Executa um script quando o cenário muda para um determinado fundo. Executa um script quando o atributo selecionado (loudness, timer, movimento de vídeo) é maior que um valor especificado. Executa um script quando recebe mensagem de transmissão especificada. Envia uma mensagem para todos os sprites. Envia uma mensagem para todos os sprites e aguarda.
| 48
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Roteiros relativos à aparência Mostra uma mensagem em um balão, do tipo fala, durante o tempo indicado. Mostra uma mensagem, do tipo fala, em um balão. Mostra uma mensagem em um balão, do tipo pensamento, durante o tempo indicado. Mostra uma mensagem, do tipo pensamento, em um balão. Mostra o sprite. Esconde o sprite. Muda a fantasia do sprite para a fantasia selecionada. Muda a fantasia do sprite para a próxima fantasia da lista. Muda o pano de fundo para o pano de fundo selecionado. Adiciona um efeito. Define um efeito gráfico. Apaga os efeitos gráficos Aumenta ou diminui o tamanho do sprite. Muda o tamanho do sprite. Move um sprite para a frente dos outros sprites. Move o sprite para trás o número de camadas indicadas. Se marcado, mostra o número de fantasias do sprite na tela. Se marcado, mostra o nome do pano de fundo na tela. Se marcado, mostra o tamanho na tela.
Programação de computadores na educação: um passo a passo utilizando o Scratch
49 |
Roteiros que se constituem em sensores Se o sprite tocar no objeto selecionado, retornará verdadeiro. Se o sprite tocar na cor selecionada, retornará verdadeiro. Se a cor selecionada estiver tocando na outra cor, retornará verdadeiro. Retorna a distância do sprite até o objeto selecionado. Aguarda até receber uma resposta. Recebe uma resposta e mostra na tela, se usada em conjunto com a instrução “diga”. Se a tecla selecionada estiver pressionada, retornará verdadeiro. Se o mouse estiver pressionado, retornará verdadeiro. Se o mouse se movimentar no eixo x, retornará verdadeiro. Se o mouse se movimentar no eixo y, retornará verdadeiro. Relata o volume (de um a cem) dos sons detectados pelo microfone do computador. Sentidos quanto ao movimento ou à direção, é na imagem atual do vídeo. Liga ou desliga o vídeo. Define a transparência do vídeo. Relata o valor do temporizador em segundos. Zera o temporizador. Retorna o valor referente à opção selecionada. Informa a hora atual. Informa o número de dias desde 2000. Mostra o nome de usuário do projeto.
| 50
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Roteiros para manipulação de som Reproduz o som selecionado e continua as interações. Reproduz o som selecionado e espera até que termine de ser reproduzido para seguir as interações. Interrompe a reprodução de todos os sons. Reproduz o som selecionado durante o intervalo de tempo indicado. Para a reprodução durante o intervalo de tempo indicado. Reproduz a nota selecionada durante o intervalo de tempo indicado. Usa o instrumento indicado. Adiciona o valor indicado ao volume do programa. Muda o volume do programa, pode ser usado juntamente com um operador. Se marcado, mostra o volume de programa. Também pode ser usado juntamente com um operador. Adiciona o valor indicado ao número de batidas por minuto do som. Muda o número de batidas por minuto para o valor indicado. Se marcado, mostra o tempo na tela.
Programação de computadores na educação: um passo a passo utilizando o Scratch
51 |
Roteiros que implementam operadores Adição Subtração Multiplicação Divisão Escolhe um número inteiro dentro do intervalo especificado. Verifica se o primeiro valor é menor do que o segundo. Verifica se o primeiro valor é igual ao segundo. Verifica se o primeiro valor é maior do que que o segundo. Retorna verdadeiro se as duas condições estiverem corretas. Retorna verdadeiro se ao menos uma das condições estiver correta. Altera a condição, se for verdadeira se tornará falsa; se for falsa, se tornará verdadeira. Conecta duas frases. Retorna a letra à posição escolhida. Retorna o resto da divisão de um número por outro. Arredonda o valor desejado. Retorna o resultado da função matemática escolhida (raiz quadrada, seno, cosseno, etc.).
| 52
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Roteiros para uso da caneta Limpa todas as marcas deixadas pela caneta na tela. Carimba na tela o próprio sprite. Usa a caneta. Interrompe a marcação da caneta.
Abre uma caixa de cores para escolher uma nova cor para a caneta. Adiciona o valor indicado ao número da cor da caneta. Muda a cor da caneta para a cor correspondente ao valor escolhido. Adiciona o valor indicado à intensidade da caneta. Muda a intensidade da caneta para o valor indicado. Adiciona o valor indicado à espessura do risco da caneta. Muda a espessura do risco da caneta para o valor indicado.
Programação de computadores na educação: um passo a passo utilizando o Scratch
Roteiros para utilização de variáveis e listas Cria uma nova variável. Cria uma lista.
Se marcado, mostra a variável na tela. Muda o valor da variável para o valor indicado. Adiciona o valor indicado ao valor da variável. Mostra a variável na tela. Esconde a variável.
Insere o valor indicado na lista.
Apaga o item escolhido da lista. Insere o valor na posição indicada. Substitui um valor na lista. Retorna o item escolhido da lista. Retorna o tamanho da lista. Verifica se o item escolhido está contido na lista. Mostra a lista b. Esconde a lista b.
53 |
Trabalhando no Scratch
8
Neste capítulo, apresentamos atividades elaboradas na Escola de Hackers para explorar o ambiente de programação do Scratch e aplicar os diferentes tipos de blocos de comando (roteiros), descritos no capítulo anterior, para fazer a programação.
Faça você mesmo... Atividade 1
Giro do retângulo: – excluir o sprite do gatinho; – desenhar um sprite retangular; – fazer com que ele gire de modo perceptível quando clicada a bandeira verde; – mudar o centro do objeto e repetir o comando anterior.
Dica para mudar o centro do objeto: – selecionar o sprite; – clicar em Fantasia; – clicar em
, que se encontra no canto superior, à direita.
Dessa forma, pode-se localizar o centro do sprite assim como mudar seu ponto de rotação, basta arrastar o centro das retas formadas com o mouse até o ponto desejado (Figura 23).
8
As imagens deste capítulo foram captadas no programa Scratch utilizado na Escola de Hackers.
Programação de computadores na educação: um passo a passo utilizando o Scratch
55 |
Figura 23 – Localização do centro do s prite
Figura 24 – Sugestão de comando para execução da Atividade 1
Atividade 2
Movimento do sprite usando as setas: – inserir um objeto; – fazer o objeto se movimentar quando as setas de direção (direita, esquerda, para cima, para baixo) forem clicadas (Figura 25).
| 56
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 25 – Sugestão de comando para execução da Atividade 2
Atividade 3
Botão sorteador: – excluir o sprite do gatinho; – criar um objeto botão; – quando o botão for clicado ele deverá sortear um número aleatório, e mostrá-lo a cada vez que for clicado (Figura 26). Figura 26 – Sugestão de comando para execução da Atividade 3
Atividade 4
Move e gira: – inserir um objeto; – fazer o sprite se mover sessenta passos para a direita, girar 45 no sentido anti-horário e se mover outros sessenta passos; °
Programação de computadores na educação: um passo a passo utilizando o Scratch
57 |
– o objeto repete o percurso duas vezes; – desenhar, usando a caneta, a movimentação realizada no palco. Figura 27 – Sugestão de comando para execução da Atividade 4
Atividade 5
Ampliação: – inserir no palco um sprite que contenha mais de um traje;
– inserir mais dois palcos coloridos; – fazer com que ocorra a troca entre os palcos; – em seguida, o sprite deve trocar o traje quando o objeto for clicado; – o objeto deverá aumentar de tamanho durante essa operação. Figura 28 – Sugestão de comando para execução da Atividade 5
| 58
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 6
Uso de condicional – roteiro controle: Goleira: o desafio é fazer uma bola ir em direção à goleira e, se entrar nela, aparecer na tela a fala “Gol!” – inicialmente, faça o desenho da goleira e escolha ou desenhe uma bola; – mude a direção da bola para 0, fazendo com que ela vá em direção à goleira; – acrescente na área de edição de scripts o bloco Se – então (Senão) que fica no roteiro Controle; – coloque no espaço do “se” o sensor “tocando na cor...”;
– clique no quadrado da cor e escolha a tonalidade da goleira; – agora, a cor no teste está correta; – coloque dentro do Senão o comando “mova” para que a bola continue o movimento se não tocar no gol. Se deixar o Senão vazio, não acontecerá nada quando a bola não tocar no gol; – dentro do bloco Se coloque a ação que deve ocorrer quando a bola tocar a goleira, ou seja, coloque o bloco Diga “Gol!” por 2 segundos; Dica: você pode editar o texto do bloco Diga, clicando e apagan do o texto original.
– coloque o teste Se – então (Senão) dentro de um bloco Sempre para que esse teste seja feito o tempo todo. Depois, coloque um controle que determine o início do script. No caso, foi pedido que a bola se movimente quando for clicada com o mouse, mas você pode usar outro comando; – experimente fazer um jogo em que a bola se movimente e vire quando algumas teclas do teclado forem pressionadas.
Programação de computadores na educação: um passo a passo utilizando o Scratch
Figura 29 – Sugestão de comando para execução da Atividade 6
59 |
| 60
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Noção de variável É possível incorporar os dados numéricos ou sequências de letras dentro de diferentes tipos de blocos de código, utilizando-os para controlar o funcionamento de scripts. Também é possível armazenar esses dados quando os aplicativos são executados, utilizando variáveis. No Scratch, variáveis permitem armazenar, recuperar e modificar dados numéricos e sequências de letras. O Scratch suporta variáveis globais ou variáveis específicas para um objeto. Além disso, o programa tem uma variável padrão denominada “resposta”. Nela, é armazenado o resultado de algo que é digitado. Atividade 7
Resposta: – faça o sprite solicitar ao usuário um valor de entrada (exemplo: o nome do usuário); – armazene esse valor na variável padrão “Resposta”; – faça o personagem gato dizer o valor armazenado correspondente. Figura 30 – Sugestão de comando para execução da Atividade 7
Programação de computadores na educação: um passo a passo utilizando o Scratch
61 |
Atividade 8
Valor e comparação: – peça ao usuário que digite um número de entrada; – crie uma variável “var” e inicialize seu valor em 1; – repita os procedimentos até que “var” seja maior que o valor de “resposta”; – se o valor armazenado em “var” for maior que cinco, faça o gatinho dizer “Miau” e andar “var”* cem passos; Lembrete: adicione o comando que permite ao gatinho voltar quando atingir as bordas do cenário.
– Senão, se o valor armazenado em “var” for igual a quatro, faça com que o gatinho troque de traje; – e, se o valor armazenado em “var” for menor do que quatro, faça o gatinho dizer esse novo valor; – aumente o valor de “var” em 1; – faça o gatinho esperar 2 segundos.
| 62
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 31 – Sugestão de comando para execução da Atividade 8
Atividade 9
Primeira e segunda: – crie duas variáveis, chamadas “primeira” e “segunda”;
– faça o gatinho solicitar que o usuário informe dois valores e atribua-os um para cada variável; – troque os valores, de forma que a primeira contenha o valor da segunda e vice-versa; – o gatinho deve repetir os novos valores. Para discutir: 1) Entre com o valor 0 no início. O que acontece? Por que isso acontece?
Programação de computadores na educação: um passo a passo utilizando o Scratch
63 |
2) Teste seu programa para valores 3, 5, e 8. 3) Modifique o programa para o gatinho: quando ele se movimentar, deve andar “var”* “resposta” passos (em vez de “var”* cem passos). 4) Modifique o programa para que em vez de incrementar “var” ao final, subtraia 1. Dica: ao inserir “esperar”, por um ou mais segundos, você tem tempo de observar o que está ocorrendo; de outro modo, a cena rápida demais (Figura 32).
Figura 32 – Sugestão de comando para execução da Atividade 9
Atividade 10
Produto: – faça o sprite solicitar ao usuário que digite um número como entrada; – calcule o produto desse número com o seu antecessor e seu sucessor; – faça o gatinho dizer o produto, utilizando uma variável para calcular o produto (Figura 33).
| 64
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 33 – Sugestão de comando para execução da Atividade 10
Atividade 11
Caneta: Faça um programa que desenhe a reta y = x, conforme os seguintes passos: – atribua a x e y as coordenadas -120, -120; – aponte para uma direção; – use a caneta para desenhar e faça o sprite se mover duzentos passos; – levante a caneta e apague tudo. Essas duas ações são úteis para limpar a tela antes de começar um novo desenho (Figura 34). Figura 34 – Sugestão de comando para execução da Atividade 11
Programação de computadores na educação: um passo a passo utilizando o Scratch
65 |
Atividade 12
Parábola: Faça o gatinho desenhar uma parábola, seguindo a equação y = (1/100)*x². Para isso, siga os seguintes passos: – ao começar o programa, inicialize a posição x e y do gatinho em 0; – crie uma variável auxiliar “var” e lhe atribua o valor -100;
– limpe a tela de riscos de caneta (Caneta->limpe); – habilite o uso da caneta (Caneta->abaixe a caneta); – repita os seguintes passos até o gatinho tocar na borda: – mude o valor da posição x do gatinho para “var”; – mude y para a equação (1/100)*x²; – some 1 à variável “var”.
Para discutir: o que acontece se “var” aumentar de 2 em 2, ao final? Figura 35 – Sugestão de comando para execução da Atividade 12
| 66
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Uso de listas No Scratch é possível criar listas como uma espécie de variável capaz de armazenar uma sequência de valores, podendo ser números, letras, frases ou outros caracteres. Pode-se imaginar a lista como uma sequência de caixas. Cada caixa contém um item da lista e pode ser acessada usando um índice (número inteiro), que serve para localizar esse item na lista. Atividade 13
Lista de números: – crie uma lista contendo números de 1 a 10. Dica: use uma variável para fazer o armazenamento dos números na lista.
Figura 36 – Sugestão de comando para execução da Atividade 13
Programação de computadores na educação: um passo a passo utilizando o Scratch
67 |
Atividade 14
Invertendo os elementos: – crie uma lista contendo dez números informados pelo usuário; – crie uma segunda lista; – envie inversamente os elementos da lista um para a segunda lista, de forma que o último elemento da primeira seja o primeiro elemento da segunda; – faça com que ocorra a multiplicação do terceiro elemento da primeira lista com o sétimo elemento da segunda lista. Figura 37 – Sugestão de comando para execução da Atividade 14
Atividade 15
Sétimo elemento: – peça ao usuário que informe dez números; – crie uma lista (a) contendo os dez números informados pelo usuário; – em seguida, crie uma segunda lista (b);
| 68
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
– insira os números da primeira lista em uma variável “var”; – depois, insira esses valores da variável em uma segunda lista;
– faça o gatinho dizer qual o valor do elemento 7, que está em uma das listas. Figura 38 – Sugestão de comando para execução da Atividade 15
Atividade 16
Nome e idade: – perguntar ao usuário qual o tamanho da lista; – inserir o tamanho da lista em uma variável; – criar duas listas contendo nome e idade; – a lista “nome” vai conter os nomes informados pelo usuário;
– a lista “idade” vai conter as idades referentes aos nomes inseridos na outra lista;
Programação de computadores na educação: um passo a passo utilizando o Scratch
69 |
– fazer o gatinho dizer os nomes e as idades respectivas de cada elemento da lista. Figura 39 – Sugestão de comando para execução da Atividade 16
Atividade 17
Soma: – peça ao usuário que informe dez números; – crie uma lista contendo os dez números informados pelo usuário; – faça o gatinho dizer a soma do primeiro número da lista com o segundo, do terceiro com o quarto, e assim sucessivamente até o décimo.
| 70
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 40 – Sugestão de comando para execução da Atividade 17
Atividade 18
Única e Vetpalavras: – insira no palco o sprite lion1-a; – crie duas listas: uma chamada Única e outra Vetpalavras; – inicie o programa quando o sprite for clicado; – pergunte ao usuário dez nomes de pessoas; – insira os nomes das pessoas na lista Vetpalavras; – faça com que o programa sorteie um dos nomes aleatoriamente da lista Vetpalavras e o insira na lista Única; – pergunte ao usuário qual a quantidade de letras contidas nessa palavra; – se o valor fornecido pelo usuário for correto, apresente uma mensagem parabenizando-o pelo acerto. Caso contrário, acusando erro;
Programação de computadores na educação: um passo a passo utilizando o Scratch
71 |
– o programa deverá sempre se repetir, a menos que você clique no botão Parar tudo (vermelho). Use a lista Única para selecionar a palavra a ser sorteada na contagem da quantidade de suas letras. Figura 41 – Sugestão de comando para execução da Atividade 18
| 72
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 19
De trás para frente: – crie uma lista; – peça ao usuário para digitar um número qualquer; – insira na lista os números inteiros de 1 até o número digitado pelo usuário, utilizando o “repita”; – faça o gatinho dizer os números contidos na lista de trás para frente, usando uma variável para manipular a posição dos números da lista; – ao final, o gatinho deve dizer o tamanho da lista; – escreva o esquema correspondente ao programa Scratch.
Programação de computadores na educação: um passo a passo utilizando o Scratch
73 |
Figura 42 – Sugestão de comando para execução da Atividade 19
Lembrete: Por causa das características da estrutura “lista”, cada vez que o programa executado a lista aumenta. Assim, a cada rodada, primeiro ELIMINE a lista “minha-lista” (no menu à esquerda), e depois CRIE a lista “minha-lista”. Assim, o programa sempre vai começar com uma lista vazia.
| 74
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Para isso: a) modifique o segundo loop do programa para o gatinho dizer os elementos do início ao fim; Figura 43 – Sugestão de comando para execução da Atividade 19 – a)
Programação de computadores na educação: um passo a passo utilizando o Scratch
75 |
b) modifique o programa para inserir apenas números pares dentro da lista, a partir de 2 até 2* N (número digitado pelo usuário). O número informado pelo usuário irá determinar o tamanho que a lista terá; Figura 44 – Sugestão de comando para execução da Atividade 19 – b)
c) modifique o segundo loop do programa para o gatinho dizer a soma dos elementos da lista; Dica: para acompanhar os valores das variáveis, lembre-se de clicar nas caixinhas correspondentes.
| 76
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Criando clones Qualquer sprite pode copiar a si mesmo ou gerar cópia de outro sprite por meio do bloco , que se encontra na imagem da Figura 45. Figura 45 – Bloco para criação de Clone
Um sprite clonado herda o estado do sprite original no momento da clonagem. Atividade 20
Criar clones: – escolha um sprite; – crie um clone do sprite, quando clicado nele; – faça o clone apontar para uma direção qualquer entre 1 e 300 graus; – faça o clone se movimentar, respeitando a borda.
Programação de computadores na educação: um passo a passo utilizando o Scratch
77 |
Figura 46 – Sugestão de comando para execução da Atividade 20
Atividade 21
Pegue a maçã: Crie um jogo em que: – maçãs aparecem em posições horizontais aleatórias na parte superior da tela do jogo; – em instantes variados, caem no chão; – o jogador deve mover o carrinho para pegar as maçãs antes que elas toquem o chão. Cada uma das frutas vale um ponto. – a seguir, coloque a arte de fundo como palco, a arte do carrinho como o personagem “cart” e a arte da maçã como o personagem apple.
| 78
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 47 – Atores da Atividade 21
Dica: no Scratch 2.0 existe o recurso de clonagem. Como nessa atividade serão necessárias muitas maçãs, você poderá criar várias cópias do sprite maçã usando a opção “criar clone”.
Figura 48 – Sugestão da programação para o carrinho
Programação de computadores na educação: um passo a passo utilizando o Scratch
Figura 49 – Sugestão de programação para maçã
Atividade 22
Furar balão: – crie dois sprites: – furador,
;
– balão,
;
79 |
| 80
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
– faça o sprite furador se mover por toda a tela (em sentido horizontal e vertical) até que seja dado um comando de parada; – a posição inicial do sprite furador é na parte inferior da tela; – crie cinco clones do sprite balão – que ficarão posicionados na parte superior da tela, um ao lado do outro. Dica: o conceito de mais blocos poderá ser usado nessa ativi dade.
– quando o furador tocar o balão, esse deverá trocar de traje e desaparecer; – escrever uma mensagem na tela quando todos os balões estiverem furados; – utilize o cronômetro e estipule o tempo máximo para furar todos os balões. Figura 50 – Sugestão de programação para o furador
Programação de computadores na educação: um passo a passo utilizando o Scratch
Figura 51 – Sugestão de programação para os balões
81 |
| 82
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 23
Fogos de artifício: – criar uma animação com o objetivo de demonstrar a explosão de fogos de artifício no céu. Os fogos de artifício irão explodir em instantes aleatórios, gerando centelhas que cairão como se estivessem sob a ação da gravidade e desaparecerão lentamente com o tempo; – crie ou insira um pano de fundo noite, um sprite cidade e um sprite rojão com onze fantasias (quatro rojões em cores diferentes e sete fagulhas diferentes), conforme modelo da Figura 52. Figura 52 – Modelos de sprites
cidade
rojão
fagulha
Fonte: Scratch 2.0 e .
– na programação do palco, crie um efeito de brilho que dê a impressão de clarão no céu a cada vez que um rojão estourar no ar. Conforme ilustra a Figura 53.
Programação de computadores na educação: um passo a passo utilizando o Scratch
83 |
Figura 53 – Sugestão de programação para o efeito brilho
– Agora, programe o rojão: a) crie clones do rojão; b) ao criar o clone, escolha de forma aleatória uma das quatro primeiras fantasias; c) faça o clone se movimentar e se posicionar em um x e y aleatório; d) escolha uma das sete fantasias que representam a fagulha e mude o traje. Dica: antes de mostrar o código, verique se a ordem dos trajes desse personagem são os quatro primeiros trajes de fagulhas e se os demais estão com os trajes dos rojões, de outro modo, o funcionamento do código cará errado.
| 84
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 54 – Sugestão de programação para o rojão
Atividade 24 Type:
– importe da biblioteca um sprite letra; – importe (para esse sprite) fantasias de todas as letras do alfabeto, todos os algarismos e alguns símbolos de pontuação; – em seguida, programe o sprite obedecendo ao que se segue: a) posicione o sprite no canto superior esquerdo da tela; b) pergunte uma palavra ou um número; c) carimbe na tela todas as letras ou números que foram digitados;
Programação de computadores na educação: um passo a passo utilizando o Scratch
85 |
d) o processo de perguntar e carimbar deverá ser repetido sempre até que um comando seja dado para parar; e) as palavras ou números não podem se sobrepor. Dica: crie um bloco para carimbar as palavras ou números na tela.
Figura 55 – Sugestão de programação para a Atividade 24
Atividade 25
Música: – insira o objeto cat2; – faça esse sprite dançar, alternando a direção entre 90 e -90 ; °
°
| 86
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
– faça tocar o tambor (60 por 0.2 batidas) e logo outras duas notas em sequência (55 por 0.1 batida e 60 por 0.1 batida). Figura 56 – Sugestão de programação para a Atividade 25
Atividade 26
Notas musicais: – essa tarefa consiste em tocar as notas da escala natural completa de Dó, subindo a pauta em ordem crescente e voltando em ordem decrescente: dó-ré-mi-fá-sol-lá-si-dó-si-lá-sol-fá-mi-ré-dó.
a) cada nota é representada por uma bola colorida que, quando tocada, tem a cor alterada; b) a pauta é formada por cinco linhas paralelas e equidistantes, apresentando quatro espaços emtre elas, onde são escritas as notas musicais (vamos considerar a ordenação em clave de sol);
Programação de computadores na educação: um passo a passo utilizando o Scratch
87 |
Dica: existe uma notação internacional que dene uma letra para cada nota, assim: C = dó, D = r, E = mi, F = fá, G = sol, A = lá e B = si.
– utilize as ferramentas de som do Scratch nesta programação, e use imagens como a da Figura 57. Figura 57 – Imagem de notas musicais na escala Dó
Fonte: .
– construa uma pauta como mostrado na Figura 58. Figura 58 – Pauta musical
Fonte: .
Dica: o que vai acontecer, na verdade, que você implementará a imagem da pauta da Figura 57 emitindo os sons correspondentes às notas musicais.
| 88
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 59 – Sugestão de programação para a pauta
Programação de computadores na educação: um passo a passo utilizando o Scratch
89 |
Figura 60 – Sugestão de programação para cada bolinha
Desao: refaça a atividade usando clones.
Atividades extras Atividade 1
– Exclua o sprite Gatinho; – crie um sprite retangular usando o editor de pintura ;
– salve a atividade em um arquivo. Atividade 2 – – – – –
Crie um arquivo novo (vai aparecer o sprite Gatinho); exclua o sprite gatinho; insira um objeto do arquivo ; insira um segundo objeto do arquivo ; clique sobre um dos objetos e insira um som usando ;
– salve a atividade em um arquivo. Atividade 3
– – – –
Crie um novo arquivo; exclua o sprite Gatinho; insira um palco, à sua escolha, da pasta Natureza; escolha um sprite que possibilite a mudança de fantasia e coloque-o no palco; – faça a mudança da fantasia do sprite escolhido.
| 90
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 4
– Crie um arquivo novo; – salve imagens da internet em um arquivo do computador; – importe a imagem salva no arquivo do computador usando ; – utilizando o botão “crescer objeto e encolher objeto” (dois últimos botões de ), aumente e diminua o tamanho da figura; – inclua um palco de acordo com a figura escolhida; – finalize a atividade deixando o palco e as figuras esteticamente apresentáveis. Atividade 5
– Insira um sprite Rato; – quando clicado, o sprite solicita ao usuário uma palavra qualquer; – em seguida, o sprite deverá mostrar a palavra fornecida. Atividade 6
– Insira um sprite qualquer; – crie uma variável chamada Valor; – quando a bandeira verde for clicada, o sprite pedirá ao usuário que digite um número; – esse número é guardado na variável Valor e deverá ser mostrado a partir dessa variável.
Programação de computadores na educação: um passo a passo utilizando o Scratch
91 |
Atividade 7
– Insira um sprite qualquer; – o sprite deve ter o seu tamanho alterado à proporção de 10 e de -10; – quando a tecla A é clicada, o sprite diminui de tamanho; quando a tecla L é clicada, ele aumenta. Atividade 8
– Insira um sprite qualquer; – quando o sprite é clicado, ele solicita ao usuário que digite um número; – em seguida, o sprite informa o cálculo da raiz quadrada desse número. Atividade 9
– Escolha duas imagens na internet, uma que represente uma lâmpada acesa e outra uma lâmpada apagada; – faça o upload das imagens dentro da aba Fantasias;
– escolha dois palcos que representem a noite e o dia; – quando o objeto lâmpada for clicado, o cenário (palco) deverá mudar; – para apresentar o cenário noite, a lâmpada deve ser apagada. Para apresentar o dia, a lâmpada deve ser acesa.
| 92
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 10
– Insira um objeto qualquer no palco; – esse objeto, quando clicado, solicita a digitação de uma palavra qualquer; – logo, o mesmo objeto diz o tamanho da palavra digitada pelo usuário. Atividade 11
– Crie duas variáveis: A e B; – insira o sprite Frog (sapo); – quando o sprite é clicado, o usuário deverá informar dois valores em sequência; – um desses valores será atribuído à variável A, o outro à variável B; – logo, o sprite deve apresentar o resultado da soma das variáveis. Atividade 12
– Insira quatro objetos: gatinho, chegada, saída/partida e corredor (o trajeto é desenhado em diagonal); – o gatinho deve iniciar o programa sempre perto do objeto saída; – o gatinho será movimentado pelo usuário com as teclas direita, esquerda, para cima e para baixo do teclado; – controle o gatinho para que ele não exceda os limites do caminho a ser percorrido, ou seja, quando o objeto encostar-se ao corredor ele deve voltar um passo; – o objeto não poderá mover-se quando duas teclas são pressionadas simultaneamente;
Programação de computadores na educação: um passo a passo utilizando o Scratch
93 |
– quando o objeto encostar-se em chegada, o gato deve dizer: “Parabéns, você conseguiu!”; – ao alcançar a chegada, o sprite volta ao ponto de partida. Atividade 13
– Crie ou insira um botão; – crie duas variáveis que recebem os seguintes nomes: Valor 1 e Valor 2; – programe o seguinte: quando o botão é clicado, ele sorteia um número aleatório e insere esses valores nas variáveis; – a animação deve perguntar a resposta da multiplicação entre os dois valores sorteados; – se a resposta estiver correta, mostre a mensagem “resposta certa”. Do contrário, mostre “resposta errada”. Utilize as duas variáveis criadas para manipular esse cálculo e indicar a situação da resposta – se está correta ou não. Atividade 14 – Peça ao usuário que digite dois números em sequência;
– crie duas variáveis A e B; – insira os números informados pelo usuário em cada variável; – faça o sprite dizer a soma das variáveis na tela; – então, mude o programa para fazer outras operações (multiplicar, dividir e subtrair).
| 94
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Atividade 15
– Insira um sprite Rato; – quando clicado, ele solicita que o usuário digite uma palavra qualquer; – em seguida, ele a mostra. Atividade 16
– Insira o sprite Lagosta; – quando clicado, ele solicita a digitação de um número;
– em seguida, ele mostra o cálculo da raiz quadrada desse número. Atividade 17
– Crie uma animação que alterne a apresentação do cenário quando o objeto lâmpada é clicado; – o objeto lâmpada deve ter duas formas de apresentação: acesa e apagada; – para apresentar o cenário noite, a lâmpada deve estar apagada, para apresentar dia, a lâmpada deve estar acesa; – o controle da apresentação do cenário deve estar sincronizado com o objeto lâmpada. Atividade 18
– Crie duas variáveis, A e B; – anime o sprite Lagosta. – quando ele é clicado, solicita dois valores em sequência: um para A e outro para B;
– logo, mostra o resultado da soma dos dois valores digitados.
95 |
Programação de computadores na educação: um passo a passo utilizando o Scratch
Atividade 19
– Insira um objeto cat3; – faça esse sprite dançar, alternando a direção entre 90 e -90 , ao toque de um tambor (60 por 0.2 batidas);
°
°
– em seguida, dê duas notas em sequência (55 por 0.1 batidas e 60 por 0.1 batidas). Atividade 20
– Crie três botões: troca traje, carimba, limpar; – o botão troca traje permite a troca de traje de um objeto desenhado. Esse objeto tem três trajes diferentes: um quadrado perfeito e dois retângulos. A utilização dos três permite criar, no palco, um novo quadrado perfeito; – por meio do botão carimba, carimbe no palco o traje desejado. – o botão limpar permite que você apague o desenho criado e reutilize o palco. – a tecla A serve para você girar o objeto 90 para a direita, e a tecla S para girar o objeto 90 para a esquerda. As setas do teclado servem para que você posicione o objeto no palco. °
°
Atividade 21
– Peça ao usuário que digite um número de entrada; – crie uma variável “var” e inicialize seu valor em 1; – repita os procedimentos a seguir “n” vezes, em que n é o número armazenado na variável “resposta”, fornecida pelo usuário; – use o Se – então (Senão) para verificar se o valor armazenado em “var” é maior do que cinco, se for, faça o gatinho dizer “Miau” por 2 segundos e andar “var”* cem passos;
| 96
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Dica: adicione o comando que permite ao gatinho voltar quando atinge as bordas do cenário.
– se o valor armazenado em “var” for menor ou igual a cinco, faça o gatinho trocar de traje; – por fim, adicione o valor de “var” em um, e faça o gatinho esperar 2 segundos. Atividade 22
Faça um código que: – peça para o usuário inserir um valor para A e um valor para B; – salve o valor A em uma variável A; – salve o valor B em uma variável B; – mostre na tela a soma de A e B; – mostre na tela a multiplicação de A por B; – mostre na tela a divisão de A por B; – mostre na tela a subtração de A e B. Atividade 23
Faça um código que: – quando clicado em bandeira verde, desenhe um retângulo na tela usando a caneta. Atividade 24
Faça um código que: – crie uma variável chamada Saldo; – mude o valor de Saldo para cem; – crie uma variável chamada Saque; – pergunte ao usuário quanto ele deseja sacar; – mude o valor de Saque para a resposta da pergunta;
– se o valor de Saque for menor do que o de Saldo, diga “Saque aprovado”; – senão, diga “Saldo insuficiente”.
Jogos e animações
9
O que é jogo? Conforme informações do endereço eletrônico : jogo, do latim jocus, pode ser entendido como divertimento. O jogo é uma atividade física ou intelectual que integra um sistema de regras e define um indivíduo (ou um grupo) vencedor e outro perdedor. Os jogos podem ser utilizados com fins educacionais para transmitir o sentido de respeito às regras, como também como mensagem de que em uma disputa, entre adversários, haverá sempre um que perde e outro que ganha.
Sugestões de jogos e animações Quiz – criação de quiz interativo
O quiz interativo pode ser uma oportunidade para os alunos criarem desafios pensados a partir de um conhecimento construído. Para tanto, eles precisam elaborar perguntas e respostas para promover a interação das pessoas que serão os usuários do jogo. Pode ser criado com informações pesquisadas em um projeto ou até mesmo após o estudo de determinados temas. Games literários
Os games literários podem ser utilizados para divulgar uma obra literária, trabalhando com a interpretação e 9
As imagens deste capítulo foram captadas no programa Scratch utilizado na Escola de Hackers.
| 98
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
a criação com base no estudo de uma obra conhecida ou de histórias de autoria dos alunos. Animações
Animação é a criação de histórias animadas com diálogos, efeitos sonoros e de movimento. Jogos de tabuleiro
Programação de jogos com temas e desafios gerados a partir da criatividade do programador. A criação de jogos de tabuleiro utiliza recursos do Scratch que normalmente não são utilizados em uma animação. Envolve o uso de sensores, operadores e, em alguns casos, variáveis. Jogos ou games digitais
Criação de uma diversidade de jogos – com diferentes propostas – dentro das possibilidades de programação do Scratch. Os jogos digitais são muito atraentes para o público infantil e adolescente. É a oportunidade de reproduzir seus games favoritos ou de criar um jogo de sua autoria, saindo do papel de consumidor para o de produtor de games. Assim que os alunos compreendem a utilidade dos diversos comandos, eles iniciam a produção partindo dos mais simples para os mais complexos, à medida que vão entendendo a lógica dos diversos comandos. RPG
RPG é a sigla inglesa de role playing game, que significa jogo de interpretação de personagens. Consiste em um tipo de jogo no qual os jogadores desempenham o papel de um personagem em um cenário fictício. É um jogo diferente dos convencionais, pois não há ganhadores nem perdedores.
Programação de computadores na educação: um passo a passo utilizando o Scratch
99 |
Os RPGs estimulam a imaginação e o raciocínio lógico, desenvolvem a criatividade, o relacionamento interpessoal e a cooperação mútua. Cada jogo, também chamado de sessão ou aventura, terá o enredo definido pelo jogador mediante um determinado sistema, isto é, um conjunto de regras definidas para cada personagem. A decisão de cada um influenciará no destino do jogo.
Passos para a construção de um jogo 1- Definir o tipo de jogo que se deseja programar. 2- Definir as regras ou o regulamento do jogo, tais como: • • • •
número de jogadores; pontuação (utilização de um contador na tela); mudança de fase; movimentação dos objetos (como é feita a movimentação e rotação – uso de teclas, quais teclas, etc.); • interação entre os objetos, objeto e palco, entre outras relações; • definição de continuação de jogo – quando o jogador estiver realizando a ação corretamente – caso contrário, passa a vez para o próximo jogador.
3- Definir quais personagens ou objetos serão utilizados. 4- Definir as fases e os cenários, se for necessário. Atividade 1
Jogo Pong do submarino Este jogo é para apenas um participante, em que o jogador deslocará o submarino para evitar que uma bola atinja o fundo do mar. As ideias desse jogo são baseadas no clássico game Pong.
| 100
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Regras – O jogador desloca o submarino usando o mouse; – o deslocamento do submarino deve evitar que a bola toque o fundo do mar; – quando o submarino tocar a bola, ele estará pontuando – 1 ponto por toque;
– a pontuação máxima é de 20 pontos; – número de vidas – o jogo inicia com 3 vidas; – a cada toque da bola no fundo do mar, perde-se uma vida, se o jogador perder todas as vidas antes de atingir 20 pontos: game over; – quando a bola toca o fundo do mar, reinicia o jogo na posição inicial; – o jogo acaba quando a pontuação atingir 20 pontos.
Definidas as regras, deve-se programar seguindo os passos: 1º Construção dos cenários (palcos) 2º No exemplo, iremos construir cinco cenários diferentes: • o primeiro vai conter o nome do jogo; Figura 61 – Cenário do Jogo
Programação de computadores na educação: um passo a passo utilizando o Scratch
• o segundo, as regras; Figura 62 – Cenário das regras
• o terceiro apresenta o palco do jogo; Figura 63 – Cenário do início do jogo
• o quarto cenário mostra: Game over; Figura 64 – Cenário Game over
101 |
| 102
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
• no quinto, há uma tela contendo a mensagem de encerramento do jogo. Figura 65 – Cenário fim do jogo
3º Escolha dos sprites Para este jogo, foram selecionados um submarino e uma bola vermelha: Figura 66 – Submarino
Figura 67 – Bola vermelha
Programação de computadores na educação: um passo a passo utilizando o Scratch
103 |
4º Programação do submarino A programação consiste na movimentação do submarino com o uso do mouse. Observação: a movimentação pode ser realizada de outras maneiras. Por exemplo, usar as setas para cima, para baixo, para direita e para esquerda do teclado.
Figura 68 – Programação do submarino
Na programação, usamos a posição x do mouse para movimentação horizontal e a posição y para a vertical. Inserimos a coordenada y máxima que o submarino irá atingir (y < -46) e também “se tocar na borda, volte”. Observação: a programação pode ser aperfeiçoada.
5º Programação da bola vermelha A movimentação da bola acontece após a mensagem, que neste caso é: “Já”. Usando a condicional “se - tocando em submarino”, a bola apontará para uma direção (que é modificada a cada toque), se moverá e girará em um ângulo aleatório. No exemplo, entre -20 e 20 . Há também as condicionais “se tocar em borda, volte” e “mover-se”. °
°
| 104
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 69 – Programação da bola
6º Programação dos cenários Conforme o desenvolvimento do jogo, há a troca de cenários. Figura 70 – Programação dos cenários do jogo
Programação de computadores na educação: um passo a passo utilizando o Scratch
105 |
7º Pontuação Na programação da bola, foi acrescentada a variável “Pontos”, para marcar a pontuação no jogo. Figura 71 – Programação dos cenários do jogo
8º Programação de vidas A programação de vidas é vinculada à bolinha e no ao, inserindo-se uma variável denominada “vida”. Figura 72 – No palco
| 106
Neuza Terezinha Oro, Ariane Mileidi Pazinato, Adriano Canabarro Teixeira
Figura 73 – Na bolinha
Na programação da bolinha, também foi inserida a condição: se a cor da bolinha tocar na cor do fundo do mar, anunciará o fim do jogo, Game over, e o jogador perderá uma vida. O número máximo de vidas é igual a três. Quando o número máximo de vidas for atingido, sem atingir a pontuação máxima, troca-se de cenário e aparece a mensagem Game over. 9º Fim de jogo O fim do jogo ocorre em duas situações. Quando o jogador: 1º Perdeu as três vidas e não atingiu a pontuação máxima: Game over; 2º Atingiu a pontuação máxima: Fim do jogo – Vencedor. Observação: a programação do jogo pode ser melhorada. Sugerimos inserir fases, temporizador, mudança na velocidade da bolinha, etc.
Figura 74 – Programação do término do jogo
10º Programação na bolinha com mudança de velocidade
A mudança de velocidade da bolinha foi inserida em “repita”, na programação da bolinha. Figura 75 – Programação da mudança de velocidade
Atividade 2
Escolher entre games digitais, um jogo de tabuleiro ou RPG para construir o seu projeto. Sugestão: essa atividade pode ser realizada em duplas.
Sobre os autores Neuza Terezinha Oro – Graduada em Matemática Licencia-
tura Plena pela Universidade de Passo Fundo (1987) e mestra em Matemática pela Universidade Regional do Noroeste do Estado do Rio Grande do Sul (1997). Atualmente é professora titular II da Universidade de Passo Fundo. Tem experiência na área de Matemática, com ênfase em Modelagem matemática, atuando principalmente nos seguintes temas: modelagem matemática, software, planificação de superfícies e informática educativa. Ariane Mileidi Pazinato – Graduada em Matemática pela
Universidade de Passo Fundo (2010), com especialização em Gestão Escolar pela Universidade Regional de Blumenau (2011). Mestra em Educação pela Universidade de Passo Fundo (2015). Atualmente é professora da Faculdade Meridional e professora titular do Centro de Ensino Médio Integrado da Universidade de Passo Fundo. Tem experiência na área de Matemática, com ênfase em Matemática, atuando principalmente nos seguintes temas: matemática, programação, raciocínio lógico, Scratch, lógica e tecnologia educacional. Participa do grupo de pesquisa em inclusão digital com os projetos Olimpíada de Programação de Computadores e Escola de Hackers Avançada. Participa do Núcleo Docente Estratégico, na Escola de Sistemas de Informação da Faculdade Meridional, é membro do projeto Escola de Hackers Avançada e coordenadora do projeto Imed Teu Futuro.