Você está na página 1de 9

ANLISE DO SCRATCH COMO FERRAMENTA DE AUXLIO AO

ENSINO DE PROGRAMAO DE COMPUTADORES


Pryscilla de Sousa Pereira pryscillasousa@yahoo.com.br
Marcos Medeiros marcosmedeiros31@gmail.com
Jos Wally Mendona Menezes wally@ifce.edu.br
Instituto Federal de Educao, Cincia e Tecnologia do Cear (IFCE)
Endereo: Av. 13 de maio, Benfica, 2081
CEP: 60.050-531 Fortaleza CE
Resumo: A disciplina de Algoritmos e Lgica de Programao tem apresentado um alto
ndice de reprovao dos alunos nos cursos em que est inserida. Os estudos sobre o baixo
rendimento dos alunos nesta disciplina do pistas das dificuldades encontradas por estes na
criao de solues computacionais dos problemas apresentados, por meio de algoritmos
estruturados ou de alguma linguagem de programao. Este artigo tem por objetivo, mostrar
uma ferramenta para auxiliar na didtica dessa disciplina tornando-a mais atrativa, intuitiva
e de fcil adaptao. Essa ferramenta um ambiente de programao, conhecido como
Scratch, que possui toda a estrutura bsica e necessria de controle de fluxo para o
aprendizado dessa disciplina.
Palavras-chave: Algoritmo, Scratch, Linguagem de Programao, Ensino.

1.

INTRODUO

Um dos maiores problemas das instituies de ensino superior brasileiras o alto ndice
de evaso. Os cursos na rea de Cincias, Matemtica e Computao tem uma taxa em torno
dos 28% de evaso. Esse valor considerado alto, j que a mdia nacional de 23%, segundo
dados divulgados pelo INEP em 2005 (BRASIL, 2012). Nota-se que as disciplinas
relacionadas a algoritmos ou linguagem de programao so umas das razes pela qual h
evaso e reprovao nas primeiras fases dos cursos de informtica (CABRAL, 2007).
O objetivo da disciplina citada fazer o aluno compreender a forma de raciocnio do
computador e dominar as tcnicas para solucionar problemas propostos. Estas solues
podem ser um programa de computador ou s um pseudocdigo o Algoritmo. Um algoritmo
um conjunto finito de comandos que resolvero um problema proposto (FARRER, 1989).
A dificuldade de adaptao dos alunos em desenvolver raciocnio lgico quando esto
acostumados a decorar o contedo, e a falta de motivao do aluno gerada pelo despreparo,
podem ser citadas como motivos para a desmotivao, reprovao ou evaso do aluno (GOIS
& PINHO, 2007). A ausncia de uma base lgico-matemtica implica no aluno chegar
despreparado na universidade, tornando o aprendizado em programao bastante complexo,
chegando a ser desmotivador (DIJKSTRA, 1989). Alm disso, em sua grande maioria, os
cursos superiores na rea de engenharia, segundo a prpria ABENGE Associao Brasileira
de Ensino de Engenharia, so baseados em conhecimento, com enfoque no contedo e

centrado no professor (ABENGE, 1991). Faz-se necessria, ento, uma mudana nos
mtodos de ensino e aprendizagem que permita desenvolver as competncias necessrias de
um bom profissional.
Portanto, apresenta-se como objetivo desse artigo mostrar que o Scratch pode ser usado
no incio da disciplina de Algoritmos e Lgica de Programao. Resumidamente, essa
ferramenta no possui regras de implementao, em outras palavras, ela voltada apenas
para a lgica do programa. Dessa forma, o aluno pode desenvolver o raciocnio matemtico
antes de se deparar com a sintaxe da linguagem que o professor pretende ensinar.
2.

FUNDAMENTAO TERICA

O aluno que est no ensino de informtica tem muitas dificuldades durante a


aprendizagem. Em comparao com outros cursos, podemos observar: um aluno de
engenharia civil, quando se depara com o primeiro projeto a construir, a exemplo de uma
casa, tem que formar seus conceitos e significados sobre tcnicas de planejamento, clculos,
desenhos e construo, mas j passou pela experincia de ter entrado, morado e usufrudo de
uma residncia e possui os principais conceitos sobre o objeto real: sabe o que so portas,
janelas, pias, lmpadas e paredes. J um aluno de medicina, ao entrar para a faculdade, muito
provavelmente, j teve a experincia de ter entrado em consultrios mdicos para se consultar
e sabe que preciso haver uma consulta, e que dessa consulta prov um diagnstico, que pode
requisitar um ou mais exames, que podem resultar no uso de medicamentos e em consultas de
retorno. No entanto, um aluno de Engenharia da rea de Tecnologia da Informao, ao entrar
para o curso tcnico ou superior, contudo, no tem noo do que seja um sistema, uma
linguagem de programao, ou um banco de dados, a no ser que j trabalhe na rea de
informtica ou tenha feito algum tipo de curso de extenso.
A disciplina de Lgica de Programao ou Algoritmos uma das mais importantes para
os alunos que ingressam em diversos tipos e nveis de ensino, tais como os cursos superiores
regulares, bacharelados, tecnlogos, cursos tcnicos, e de extenso. Estes cursos, geralmente,
so da rea de Informtica. Entretanto, o mesmo contedo, ou parte dele, ministrado em
cursos da rea de Engenharia, Cincias Exatas e outras. Essa importncia dar-se, pois os
conhecimentos adquiridos nela vo influenciar diretamente no desempenho das demais
disciplinas correlatas durante o restante do curso (RAABE et al, 2007).
O objetivo geral da disciplina permitir que o aluno desenvolva o raciocnio lgico
aplicado a soluo de problemas em nvel computacional, alm de introduzir os conceitos
bsicos de desenvolvimento de algoritmos, de forma a propiciar aos alunos uma viso crtica
e sistemtica sobre resoluo de problemas e prepar-los para a atividade de programao.
Os cursos de lgica de programao iniciam com uma mdia de 50 alunos e em poucos
meses, constata-se que a taxa de reprovao, ou desistncia, chega a 60% (ROCHA, 1993).
Alm disso, foi constatado que nessa disciplina o nvel de aprendizagem muito baixo,
conforme diversos pesquisadores denunciam (SILVA et al, 2009) (SOUTO & DUDUCHI,
2011). H vrios fatores que podem levar a essa baixa aprendizagem, como uma base
matemtica precria, limitaes de ensino do professor, material de apoio precrio, entre
outros.
Tornar o processo ensino-aprendizagem mais interessante um desafio enfrentado pelo
professor em qualquer nvel de ensino. necessrio que os professores que trabalham com as
disciplinas de algoritmos busquem solues para minimizar o nmero de reprovaes ou
abandonos. Uma das formas de sanar esse problema usar ferramentas ou ambientes

facilitadores que provoquem um aprendizado substancial das atividades didticas.


3.

SOFTWARES RELACIONADOS

A utilizao de novas ferramentas, geralmente, tende a fazer com que as aulas tornem-se
mais atrativas e participativas. Hoje h diversas ferramentas disponveis, que visam facilitar o
ensino da disciplina de algoritmos. Algumas delas so listadas abaixo.
WebPortugol : criado pela Universidade do Vale do Itaja, essa ferramenta, como o
prprio nome sugere, permite construir online programa em portugus estruturado ou
Portugol.
Visualg: criado pela "Apoio Informtica Ltda - Consultoria e Desenvolvimento de
Sistemas", o Visualg um "programa para edio e interpretao de algoritmos"
em portugus estruturado ou portugol.
ASA - Ambiente de Simulao e Animao de Algoritmos: desenvolvido pela equipe
do SENAC. O ASA tambm conhecido como Construtor, um software para criar
algoritmos usando fluxogramas (MAYERHOFER,2012).
LOGO: desenvolvida por pesquisadores do MIT-USA. uma linguagem considerada
bastante sofisticada, por possuir caractersticas pertencentes a 3 paradigmas
computacionais distintos: procedural, orientado a objetos e funcional (GREGOLIN,
2012).
Alice: programa desenvolvido pela Universidade Carnegie Mellon nos Estados
Unidos. Alice um ambiente de programao tridimensional de fcil utilizao no
qual podem ser criadas animaes e interaes entre personagens e objetos lembrando
muito jogos de vdeo game (ALICE, 2012).
SCRATCH: essa linguagem resulta de uma parceria entre a Portugal Telecom e a
universidade MIT de Boston. Scratch permite a criao de histrias, animaes, jogos
e outras produes. Tudo pode ser feito a partir de comandos prontos que devem ser
agrupados (SCRATCH, 2012).
Mesmo com diversos modelos, no h um software ideal, por seu uso depende da
metodologia do professor e do nvel de conhecimento e velocidade de aprendizado da turma.
Nesse artigo iremos dar nfase no uso do Scratch, tendo em vista que ele um software
gratuito, de fcil compreenso, que faz uso de um ambiente divertido, intuitivo e de fcil
operao.
Como j foi dito anteriormente, o objetivo desse artigo mostrar o uso do Scratch como
uma ferramenta para auxiliar no inicio da disciplina de lgica de programao. Os alunos
ingressantes nos cursos, de exatas, nasceram na era da informao, tem um contato estreito
com diversas mdias, e seu raciocnio no linear. Alm de, em sua grande maioria, no
terem o hbito de ler, nem de dedicar algumas horas do seu dia aos estudos e fazem parte da
gerao dos jogos. Assim o uso do Scratch seria ideal, j que o mesmo no possui nenhuma
sintaxe, deixando o aluno focado apenas no aprendizado da lgica do programa, aps o
raciocnio lgico bem absorvido, o professor poder iniciar o aprendizado de alguma
linguagem.

4.

SCRATCH VISO GERAL

O Scratch uma nova linguagem grfica de programao criada no Media Lab do


Instituto de Tecnologia de Massachusetts, inspirada nas linguagens Logo e Squeak, mas que
pretende ser mais simples, fcil de utilizar e mais intuitiva (SCRATCH, 2012). Ela foi
partilhada com o mundo em 15 de maio de 2007. um software gratuito, possui uma IDE
onde no preciso digitar funes, endereos, etc. Seu objetivo primrio facilitar a
introduo de conceitos de matemtica e de computao, enquanto tambm induzindo o
pensamento criativo, o raciocnio sistemtico e o trabalho colaborativo (SCRATCH, 2012)
O termo Scratch provm da tcnica de scratching utilizada pelos Disco-Jockeys do HipHop que giram os discos de vinil com as suas mos para frente e para trs de modo a fazer
misturas musicais de forma criativa e inesperada. Com o Scratch possvel fazer algo de
semelhante, misturando diferentes tipos de trechos de mdia (grficos, fotos, msicas, sons) de
formas criativas. Veja a tela inicial daferramenta na Figura 1.

Figura 1 Tela inicial do Scratch


A programao do Scratch feita atravs de blocos de comandos que so encaixados uns
aos outros, formando a sequncia de comandos que se deseja. Os blocos so concebidos para
se encaixar apenas de uma nica forma, fazendo sentido sintaticamente, no ocorrendo, assim,
erros de sintaxe. uma maneira de trazer conceitos de informtica de alto-nvel para seus
usurios, pois os comandos presentes nos blocos so praticamente os mesmos.
Esse software permite a construo de programas que controlam e misturam grficos,
animao, texto, msica e som. O mesmo pode interagir com objetos exteriores de vrios
tipos. A pgina de internet do Scratch fornece inspirao e audincia, l se podem
experimentar os projetos de outros, reutilizar e adaptar as suas imagens e scripts.
muito simples se criar jogos, animaes, histrias interativas, arte e outros, o que
aumenta a interatividade entre o aluno e a linguagem. Apesar de no ser muito robusto, esse

software, possui estruturas bsicas, porm importantes, para um programador como estruturas
de controle de fluxo.
O software dividido em 3 blocos, como visto na Figura 1. O primeiro bloco contm os
comandos que sero adicionados ao seu programa. Comandos como: de controle,
movimentos, operaes, aparncia, sons e outros. No segundo bloco onde ficar o seu
programa, esta tela conter os blocos de comandos, os trajes de seus sprites (os desenhos que
aparecem na tela) e os sons que acompanham os sprites. E o terceiro bloco contm a tela de
animao, onde o programa executado.
5.

APLICAO

Como visada utilizao do Scratch como uma alternativa para o ensino de algoritmos
e linguagem de programao, ento ser mostrado um exemplo tpico dessa disciplina: a
mdia aritmtica. Logo abaixo, ser feita a descrio do problema.
O problema consiste de fazer um programa que calcule a mdia final dos alunos, sendo
que os mesmos fizeram 3 provas. Ao apresentar a mdia final, o programa dever mostrar a
situao do aluno:
Aprovado: se mdia maior ou igual a 7,0.
Recuperao: se maior ou igual a 5,0 e menor que 7,0.
Reprovado: se menor que 5,0.
Antes de iniciar, necessrio identificar nesse problema quem so os dados de entrada,
os dados de sada e o que ser processado. Ento, para montar o algoritmo proposto, trs
perguntas so feitas. A primeira corresponde as notas de cada aluno, a segunda refere-se ao
processo de clculo da mdia e a ltima define a apresentao da situao do aluno.
a) Quais so os dados de entrada?
R: Os dados de entrada so

, N2 e N3.

b) Qual ser o processamento a ser utilizado?


R: O procedimento ser somar todos os dados de entrada e dividi-los por 3 (trs).

Comparao: M

M
M

eM

, aprovado
, recuperao

, reprovado

c) Quais sero os dados de sada?


R: O dado de sada ser a mdia final e a situao do aluno
Se mdia >= 7, mostre aprovado
Se mdia <7 e media >=5, mostre recuperao
Se mdia <5, mostre reprovado
Depois de todas essas etapas finalizadas pode-se iniciar a construo e execuo do

programa em Scratch. Na Figura 2, mostrada a inicializao do programa: A caixa laranja


onde todas as variveis sero declaradas.

Figura 2 - Inicializao do programa.


Na prxima etapa, feita a entrada dos dados. nesse momento em que as notas sero
digitas para em seguida serem processadas. Veja Figura 3.

Figura 3 - Entrada de dados


Aps, a entrada de dados possvel calcular a mdia e fazer o tratamento para saber se o
aluno passou, ficou de recuperao ou se foi reprovado. Veja Figura 4.

Figura 4 - Processamento de dados.


Na Figura 5 mostrado o programa por completo, com todas as suas etapas. Logo em
seguida, na Figura 6, demonstrada a execuo do programa.

Figura 5 Estrutura do programa mdia

Figura 6 Execuo do programa mdia


6.

CONSIDERAES FINAIS

Ao final desse artigo, tendo apresentado um modo de utilizao da ferramenta citada,


pode-se perceber que o Scratch uma ferramenta que pode auxiliar os alunos da disciplina de
Linguagem de Programao e Algoritmos que possuem dificuldade em organizar
pensamentos, em construir conceitos matemticos, ou problemas com informtica. Com o
Scratch a programao torna-se mais divertida e simples, pois ela efetuada atravs da
criao de sequncias de comandos simples, que correspondem a blocos de vrias categorias,
encaixados e encadeados de forma a produzirem as aes desejadas. O aluno que usar esse
software ao incio da referida disciplina, ter melhor compreenso dos conceitos de
programao como, estruturas de deciso e repetio, variveis, operadores, etc. Este um
programa inovador, que permite exercitar a criatividade e o raciocnio cientifico lgico e
matemtico, tornando o aluno apto a solucionar qualquer problema computacional que lhe
seja apresentado.

REFERNCIAS
ABENGE - Associao Brasileira de Ensino de Engenharia. Perfil do Engenheiro do Sculo
XXI. Braslia, 1998.
ALICE. Disponvel em: <http://www.alice.org/>. Acesso em: 20 maio 2012.
BRASIL. Ministrio da Educao. Instituto Nacional de Estudos e Pesquisas Educacionais.
Sinopses do ensino superior. Censos do ensino superior. Comunicaes pessoais.
Disponvel em: www.inep.gov.br. Acessado em: 12 jan. 2012.
CABRAL, M. I. C. et al. Perfil dos cursos de computao e informtica no Brasil, XXVII
Congresso da SBC - XV WEI, Rio de Janeiro, 2007.
DIJKSTRA, E. W. On the Cruelty of Really
Communication of ACM, 1398-1404, 1989.

Teaching

Computing

Science.

FARRER, H. Algoritmos Estruturados, Editora LTC, p. 23, Rio de Janeiro, 1989.


GOIS, A.; PINHO, A. Brasil reprovado, de novo, em matemtica e leitura. Disponvel
em: <http://www1.folha.uol.com.br/folha/educacao/ult305u351481.shtml>. Acesso em: 13
jan. 2012.
GREGOLIN, V. R. Linguagem LOGO: Explorando conceitos matemticos. Disponvel
em:<http://tecnologiasnaeducacao.pro.br/revista/a1n1/art8.pdf>. Acesso em: 20 maio 2012.
MAYERHOFER, M. A. Um paradigma para o Desenvolvimento de Software
Educacional. Disponvel em: <http://www.senac.br/informativo/bts/222/boltec222d.htm>.
Acesso em: 20 maio 2012.
RAABE, A. L. A.; SANTIAGO, R.; DAZZI, R. L. S. Adquirindo experincia
construo de ferramentas de apoio a aprendizagem de algoritmos. Workshop
Ambientes de Apoio a Aprendizagem de Algoritmos e Programao. Simpsio Brasileiro
Informtica na Educao, 2007. Anais dos XVIII Simpsio Brasileiro de Informtica
Educao, 2007.

na
de
de
na

ROCHA, H. V. Representaes Computacionais Auxiliares de Conceitos de


Programao. In: Computadores e Conhecimento: Repensando a Educao. Livro
organizado por Valente, J. A. Editora Unicamp, 1993.
SCRATCH. ABOUT
Scratch (Scratch Documentation Site).
<http://info.scratch.mit.edu/ About_Scratch>. Acesso em: 20 maio 2012.

Disponvel

em:

SILVA, I. F. A.; SILVA, I. M. M.; SANTOS, M. S. Anlise de problemas e solues


aplicadas ao ensino de disciplinas introdutrias de programao. Universidade Federal
Rural de Pernambuco, Recife PE. 03 pp. Disponvel em
<http://www.eventosufrpe.com.br/jepex2009/cd/resumos/R1479-1.pdf>. Acesso em: 12 jan.

2012.
SOUTO, A. V. M.; DUDUCHI, M. Um processo de avaliao baseado em ferramenta
computadorizada para o apoio ao ensino de programao de computadores. Disponvel
em <http://bibliotecadigital.sbc.org.br/download.php?paper=1363>. Acesso em: 12 jan. 2012.

ANALYSIS OF SCRATCH AS A TEACHING AID TOOL FOR


COMPUTER PROGRAMMING
Abstract: The discipline of Algorithms and Logic Programming has shown a high rate of
failing students in the courses in which it operates. Studies about low efficiency of students in
this course show the difficulties encountered on the creation of computational solutions of the
problems presented by using algorithms or any structured programming language. The
objective of this article is to present a tool to assist in teaching this discipline by making it
more attractive, intuitive and easy to adapt. This tool is a programming environment, called
Scratch, which has all the basic structure and flow control required for learning this
discipline.
Keywords: Algorithm, Scratch, programming language, education.