experiˆencias com coding dojo nos cursos de sistemas de...

64
MINIST ´ ERIO DA EDUCAC ¸ ˜ AO UNIVERSIDADE FEDERAL RURAL DA AMAZ ˆ ONIA Dener Roberto de Souza Ripardo Experiˆ encias com Coding Dojo nos Cursos de Sistemas de Informa¸ ao e Licenciatura em Computa¸ ao da UFRA Bel´ em-PA 2018

Upload: others

Post on 15-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

MINISTERIO DA EDUCACAOUNIVERSIDADE FEDERAL RURAL DA AMAZONIA

Dener Roberto de Souza Ripardo

Experiencias com Coding Dojo nos Cursos deSistemas de Informacao e Licenciatura em

Computacao da UFRA

Belem-PA2018

Page 2: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Dener Roberto de Souza Ripardo

Experiencias com Coding Dojo nos Cursos de Sistemasde Informacao e Licenciatura em Computacao da UFRA

Trabalho de Conclusao de Curso apresen-tado ao Instituto Ciberespacial (ICIBE) daUniversidade Federal Rural da Amazonia(UFRA), como exigencia parcial para ob-tencao do tıtulo de Licenciado em Com-putacao. Elaborado sob orientacao do Dr.Fabio de Lima Bezerra.

Universidade Federal Rural da Amazonia

Instituto Ciberespacial

Curso de Licenciatura em Computacao

Orientador: Dr. Fabio de Lima Bezerra

Belem-PA2018

Page 3: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes (CRB-2/1231)

Ripardo, Dener Roberto de Souza

Experiências com Coding Dojo nos cursos de sistemas de informação

e licenciatura em computação da UFRA – Belém, 2018.

45 f.

Trabalho de Conclusão de Curso (Graduação em Licenciatura em

Computação) – Universidade Federal Rural da Amazônia, 2018.

Orientador: Fábio de Lima Bezerra.

1. Coding Dojo 2. Programação de computadores 3. Aprendizagem

colaborativa I. Bezerra, Fábio de Lima (orient.) II. Título.

CDD – 371.337

Page 4: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Dener Roberto de Souza Ripardo

Experiencias com Coding Dojo nos Cursos de Sistemasde Informacao e Licenciatura em Computacao da UFRA

Trabalho de Conclusao de Curso apresen-tado ao Instituto Ciberespacial (ICIBE) daUniversidade Federal Rural da Amazonia(UFRA), como exigencia parcial para ob-tencao do tıtulo de Licenciado em Com-putacao. Elaborado sob orientacao do Dr.Fabio de Lima Bezerra.

Dr. Fabio de Lima BezerraOrientador

Ma. Decıola Fernandes de SousaConvidada 1

Ma. Emilce Nascimento PachecoConvidada 2

Belem-PA2018

Page 5: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Dedico este trabalho aos meus pais pelo incondicional amor, apoio eincentivo.

Page 6: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Agradecimentos

Eu, Dener Roberto de Souza Ripardo:

Primeiramente agradeco a Deus, pelas oportunidades concedidas por Ele, e porter me dado forcas para enfrentar e superar as todas as dificuldades no caminho.

Agradeco aos meus pais, Jose Roberto Pinheiro Ripardo & Marinalva de SouzaRipardo, pela educacao, princıpios e valores transmitidos, ao amor incondicional, alem doapoio e incentivo prestados durante toda minha vida.

Aos companheiros de curso e amigos que conquistei, que comigo vivenciaram edividiram todas as experiencias e aprendizados desde o ingresso na universidade ate oatual momento.

Agradeco a todos os funcionarios da Universidade Federal Rural da Amazonia(UFRA), que contribuıram e contribuem para uma Universidade melhor, educando eformando profissionais de excelencia, para o exercıcio de suas funcoes, em especial aequipe da Divisao de Apoio Pedagogico (DAPE), na qual, por um perıodo de dois anosfiz parte e pude aprender e desenvolver os conhecimentos adquiridos durante o curso. Aosprofessores, aos mestres e doutores da UFRA pelo convıvio e contribuicao, alem de todasas experiencias dentro e fora de sala de aula foram de grande relevancia e estımulo para queeu pudesse obter conhecimentos essenciais para profissional licenciado em computacao.

Ao meu professor e orientador, Prof Dr. Fabio de Lima Bezerra, por sempreapresentar uma postura etica e profissional, alem dos ensinamentos e orientacoes, queforam fundamentais durante todo este processo. E ao meu prezado colega de curso,Waldinei Romano Cavalcante de Sousa, que me prestou grande colaboracao na realizacaodeste trabalho.

Este agradecimento se estende a todos aqueles, que direta ou indiretamente deramincentivo e possibilitaram a conclusao de mais uma etapa em minha vida.

Page 7: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

“Sua luta nao termina quando sentir cansaco,mas sim quando atingir o sucesso tao merecido.”

Page 8: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

ResumoDentre as dificuldades evidenciadas em cursos de computacao no ensino superior, o apren-dizado de uma linguagem de programacao e desenvolvimento das habilidades e com-petencias necessarias ao exercıcio da programacao de computadores, estao entre as maispreocupantes, pois o insucesso nestes aspectos podem traduzir-se em elevados ındicesde repetencia de alunos. Estrategias alternativas de ensino de programacao, mostram-se eficazes em suprimir a problematica apresentada. Diante disto, este trabalho relataa experiencia e os resultados da aplicacao de uma metodologia de carater colaborativo,e voltado para a resolucao de problemas, o Coding Dojo, para alunos ingressantes doscursos de Bacharelado em Sistemas de Informacao e Licenciatura em Computacao, daUniversidade Federal Rural da Amazonia. Para tal, foram realizados oito encontros, quepropiciaram o aprendizados de conceitos da linguagem de programacao Java, o desenvol-vimento conjunto de habilidades, como o pensamento computacional e algoritmo, alemdo constante exercıcio da programacao. Com base nas avaliacoes realizadas pelos partici-pantes, 70% dos alunos mostraram-se satisfeitos com a experiencia. Logo, a metodologiaCoding Dojo se revela como uma possıvel ferramenta no auxilio, aprendizado e incentivoa pratica de programacao de computadores no ensino superior.

Palavras-chaves: Coding Dojo, Programacao de Computadores, Retencao, Aprendiza-gem Colaborativa.

Page 9: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

AbstractAmong the difficulties evidenced in computer science courses in higher education, learninga programming language and developing the skills and competences required to exercisecomputer programming are among the most worrisome, the more students fail in theseaspects higher rates of students may evade and remain stagnant in their academic life. Al-ternative programming teaching strategies are effective in suppressing this problem. Dueto this, this work reports the experience and results of a collaborative and problem solvingmethodology application, the Coding Dojo, for freshmen students in courses InformationSystens Bachelor and Computing at the Universidade Federal Rural da Amazonia. Eightmeetings were accomplished, which allowed the learning of Java programming languageconcepts, the skills development in group, such as computational thinking and algorithm,besides the constant programming exercises. Based on the assessments made by the par-ticipants, 70 % of the students were satisfied with the experience. Then, the Coding Dojomethodology reveals itself as a possible tool in assisting, learning and encouraging thepractice of computer programming in higher education.

Keywords: Coding Dojo, Computer Programming, Retention, Collaborative Learning.

Page 10: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Lista de ilustracoes

Figura 1 – Interface Netbeans IDE 8.0.2 . . . . . . . . . . . . . . . . . . . . . . . 26Figura 2 – Coding Dojo Randori - fonte: Marinho, 2016. . . . . . . . . . . . . . . 29Figura 3 – Coding Dojo Kata - fonte: Marinho, 2016. . . . . . . . . . . . . . . . . 30Figura 4 – Coding Dojo Kake - fonte: Marinho, 2016. . . . . . . . . . . . . . . . . 30Figura 5 – Ficha de auto-avaliacao SAM . . . . . . . . . . . . . . . . . . . . . . . 31Figura 6 – Ficha de avaliacao BRM . . . . . . . . . . . . . . . . . . . . . . . . . . 32Figura 7 – Progressao dos votos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Figura 8 – Formulario de Inscricao . . . . . . . . . . . . . . . . . . . . . . . . . . 49Figura 9 – Folder 01 - Operadores Matematicos, Variaveis e Funcoes . . . . . . . . 51Figura 10 – Folder 02 - Exercıcios Operadores Matematicos, Variaveis e Funcoes . . 53Figura 11 – Folder 03 - Estruturas de Selecao, Operadores de Logicos e de Com-

paracao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Figura 12 – Folder 04 - Exercıcios Estruturas de Selecao . . . . . . . . . . . . . . . 57Figura 13 – Folder 05 - Estruturas de Repeticao . . . . . . . . . . . . . . . . . . . . 59Figura 14 – Folder 06 - Exercıcios Operadores de Repeticao . . . . . . . . . . . . . 61

Page 11: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Lista de tabelas

Tabela 1 – Tecnica de Programacao I . . . . . . . . . . . . . . . . . . . . . . . . . 15Tabela 2 – Programacao Orientada a Objetos . . . . . . . . . . . . . . . . . . . . 15Tabela 3 – Sıntese das respostas objetivas do formulario . . . . . . . . . . . . . . . 33Tabela 4 – Programacao dos Encontros . . . . . . . . . . . . . . . . . . . . . . . . 35Tabela 5 – Resultado das auto-avaliacoes dos participantes . . . . . . . . . . . . . 41

Page 12: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Lista de abreviaturas e siglas

UFRA Universidade Federal Rural da Amazonia

PROEN Pro-Reitora de Ensino

DAPE Divisao de Apoio Pedagogico

LC Licenciatura em Computacao

BSI Bacharelado em Sistemas de Informacao

TEC1 Tecnicas de Programacao I

POO Programacao Orientada a Objetos

SAM Self Assessment Manikin (Manequim de auto-avaliacao)

BRM Bom, Ruim e Melhorar

Page 13: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Sumario

1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.1 Apresentacao do Problema . . . . . . . . . . . . . . . . . . . . . . . . 141.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161.3 Roteiro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2 FUNDAMENTACAO TEORICA . . . . . . . . . . . . . . . . . . . . 182.1 Evasao e Retencao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.2 Aprendizagem Colaborativa . . . . . . . . . . . . . . . . . . . . . . . . 202.3 Coding Dojo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3 MATERIAIS E METODOS . . . . . . . . . . . . . . . . . . . . . . . 233.1 Formulario de inscricao . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2 Apresentacao do Publico alvo . . . . . . . . . . . . . . . . . . . . . . 243.3 Ferramentas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3.1 Linguagem de programacao Java . . . . . . . . . . . . . . . . . . . . . . . 243.3.2 IDE NetBeans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.3.3 Materiais de apoio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.4 Coding Dojo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.4.1 Coding Dojo Randori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.4.2 Coding Dojo Kata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.4.3 Coding Dojo Kake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.5 Avaliacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.5.1 Auto Avaliacao SAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.5.2 Avaliacao dos Instrutores . . . . . . . . . . . . . . . . . . . . . . . . . . . 323.5.3 Avaliacao Geral dos Encontros - Formulario Bom, Ruim e Melhorar . . . . . 32

4 RESULTADOS E DISCUSSOES . . . . . . . . . . . . . . . . . . . . 334.1 Perfil dos participantes . . . . . . . . . . . . . . . . . . . . . . . . . . 334.2 Relato dos Encontros . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.2.1 Primeira Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.2.2 Segunda Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.2.3 Terceira Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.2.4 Quarta Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.2.5 Quinta Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.2.6 Sexta Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.2.7 Setima Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Page 14: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

4.2.8 Oitava Sessao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.3 Avaliacao do Aluno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.3.1 Resultados SAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.3.2 Resultados BRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424.4 Observacoes dos Instrutores . . . . . . . . . . . . . . . . . . . . . . . 434.5 Discussoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5 CONCLUSOES E TRABALHOS FUTUROS . . . . . . . . . . . . . 45

REFERENCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

APENDICES 48

APENDICE A – FORMULARIO DE INSCRICAO . . . . . . . . . . 49

APENDICE B – MATERIAIS DE APOIO . . . . . . . . . . . . . . 51

Page 15: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

13

1 Introducao

A Universidade Federal Rural da Amazonia (UFRA), e amplamente reconhecidapela formacao de profissionais e estudos relacionados as areas de ciencias agrarias, contudo,desde 2009, passou a ofertar dois cursos de cunho tecnologico, o curso de Licenciaturaem Computacao (LC) e o curso de Bacharelado em Sistemas de Informacao (BSI). Assimcomo em outros cursos vinculados as areas da ciencia da omputacao, estes tem em suaprogramacao e estrutura curricular, disciplinas que envolvem o ensino e aprendizado deAlgoritmos e Programacao de computadores.

Para Gomes, Henriques e Mendes (2008), o ensino programacao de computadorestem como intuito, propiciar os alunos desenvolverem as suas capacidades, adquirindo osconhecimentos basicos necessarios para conceber programas capazes de resolver problemasreais simples.

Ng e Bereiter (1991) referem que um aluno ao se deparar com ama aprendizagemde apresenta uma hierarquia de competencias, geralmente inicia pelas de mais baixo nıvelavancando ate as mais exigentes. Os autores concretizam que, no caso da codificacao(uma pequena parte de uma competencia de programacao) implica que os alunos apren-dam a sintaxe basica e gradualmente aprendam a semantica, estrutura e finalmente oestilo. O que sugere que aprender a programar e um processo gradual que exige tempo ematuridade.

Logo, entende-se que a programacao de computadores, demanda dos alunos com-petencias como a autonomia, criatividade, alem de habilidades de interpretacao de pro-blemas, desenvolvimento logico, pensamento computacional e domınio de conceitos ma-tematicos basicos procedentes do ensino medio.

Entretanto, Adan-Coello et al. (2008), destaca que:

“O aprendizado de programacao de computadores e um dos primeirose maiores desafios encontrados pelos estudantes da area de computacaoe informatica. As dificuldades encontradas pelos estudantes refletem-seem elevados ındices de reprovacao nas disciplinas relacionadas com oaprendizado das habilidades de programacao e nas disciplinas que de-pendem diretamente dessas habilidades.”(ADAN-COELLO et al., 2008).

Jenkins (2002) refere varias causas do insucesso generalizado em disciplinas de pro-gramacao, dentre elas, o baixo nıvel de abstracao, a falta de competencias de resolucao deproblemas, a inadequacao dos metodos pedagogicos aos estilos de aprendizagem dos alu-nos, o autor refere-se ainda que as linguagens de programacao possuem sintaxes adequadaspara profissionais mas nao para alunos inexperientes.

Page 16: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 1. Introducao 14

Franz, Silva e Cheiran (2014) por sua vez, enfatizam que devido as estas dificulda-des enfrentadas por estudantes com o aprendizado inicial de programacao, e evidenciadaspor altos percentuais de repetencia e evasao, novas estrategias de ensino e aprendizagemse fazem necessarias para auxiliar o aprendizado e programacao e potencializar nos alunosas habilidades empregadas nesta pratica.

Este trabalho disserta sobre uma experiencia realizada na UFRA, utilizando ummetodo de ensino de programacao de computadores bastante difundido em diversas em-presas e Universidades em todo mundo: Dojos de programacao ou Coding Dojos; essametodologia e baseada na colaboracao entre os participantes para a obtencao e desenvol-vimento de conhecimentos de programacao.

1.1 Apresentacao do ProblemaNas matrizes curriculares dos cursos de BSI e LC, algumas disciplinas iniciais

abordam sobre o ensino e a pratica de da programacao de computadores, tais como: Al-goritmos e Programacao, Programacao Orientada a Objetos, nos curso de LC, e Tecnicasde Programacao I e Tecnicas de Programacao II no curso de BSI. Neste contexto, des-tacamos dois destes componentes curriculares: i) Tecnicas De Programacao I (TEC1) eii) Programacao Orientada a Objetos (POO); por apresentarem elevados ındices de re-tencao, e por considerarmos nos quais os alunos demonstram maior dificuldade. Estasdisciplinas ocorrem em diferentes semestres nestes cursos de graduacao; a disciplina deTEC1, e ofertada no 1o semestre do curso de BSI; ja a disciplina de POO, e aplicada no3o semestre do curso de LC. O breve resumo das ementas dessas disciplinas, demonstramo direcionamento dos conteudos que compreendem conceitos e a pratica de programacaode computadores:

Ementa TEC1:

Algoritmos e Linguagens de Programacao. Conceitos Basicos de Programacao deComputadores. Estruturas de Controle de Selecao. Estruturas de Controle de Repeticao.Modularizacao de Programas.

Ementa POO:

Conceito e estudo do paradigma imperativo procedural e orientado a objetos. ALinguagem Java. Nocoes Basicas sobre Java. Programacao Orientada a objeto em Java.Escopo e visibilidade de variaveis. Metodos e Classes, Heranca e polimorfismo. Trata-mento de excecoes Manipulacao de arquivos. Tecnicas de Desenvolvimento de Programas:Projeto Pratico de Programacao.

Em levantamento realizado junto a Pro-reitoria de Ensino (PROEN) da UFRA,com dados fornecidos pela Divisao de Apoio Pedagogico (DAPE), acerca dos componen-

Page 17: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 1. Introducao 15

tes curriculares TEC1 e POO. Nos quais foram analisados os perıodos letivos de 2015.1,2016.1 e 2017.1, foram levantados os seguintes aspectos: o quantitativo de discentes ma-triculados em cada turma, a quantidade de aprovacoes e reprovacoes, bem como a notamedia apresentada entre os alunos reprovados. A seguinte pesquisa resultou nos dadossintetizados nas Tabela 1 e Tabela 2.

Tabela 1 – Tecnica de Programacao I

Perıodo Numeros deMatrıculas Aprovados Reprovados Medias de

reprovacaoTaxa de

reprovacao2015.1 42 23 19 1,71 45,2%2016.1 41 22 19 2,47 46,4%2017.1 42 13 29 2,15 69%

Tabela 2 – Programacao Orientada a Objetos

Perıodo Numeros deMatrıculas Aprovados Reprovados Medias de

reprovacaoTaxa de

reprovacao2015.1 34 15 19 2,03 55,8%2016,1 37 5 32 1,71 86,4%2017.1 33 13 20 1,0 60,6%

Acerca do componente TEC1, no semestre letivo 2015.1, foram matriculados 42discentes, apos o perıodo de avaliacoes, 23 alunos foram aprovados e 19 reprovados, paraesta turma tem-se o percentual 45,2% de taxa de reprovacao. Neste mesmo perıodo,na disciplina de POO do curso de LC, haviam 34 alunos matriculados, onde 15 foramaprovados e 19 reprovados, estabelecendo um percentual de 55,8% de reprovacoes.

Em 2016.1, TEC1 obteve um total de 41 discentes matriculados, onde houve 22aprovacoes e 19 reprovacoes, resultando em uma taxa de 46,4% de insucesso, enquantoque em POO, dentre os 37 matriculados, apenas 5 obtiveram aprovacao na disciplina, emcontra partida houveram 32 reprovacoes, cujo o ındice abrange 86,4% da turma.

No perıodo de 2017.1, em TEC1, havia 42 alunos matriculados, destes, 13 al-cancaram a media de aprovacao, e 29 nao obtiveram a media, ocasionando uma taxa de69% de reprovacoes, e em POO, 33 graduandos encontravam-se matriculados, 13 atingi-ram a media de aprovacao, por outro lado, 20 discentes foram reprovados, estabelecendoa porcentagem de 60,6% de reprovacoes.

Vale ressaltar que apenas o curso de BSI, possui em sua estrutura curricular o sis-tema de pre-requisitos, ou seja, caso o discente apresente retencao em uma determinadadisciplina, ele ficara impedido de cursar outras disciplinas cuja a base de conhecimentosesta diretamente relacionada com o componente no qual o aluno esta retido. Ja para ocurso de LC nao ha definicao de pre-requisitos para se cursar qualquer disciplina, mesmoque para esta, sejam necessarios a aquisicao de conhecimentos em disciplinas que a ante-cedem. Logo, a reprovacao em um determinado componente curricular, podem resultar

Page 18: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 1. Introducao 16

em varias lacunas de aprendizado no decorrer do curso. Deste modo, consideramos, entreoutros fatores, que tais acontecimentos podem estar relacionados com eventuais episodiosde evasao de alunos em ambos os cursos.

1.2 ObjetivosEste trabalho tem por objetivo geral a aplicacao de encontros destinados a alunos

calouros nos cursos de LC e BSI, utilizando a metodologia Coding Dojo, estimulandoassim, o desenvolvimento de habilidades indispensaveis para a pratica da programacao,introduzindo os conceitos de uma linguagem de programacao JAVA, que alem de serutilizada nos componentes curriculares dos cursos citados, e tambem vastamente utilizadapor profissionais da industria de desenvolvimento de softwares.

Especificamente, a pratica mencionada como objetivos:

• Identificar a bibliografia relacionada.

• Estudar bibliografia identificada e resenhar as mais relevantes.

• Estudar a linguagem de de programacao JAVA e o ambiente de programacao Net-Beans IDE.

• Selecionar e classificar problemas de algoritmos, que envolvem as estruturas desequencia, selecao e repeticao.

• Elaborar materiais de apoio aos encontros, com os conteudos previamente definidos.

• Definir locais para realizacao, materiais necessarios, carga horaria e calendario deencontros.

• Elaborar e divulgar o formulario de inscricao dos participantes.

• Identificar o perfil de participantes.

• Aplicar os encontros utilizando a metodologia Coding Dojo.

• Avaliar a experiencia e tabular os resultados obtidos.

• Relatar os resultados observados.

1.3 RoteiroEste trabalho esta organizado em cinco capıtulos, que compreendem no capıtulo 1,

esta Introducao, que apresenta a problematica e os objetivos do trabalho; No capıtulo 2,

Page 19: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 1. Introducao 17

apresentamos a Fundamentacao Teorica dos temas abordados, com trabalhos relacionadosa Evasao e Retencao, a Aprendizagem Colaborativa e o Coding Dojo. No capıtulo 3apresentamos os Materiais e Metodos utilizados nesta experiencia, como o formulariode inscricao do projeto, o publico alvo, e ferramentas utilizadas, como o linguagem deprogramacao e o ambiente de desenvolvimento, os materiais didaticos, alem do metodode ensino, o Coding Dojo, e os instrumentos de avaliacao; No capıtulo 4, apresentamos osresultados e discussoes obtidos nesta experiencia; E por fim, no capıtulo 5, apresentamosa conclusao e expectativas e possibilidades de trabalhos futuros.

Page 20: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

18

2 Fundamentacao Teorica

Este capıtulo apresenta diversos trabalhos, que exploram aspectos relacionados aostemas presentes neste trabalho, visando apresentar a problematica de evasao e retencaoem cursos de nıvel superior nos cursos de informatica, alem de fundamentar acerca daaprendizagem colaborativa, e partindo deste principio, explorar a utilizacao da metodo-logia Coding Dojo de programacao como estrategia de ensino a combater o problemaapresentado.

Na secao 2.1, apresentamos trabalhos relacionados a evasao e retencao; na secao2.2,expomos sobre o tema de aprendizagem colaborativa; por fim, na secao2.3, sao apontadostrabalhos relacionados a pratica de Coding Dojos.

2.1 Evasao e RetencaoVarios aspectos sao responsaveis em provocar ocorrencias de retencao em discipli-

nas e ou evasao de alunos, mas para graduandos da area de informatica, as causas maisnotaveis, estao diretamente relacionadas a aprendizagem e o exercıcio da programacao decomputadores.

Muitos autores utilizam de diferentes definicoes para o termo Retencao no ensinosuperior, que pode estar relacionado com varios fatores como; o tempo de permanenciano curso maior que o prazo maximo de integralizacao; tempo de permanencia no cursomaior que o previsto no currıculo; quando o discente realiza trancamentos em disciplinas;quando ha reprovacoes em disciplinas; entre outros. Dentre estes fatores, destacamos aretencao em virtude de reprovacoes em disciplinas, onde Lautert, Rolim e Loder (2011),definem como a condicao em que o estudante em funcao da nao obtencao do conceitomınimo de aprovacao nas avaliacoes e reprovado.

A Comissao Especial de Estudos sobre Evasao (1996) do Ministerio da Educacao(MEC), define Evasao como a saıda do aluno de seu curso de origem, sem concluı-lo. Eespecifica tres modalidades de evasao, como forma de gerar uma precisao conceitual epossibilitar a comparabilidade dos resultados. Sao elas:

• evasao do curso: desligamento do curso superior em funcao de abandono (nao-matrıcula), transferencia ou reescolha, trancamento e/ou exclusao por norma insti-tucional.

• evasao da instituicao: desligamento da instituicao na qual esta matriculado.

• evasao do sistema: abandono definitivo ou temporario do ensino superior.

Page 21: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 2. Fundamentacao Teorica 19

Para Pereira (2013), a retencao implica em um maior tempo do que o previsto paraa conclusao de um curso, o que compromete a taxa de sucesso do discente, alem ocasionarociosidade de recursos humanos e materiais, e pode provocar a evasao do estudante.

O fenomeno de evasao e retencao em cursos superiores de computacao, como eafirmado em Gomes, Henriques e Mendes (2008), e pode ser causado nao apenas porproblemas na didatica de professores que acreditam que o ensino ensino superior nao ne-cessita de pedagogia, e que e unicamente obrigacao do universitario adaptar-se a rotinae ao ritmos das aulas, porem, prossegue dizendo que o aluno trata disciplinas de pro-gramacao como outras de maior cunho teorico, ou seja, contenta-se com apenas a leiturado conteudo e nao da a pratica de programacao tanta relevancia quanto deveria. E como objetivo de apresentar aos alunos de computacao a importancia da pratica intensiva deprogramacao, e devido ao alto ındice de evasao e retencao em disciplinas de programacao.

Em Gomes e Mendes (2015), realizou-se um estudo no curso de Licenciatura emEngenharia da Computacao da Universidade de Coimbra, onde observaram que a maioriados alunos apresentavam dificuldade em absorver o conteudo nas primeiras disciplinasde programacao, o que os deixava com baixo desempenho nessas disciplinas. Os autoresacreditam que a dificuldade na resolucao de problemas matematicos e a principal res-ponsavel pelo retardo no aprendizado da logica de programacao, e propoe que para casosassim o professor deva criar as condicoes adequadas a aprendizagem de cada estudante,e nao apenas se utilizar do metodo tradicional de ensino. Para tanto, o autor sugereque as seguintes medidas sejam tomadas pelos professores: dar importancia a motivacaodos estudantes no inıcio e ao longo das aulas, introduzir conceitos atraves de exemplosfamiliares ao cotidiano dos estudantes, identificar o grau de dificuldade suportado pelosalunos, e considerar os estilos e preferencias de aprendizagem que podem coexistir naturma. Esta ultima sugestao e semelhante ao que e proposto em Kampff (2009), poremo estudo do autor e aplicado em ambiente virtuais pela implementacao de um algorıtimoque identifique o comportamento de alunos com propensao a evasao e baixo desempenho.E identificadas estas caracterısticas em um aluno, o professor e notificado para que tomeas devidas medidas.

Em Ribas, Bianco e Lahm (2016), e afirmado que cada vez mais estudantes chegamao ensino superior com menos conhecimento em logica matematica, o que em cursos decomputacao pode prejudicar o aprendizado em disciplinas de programacao e a absorcaodo pensamento computacional. Visando evitar o baixo desempenho no curso de Cienciada Computacao da Universidade Federal do Rio Grande do Sul (UFRGS), os autoresutilizaram a ferramenta Scratch, que e uma linguagem totalmente visual e de rapido re-torno ao usuario, aliada a uma metodologia de tres etapas que em ao passar das etapasa interacao com a ferramenta aumentava. Os autores utilizaram a ferramenta Scratchpara estimular o raciocınio logico, e para aprimorar a receptividade dos alunos ao pen-

Page 22: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 2. Fundamentacao Teorica 20

samento computacional. E reforca tecnicas para que o pensamento computacional sejaconstantemente estimulado nos alunos, sao eles: coleta, analise e representacao de dados,abstracao, decomposicao, depuracao, automacao, recursividade, iteracao, paralelizacao esimulacao.

2.2 Aprendizagem ColaborativaDiversos autores constatam o potencial educacional da aprendizagem colabora-

tiva, fato este que traz como consequencia o crescimento da investigacao no campo dacolaboracao relacionada a estes processos. Para (DAMIANI, 2008):

“A aprendizagem colaborativa e a aprendizagem cooperativa tem sidofrequentemente defendidas no meio academico atual, pois se reconhecenessas metodologias o potencial de promover uma aprendizagem maisativa por meio do estımulo: ao pensamento crıtico; ao desenvolvimentode capacidades de interacao, negociacao de informacoes e resolucao deproblemas; ao desenvolvimento da capacidade de autorregulacao do pro-cesso de ensino-aprendizagem. Essas formas de ensinar e aprender,segundo seus defensores, tornam os alunos mais responsaveis por suaaprendizagem, levando-os a assimilar conceitos e a construir conheci-mentos de uma maneira mais autonoma.”

Ainda em Damiani (2008), afirma que os estudos voltados para o trabalho emgrupo adotam, alternadamente ou como sinonimos, os termos cooperacao e colaboracaopara designa-lo. E citando outros autores, completa dizendo que ainda que a cooperacaoseja voltada para mutua execucao de tarefas, suas finalidades nao decorrem de uma nego-ciacao entre o grupo, o que revela uma hierarquia presente nessa forma de acao conjunta.Por outro lado, na colaboracao, todos os membros de um grupo se apoiam e trabalham jun-tos, visando atingir um objetivo que foi negociado considerando de forma igual a opiniaode todos os membros, ou seja, a colaboracao estimula a nao-hierarquizacao, liderancacompartilhada, confianca mutua e co-responsabilidade pela conducao das acoes. (COLL,1994), realiza uma investigacao sobre as resultados desse tipo de pratica entre estudan-tes. o autor aponta ganhos em termos de: i) socializacao, que abrange a aprendizagemde modalidades comunicacionais e de convivencia, adaptacao as normas estabelecidas esuperacao do egocentrismo; ii) aquisicao de aptidoes e habilidades, incluindo melhoras norendimento escolar; e iii) aumento do nıvel de aspiracao escolar.

Silveira (2016) afirma, que a utilizacao da pratica de programacao em pares nodesenvolvimento de sistemas possibilita uma troca de experiencia entre os desenvolvedo-res, propiciando assim um nivelamento entre os colegas, alem de uma padronizar o codigodesenvolvido. Em seu trabalho tambem sao descritas as vantagens de se usar ExtremeProgramming, entre elas: dupla verificacao durante a implementacao visto que o desenvol-vedor esta focado na codificacao e o observador esta atento a possıveis falhas, dessa forma

Page 23: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 2. Fundamentacao Teorica 21

gerando um codigo mais confiavel. Ressalta tambem, que neste tipo de abordagem hao compartilhamento da responsabilidade durante a implementacao, e conclui, afirmandoque neste metodo a dupla fica mais focada na atividade, do que se estivessem separados.

Em Borges et al. (2007), e afirmado que Vygotsky aborda o processo do aprendi-zado, do ponto de vista da interacao entre o indivıduo e o meio, prossegue dizendo que oprincıpio socio-cultural da teoria vygotskyana nos traz um forte embasamento pedagogicopara o trabalho em equipe, em que a importancia da comunicacao, colaboracao e coor-denacao a fim de viabilizar o trabalho em grupo e obter resultados, quando comparadosao trabalho individual, e o elemento de sucesso.

2.3 Coding DojoEm Franz, Silva e Cheiran (2014), ao constatarem a dificuldade de estudantes da

Universidade Federal do Pampa (UNIPAMPA) em disciplinas que envolvem desenvolvi-mento de algoritmos e programacao de computadores, fato evidenciado por altos ındicesde repetencia e evasao nos cursos de informatica da IES, os autores criaram um projetoque propos a execucao de Coding Dojos como ambientes de aprendizagem e incentivo apratica de programacao. A partir da observacao e registro da participacao dos alunos,conclui-se que a oferta de Coding Dojos oferecem contribuicoes significativas, assim como,um ambiente viavel ao aprendizado e exercıcio de programacao.

Em Carmo e Braganholo (2012), os autores investigam a utilizacao de Coding Do-jos como ferramenta para auxiliar o aprendizado de programacao no curso de Ciencia daComputacao da Universidade Federal Fluminense (UFF), mas especificamente no trans-correr de disciplina de Banco de dados. Segundo os autores para utilizar a metodologiaforam necessarias algumas adaptacoes como, elaborar tres padroes de aulas praticas: i)Dojos individuais; ii) Dojos em Grupos e iii) Laboratorio em sala; alem de definir previa-mente o linguagem e a codificacao anterior dos testes a serem utilizados, conduzindo aosparticipantes apenas a resolucao das situacoes problemas apresentadas. Como avaliacaodo trabalho, os alunos respondiam um questionario acerca da pratica desenvolvida, quegerou informacoes positivas assim como uma maior aceitacao sobre a aplicacao de Dojosem um dos padroes estabelecidos, o de Laboratorio em sala.

Em Luz e Neto (2012), relatam suas experiencias com o uso de Coding Dojo, estepor favorecer a aplicacao de tecnicas de desenvolvimento agil como o desenvolvimento diri-gido por testes; programacao em pares e ”baby steps”. A partir da analise de questionariosaplicados, os autores concluem que dojos de programacao, devido a suas caracterısticasfavorecem a participacao, socializacao e a troca de conhecimentos entre os participantes.

Em Delgado, Toledo e Braganholo (2012), os autores realizaram um estudo sobreo uso de Dojos de programacao no ensino superior. Os Autores propoem adaptacoes da

Page 24: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 2. Fundamentacao Teorica 22

desta metodologia a partir da experiencia realizadas a em diferentes disciplinas como,estruturas de dados, inteligencia artificial e computacao grafica, nos cursos de graduacaoda Universidade Federal do Rio de Janeiro (UFRJ) e da Universidade Federal Fluminense(UFF). Os autores concluem que adequacoes quanto a linguagem a ser utilizada, a ordemna troca de pilotos, realizacoes de tetes, comunicacao durante a pratica sao necessariaspara que Coding Dojos possam ser utilizados qualquer componente curricular dos cursosde graduacao em computacao.

Page 25: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

23

3 Materiais e Metodos

Neste capıtulo sao apresentado os instrumentos e a metodologia Coding Dojo,alem das metodos de avaliacao aplicados. Na secao 3.1, apresenta o formulario de ins-cricao utilizado, em seguida, na secao 3.2, o publico alvo dos encontros, na secao 3.3,as ferramentas, como o linguagem de programacao Java, o ambiente de desenvolvimentoNetbeans 8.0.2 e os materiais de apoio desenvolvidos. Na secao 3.4, sao demostradas asdiferentes formas de aplicacao da metodologia, e por fim na secao 3.5, os mecanismos deavaliacao empregados.

3.1 Formulario de inscricaoPara convocacao dos participantes foi elaborado um formulario de inscricao utili-

zando a plataforma gratuita do Google Forms. Cujo o link de acesso foi compartilhadocom os representantes dos Centros Academicos de cada curso, que por sua vez os o divul-garam entre as turmas de alunos ingressantes.

Neste formulario os participantes obtinham algumas informacoes sobre o projeto,como seu objetivo, a metodologia utilizada, o perıodo de realizacao, os datas e os horariosdos encontros, alem de informar a carga horaria total do projeto, e a porcentagem defrequencia minıma necessaria para a emissao do certificado de participacao, 75%. Oformulario de inscricao solicitava algumas informacoes, dentre elas, o nome completo;numero de matricula; endereco de e-mail; o curso no qual o participante esta matriculado;neste caso, optando pelos cursos de Licenciatura em Computacao ou Bacharelado emSistemas de Informacao.

Ainda neste formulario os participantes deveriam assinar objetivamente (utilizandosim ou nao) quanto a sua experiencia com algoritmos e linguagens de programacao, asseguintes questoes:

1. Fui apresentado ao conceito de algoritmos no Ensino Fundamental?

2. Fui apresentado ao conceito de algoritmos no Ensino Medio?

3. Ja fiz disciplina de algoritmos ou programacao de computadores no Ensino Superior?

4. Ja ouvi falar ou li o que e um Algoritmo?

5. Ja ouvi falar ou li o que e uma Linguagem de programacao (Ex: Java, Python, C,C++)?

Page 26: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 24

O ultimo item a ser preenchido no formulario, o participante deveria brevementeresponder a seguinte pergunta:

6 - Por que voce esta se inscrevendo neste projeto?

As perguntas foram elaboradas afim de sondar previamente o perfil do grupo departicipantes, assim os instrutores poderiam tracar quais conceitos seriam necessarios darmaior enfase nas explicacoes anteriores a pratica do Dojos. Os resultados obtidos seraoapresentados no Capıtulo 4.

3.2 Apresentacao do Publico alvoComo ja informado, os Cursos de Licenciatura em Computacao(LC) e Bacharelado

em Sistemas de Informacao(BSI), ofertam em suas matrizes curriculares disciplinas queenvolvem programacao, e ambos tambem apresentam historico de alta taxa de evasao eretencao. Diante disto, acredita-se que a solucao para tal, seja promover aos discentes ocontato com uma abordagem pratica de lingugem de programcao Java ainda no primeiroperıodo dos cursos.

Das 25 vagas ofertadas, todas estavam destinadas a discentes calouros dos Cursosde BSI E LC, porem, com a extensao da divulgacao ocorreu de alguns alunos veteranosse inscreveram, nada que impossibilita-se a realizacao sessoes e o objetivo do trabalho.Com o encerramento das vagas obteve-se os resultados quantitativos dos alunos, sendodezoito alunos de BSI e sete de LC. Dentre os alunos de LC, seis eram calouros e apenasum veterano, enquanto que todos os alunos de BSI eram calouros.

3.3 Ferramentas

3.3.1 Linguagem de programacao Java

A linguagem de programacao Java, foi desenvolvida na decada de 90, pela SunMicrosystems, grande empresa norte americana do setor de tecnologia, com o objetivode ser mais simples e eficiente do que suas predecessoras. Inicialmente sua utilizacao eravoltada para a producao de softwares para produtos eletronicos como fornos de micro-ondas, agendas eletronicas, entre outros.

Campione, Walrath e Huml (2001) definem java como uma linguagem computaci-onal completa, adequada para o desenvolvimento de aplicacoes baseadas na rede Internet,redes fechadas ou ainda programas stand-alone, ou seja, programas auto suficientes, quenao necessitam de outras programas para auxilia-los.

Atualmente a linguagem Java e altamente difundida e empregada na comunidadede programacao.

Page 27: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 25

O Java e a base para praticamente todos os tipos de aplicacoes em rede, alemde ser o padrao global para o desenvolvimento e distribuicao de aplicacoes moveis eincorporadas, jogos, conteudo baseado na Web e softwares corporativos. Com mais de 9milhoes de desenvolvedores em todo o mundo, de forma eficiente, o Java permite que vocedesenvolva, implante e use aplicacoes e servicos estimulantes(NETBEANS, 2008)1.

Indrusiak (1996), define Java como uma linguagem simples, de facil aprendizado oumigracao, por possui um reduzido numero de construcoes. A diminuicao das construcoesmais suscetıveis a erros de programacao, tais como ponteiros e gerenciamento de memoriavia codigo de programacao tambem faz com que a programacao em Java seja mais eficiente.Contem um conjunto de bibliotecas que fornecem grande parte da funcionalidade basicada linguagem, incluindo rotinas de acesso a rede e criacao de interface grafica. alem debaseada no paradigma da Orientacao a Objetos - encapsulamento em um bloco de softwaredos dados (variaveis) e metodos de manipulacao desses dados - a linguagem permite amodularizacao das aplicacoes, reuso e manutencao simples do codigo ja implementado.

Sobre a utilizacao da utilizacao desta linguagem DEITEL (2010), ressalta:

“O Java tornou-se a linguagem preferida para implementar aplicativosbaseados na Internet e software para dispositivos que se comunicam poruma rede. Equipamentos de som estereo e outros dispositivos domesticosmuitas vezes sao conectados em rede pela tecnologia Java. Atualmente,existem bilhoes de celulares e dispositivos portateis compatıveis comJava! O Java e a linguagem preferida para atender as necessidades deprogramacao de muitas organizacoes”(DEITEL, 2010).

3.3.2 IDE NetBeans

A Integral Development Environment(IDE), cuja traducao significa Ambiente In-tegral de Desenvolvimento, e um software que possibilita o desenvolvimento de codigosem diversas linguagens de programacao. A IDE Netbens e um ambiente multiplataforma,tem como principal caracterıstica o layout simples e intuitivo com suporte para variaslinguagens de programacao, como Java, XML, C, PHP, C++, Ruby, entre outras.

Esta IDE apresentar uma interface de facil compreensao e manuseio, alem deuma resposta ao usuario em possıveis erros cometidos nas linhas de codigo, inclusiveespecificando onde e qual foi o erro cometido pelo usuario. Esta IDE sugere dicas decomo resolver os problemas, desta maneira, o usuario exercita a linguagem, e com odecorrer do tempo acaba cometendo menos erros em seu codigo.

1 Disponıvel em: 〈http://www.java.com/pt BR/〉

Page 28: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 26

A Figura 1, ilustra uma visao geral das areas que compoem o ambiente da IDENetbeans 8.0.2:

Figura 1 – Interface Netbeans IDE 8.0.2

Na caixa 1 (Figura 1) ficam organizadas as bibliotecas, projetos, pacotes e arquivos.A caixa 2 mostra as abas que contem as classes Java. No caixa 3, onde sao inseridos ocorpo do codificacoes Java, ou seja, os metodos, estruturas, as funcoes e variaveis. Nacaixa 4 e mostrado o resultado da compilacao do codigo fonte, ou seja , saıda de dados.No caixa 5, estao localizados os ıcones de atalhos e as abas de configuracao do Netbeans,como arquivo, editar, exibir, ferramentas, janelas, entre outros.

3.3.3 Materiais de apoio

Para a realizacao das sessoes de Coding Dojo, foram desenvolvidos 6 folders; 3 des-tes continham o detalhamento do conteudo que a ser trabalhado e brevemente ministradopelos instrutores, e outros 3 continham os exercıcios propostos para que os participantesos solucionassem. O objetivo dos folders e proporcionar suporte aos alunos quando estesestiverem em contato com a metodologia do Coding Dojo, considerando que maioria dosparticipantes nunca tiveram contato anterior com uma linguagem de programacao, logo, ofolders serviriam como consulta para que o alunos utilizem quando julgassem necessario.

O primeiro folder do Apendice B, abordou sobre algoritmos e variaveis, explicandoseus conceitos, e explicando os diferentes tipos de variaveis existentes na linguagem Java,tais como byte, short, int, long, double, float, boolean e char, alem de enquadrar as prin-

Page 29: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 27

cipais estruturas da linguagem, como: as funcoes de entrada (Scanner e JOptionPane);funcoes de saıda como (System.out.print); operadores matematicos( adicao, subtracao,multiplicacao e divisao), assim como outras funcoes frequentemente utilizadas, dentre elasa classe Math, que simplifica a utilizacao de operacoes matematicas, como a potenciacao,radiciacao, radianos, seno, cosseno, tangente entre outros. Para demostrar a utilizacaodestas estruturas, o material continha ainda, um exemplo de codigo onde cada estruturaera destacada e referenciada a um texto, que por sua vez descrevia seu funcionamento. Oobjetivo do primeiro folder foi de introduzir aos alunos estas primeiras estruturas para aconstrucao de algorıtimos, e resolucao dos exercıcios propostas na linguagem Java.

O segundo folder do Apendice B, tratou sobre as estruturas de selecao, onde foiapresentado aos participantes os comandos if, else if e else, demostrando sua utilizacao efuncionamento na linguagem. Para melhor compreensao desta estrutura, foi apresentadoos operadores logicos & (E condicional); && (E bicondicional); | ( OU condicional) e ||(OU bicondicional) assim como os operadores de comparacao == (igual); =! (diferente);� (maior); ≺ (menor); ≥ (maior ou igual) e ≤ (menor ou igual), neste material tambemhavia uma tabela de verdade, para explicar as logicas de negacao, disjuncao e conjuncaoutilizados em estruturas de selecao.

O terceiro folder do Apendice B, abordou sobre as estruturas de repeticao, no qualfoi apresentado os comandos while e for, para cada um deles, assim como nos demaisfolders, havia um exemplo que expressava sua utilizacao e seu formato de construcao nalinguagem, indicando sua inicializacao, condicao de repeticao e incremento ou decrementoe instrucao a ser executada.

Para cada um destes 3 folders, foram entregue aos participantes um segundo ma-terial, apresentando as questoes a serem resolvidas durante a pratica do Coding Dojo. OPrimeiro material, contem 18 questoes, e para sua resolucao sao necessarios utilizar es-truturas apresentadas, no primeiro folder de conteudos. Ja o segundo material apresentaoutras 13 questoes que envolvem estruturas de selecao, trabalhados no segundo materialde conteudos. Por fim, o terceiro material, enquadrava mais 18 questoes, que demandamda utilizacao de estruturas de repeticao, explorado no terceiro folder de conteudos.

Page 30: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 28

3.4 Coding DojoNa decada de 70, o psicologo Dr. K. Anders Ericsson apresentou o conceito de

pratica deliberada, segundo Ericsson, Krampe e Tesch-Romer (1993):

“A pratica deliberada constitui-se de um conjunto de atividades e es-trategias de estudo, cuidadosamente planejadas, que tem como objetivoajudar o indivıduo a superar suas fragilidades e melhorar sua perfor-mance; a realizacao de tais atividades requer esforco, nao sendo, por-tanto, inerentemente prazerosa. Porem, os indivıduos se vem motivadosa empreende-las pelo avanco eminente que elas podem proporcionar asua performance.”(ERICSSON; KRAMPE; TESCH-ROMER, 1993).

Hunt e Thomas (1900), em seu livro “The Pragmatic Programmer”, inspirados emoutras areas, como a da musica, onde ha um ensaio antes da apresentacao e publico, osautores sugerem que programadores se encontrassem regulamente para praticar pequenosproblemas fora de seus horarios de trabalho, repetindo o mesmo problema para aprendercom os erros anteriores, exercitando e desenvolvendo suas habilidades em programacao.

Bossavit e Gaillot (2005), em seu livro intitulado “O dojo do codificador - umamaneira diferente de ensinar e aprender programacao”, apresentaram o Coding Dojo,embasados em Ericsson e Thomas, a ideia foi criar um cenario diferente do cotidiano deum projeto, em um ambiente descontraıdo e colaborativo, este ficou conhecido como DojoParis.

Para Delgado, Toledo e Braganholo (2012) o princıpio do termo Dojo esta relacio-nado ao lugar onde se pratica artes marciais ou o lugar de meditacao . A palavra Codingvem do ingles, que em traducao livre significa codificacao, na ciencia da computacao,codificacao esta diretamente relacionada a programacao de computadores. Logo, dojosde programacao ou Coding Dojos, consistem em ambientes favoraveis a pratica de pro-gramacao, e e um metodo de aprendizagem para desenvolvimento de projetos em com-putacao, utilizado em universidades, eventos de computacao, empresas e hackerspaces.

Para Marinho et al. (2016), Coding Dojo e uma metodologia que visa o aper-feicoamento do conhecimento na area de algoritmos e programacao por meio da aprendi-zagem colaborativa, empregando aspectos de desafios e interacao.

Para a realizacao das sessoes, o local necessita de apenas de alguns componentescomo: um computador, com a IDE NetBeans devidamente instalada; um data show, paraque seja possıvel projetar a tela do computador, permitindo a visualizacao pela plateia,pincel e um quadro branco para eventuais anotacoes.

Existem tres variacoes para empregar a pratica de Coding Dojos: A Randori, Katae Kake, estas tornam-se diferentes quanto a forma de organizacao e aplicacao, no entantoconvergem quanto a sua finalidade, o aprendizado e desenvolvimento de habilidades sobreum determinado conceito, neste caso, a programacao de computadores.

Page 31: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 29

3.4.1 Coding Dojo Randori

Em sessoes do tipo Randori, indicada na Figura 2, os participantes revesam-seentre 3 papeis bem definidos: Um piloto, um copiloto, e a plateia. O piloto e o unico quepode manusear o computador, ou seja, apenas ele pode codificar a resolucao do problema,ele tambem e responsavel em narrar as alteracoes que ele realiza no codigo. O copilotopor sua vez, fica responsavel por auxiliar o piloto, ele pode dar instrucoes e sugestoesquanto a resolucao do problema. Para a plateia cabe apenas observar as acoes do pilotoatraves da projecao da tela do computador, sem dar opinioes ou dicas sobre a resolucaodo problema. Apos um determinado tempo, geralmente de 5 a 7 minutos, ha uma trocade posicoes, o piloto passa a ser membro da plateia, o copiloto assume o cargo do piloto,e um membro da plateia encarrega-se de atuar como copiloto, desta forma, podendoexpressar suas observacoes sobre o a resolucao do problema. Nessa dinamica, todas aspessoas constroem juntas uma solucao, alternando a posicao reflexiva da plateia com asposicoes mais ativas dos pilotos e copilotos, construindo a partir do trabalho acumuladodos pilotos anteriores a solucao dos problemas apresentados nas sessoes.

Figura 2 – Coding Dojo Randori - fonte: Marinho, 2016.

3.4.2 Coding Dojo Kata

A palavra Kata vem das artes marciais e e uma pratica visa a repeticao de inumerasvezes um pequeno movimento para aperfeicoa-lo, logo, em sessoes do tipo Kata, represen-tada pela Figura 3, um membro apresenta a resolucao de um problema proposto anteri-ormente, e no decorrer do encontro, esta resolucao e refeita por este membro e os demaisparticipantes, que podem sugerir alteracoes para aperfeicoar a solucao do problema, ouate mesmo resolve-lo utilizando diferentes linguagens de programacao. O objetivo destemodelo nao e a resolucao do problema em si, mas sim a qualidade da solucao apresentadapelos participantes.

Page 32: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 30

Figura 3 – Coding Dojo Kata - fonte: Marinho, 2016.

3.4.3 Coding Dojo Kake

Ja no modelo Kake, como exibe a Figura 4, varias duplas atuam simultaneamentesolucionando diferentes, ou ainda, o mesmo problema, entretanto, elas utilizam de dife-rentes linguagens de programacao. Ao final de um turno, ou seja, da resolucao de umproblema, ha uma troca de posicoes, o piloto de uma dupla, passa a ser copiloto em outraformacao de dupla. Desta forma, todos os envolvidos, participam da resolucao de variadosproblemas alem de praticar diferentes linguagens de programacao.

Figura 4 – Coding Dojo Kake - fonte: Marinho, 2016.

Page 33: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 31

3.5 AvaliacaoA avaliacao deste projeto considerou tres diferentes concepcoes: i) auto-avaliacao

do participante; ii) avaliacao da projeto pelo participante; e iii) avaliacao a partir daobservacoes dos instrutores. Ao final de cada encontro foram coletadas as fichas de auto-avaliacao acerca de seu engajamento, motivacao e autonomia, assim como o registro deobservacoes da oficina pelos instrutores. Ao finalizar todos os encontros, cada alunorespondeu de forma aberta um segundo formulario de avaliacao.

3.5.1 Auto Avaliacao SAM

O SAM (Self Assessment Manikin) e uma tecnica de avaliacao pictorica nao verbalque mede diretamente o prazer, a excitacao e a dominancia associados a reacao afetivade uma pessoa a uma ampla variedade de estımulos.Bradley e Lang (1994).

Para esta auto-avaliacao do sentimento dos participantes, ao final de cada umadas aulas, os alunos responderam uma autoavaliacao, para verificarmos o nıvel de aceita-bilidade do trabalho, a partir de tres dimensoes ligadas a satisfacao, motivacao e controledo participante a cerca daquela sessao.

O questionario se divide em tres partes, representadas por tres linhas com cincofiguras cada. Em cada linha, a figura do centro representa uma resposta neutra, as duasprimeiras figuras representam respostas positivas e as duas ultimas, respostas negativasBradley e Lang (1994).

A Figura 5 ilustra o modelo utilizado de auto-avaliacao SAM.

Figura 5 – Ficha de auto-avaliacao SAM

Page 34: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 3. Materiais e Metodos 32

3.5.2 Avaliacao dos Instrutores

Os instrutores por sua vez, tiveram a responsabilidade de nao deixar a plateiacompletamente inerte, enquanto o Piloto e o Co-piloto trabalhavam no codigo, os ins-trutores questionavam os integrantes da plateia sobre o que achavam sobre o codigo queestava sendo produzido pelo Piloto, se havia algum erro, ou mesmo como fariam se esti-vessem nas funcoes de Piloto ou Co-piloto. Afim de deixar todos os alunos com o mesmoconhecimento preliminar das sessoes, os instrutores auxiliavam tambem os alunos que che-gavam apos a explicacao dos conceitos, a fim de deixar-los a par do assunto apresentado,capacitando-os para participarem das funcoes ativas do Coding Dojo. Apenas em momen-tos excepcionais em que os alunos gastavam muito tempo sem avancar em um exercıcio,a presenca dos instrutores se fez necessaria para explicar e dar um direcionamento paraa solucao do exercıcio em questao.

Ao final de cada encontro registrava-se o ocorrido durante as sessoes, ou seja, oque observaram em cada sessao. Neste caso, o comportamento dos alunos, conteudosexplorados, o numero de atividades propostas, o numero de questoes solucionadas, asprincipais dificuldades apresentadas pelos participantes entre outras observacoes.

3.5.3 Avaliacao Geral dos Encontros - Formulario Bom, Ruim e Melhorar

Na segunda avaliacao realizada pelos participantes, porem desta vez, como o ob-jetivo de avaliar os encontros de forma geral, cada participante respondeu de forma livree subjetiva o formulario Bom, Ruim e Melhorar (BRM), demonstrado na Figura 6.

Figura 6 – Ficha de avaliacao BRM

O primeiro campo o participantes deveria escrever o que considerou bom na ex-periencia. No segundo campo, com espaco de resposta identico ao primeiro, o alunodeveria escrever de forma livre o que julgou como aspectos ruim na experiencia. Noterceiro campo, com o dobro do espaco de resposta dos dois primeiros campos, o partici-pante deveria escrever o que seria necessario para melhorar uma experiencia semelhanteno futuro.

Page 35: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

33

4 Resultados e Discussoes

Este capıtulo apresenta os resultados obtidos a partir da aplicacao do formulariode inscricao apresentado no capıtulo 3, na sub-sessao 3.1, com esses dados, foi possıvelestimar o perfil dos alunos que participariam da sessoes e planejar algumas acoes realizadaspelos instrutores.

4.1 Perfil dos participantesPara a realizacao dos encontros foram ofertadas 25 vagas, destinadas aos alunos

calouros dos cursos de Bacharelado em Sistemas de Informacao (BSI) e Licenciaturaem Computacao (LC), onde todas as vagas foram preenchidas, dentre os inscritos paraparticipar das sessoes de Coding Dojo, 18 deles estavam matriculados no curso de BSI, eapenas 7 no curso de LC.

O formulario de inscricao apresentado no capıtulo 3, na secao 3.1, investiga aexperiencia dos alunos com a programacao de computadores e com os conceitos envolvidos.Na Tabela 3 tem-se o percentual das respostas expressas pelos alunos, considerando umtotal de 25 respondentes para cada questionamento apresentado:

Tabela 3 – Sıntese das respostas objetivas do formularioPerguntas Respostas

Sim Nao1 - Fui apresentado ao conceito de Algoritmos no Ensino Fundamental? 0% 100%2 - Fui apresentado ao conceito de Algoritmos no Ensino Medio? 32% 68%3 - Ja fiz disciplina de algoritmos e programacao de computadores no Ensino Superior? 48% 52%4 - Ja ouvi falar ou li o que e um Algoritmo? 100% 0%5 - Ja ouvi falar ou li o que e uma Linguagem de programacao? 92% 8%

Dentre os 25 inscritos, 100% deles apontaram que nao haviam sido apresentadosaos conceitos de algoritmos no ensino fundamental. Apenas 8 indicaram ter tido contatocom este mesmo conceito durante o ensino medio, que resulta em 32% das respostas,e outros 68% (17 alunos) nao trabalharam esse conteudo. 48% dos participantes, ouseja, 12 alunos, assinalaram ja ter cursado disciplinas de algoritmos ou programacaode computadores no ensino superior. Sobre o conhecimento de algoritmos, 100% dosrespondentes indicaram que ja ouviram falar ou lido sobre que e um Algoritmo, dentre eles,92% (23 alunos) ja ouviram falar ou leram sobre o que e uma Linguagem de programacaoe apenas 2 alunos desconheciam sobre esse conceito.

Page 36: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 34

Para as respostas subjetivas do formulario, que tratam sobre finalidade de estar seinscrevendo neste projeto, destacamos algumas respostas explanadas pelos alunos.

Aluno 1: “Enriquecer o conhecimento na area que estou estudando.”

Aluno 2: “Porque seria uma otima oportunidade de aprendizado e de adquirircada vez mais conhecimento na minha area de graduacao e, alem disso, iria acrescentarpositivamente na minha vida academica”.

Aluno 3: “Para aprender mais sobre programacao, pois e a base do curso de BSI.”

Aluno 4: “Para aprender/aperfeicoar meu aprendizado em programacao. Meu focono curso e me tornar um desenvolvedor de softwares.”

Nestas e em outras respostas registradas pelos participantes, nota-se que os alu-nos ja possuem a percepcao de que programacao e um dos principais eixos trabalhadosnos componentes curriculares de LC e BSI, alem demostrar o interesse em participar doprojeto, e deste modo, desenvolver as competencias e habilidades necessarias a pratica doprogramacao de computadores.

4.2 Relato dos EncontrosDentre os diferentes formas de aplicacao de Coding Dojos apresentadas no Capi-

tulo 3 na Sessao 3.4, para este projeto, foi optado pela utilizacao do Coding Dojo modeloRandori, apresentado na sub-sessao 3.4.1. A preferencia por este modelo, da-se em razaodo perfil do grupo de participantes demostrado em 4.1, que em sua maioria, eram alunosingressantes nos cursos de LC e BSI, logo, nao haviam tido contado anterior com pro-gramacao de computadores ou qualquer pratica com alguma linguagem de programacao.

O modelo Randori, proporciona com que participante enquanto plateia, a obtencaode conhecimentos iniciais atraves de observacoes da codificacao e resolucao de problemaspelos colegas, baseando-se nessas observacoes e no suporte fornecido pelo material deapoio que lhes foram entregue, o participante, como passar dos encontros, estara comapto a atuar nas posicoes mais ativas desse modelo, pilotos e copilotos.

Inicialmente foram planejados 10 encontros para a realizacao das sessoes de CodingDojos conforme mostra a Tabela 4, na qual apresenta as datas, dias e horarios destesencontros, cada um deles com duracao de 2h, totalizando 20h de duracao do projeto.

Page 37: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 35

Tabela 4 – Programacao dos EncontrosDatas Dias Horarios

24/maio quinta-feira 16:00h-18:00h28/maio segunda-feira 16:00h-18:00h04/junho segunda-feira 16:00h-18:00h07/junho quinta-feira 16:00h-18:00h11/junho segunda-feira 16:00h-18:00h14/junho quinta-feira 16:00h-18:00h18/junho segunda-feira 16:00h-18:00h21/junho quinta-feira 16:00h-18:00h25/junho segunda-feira 16:00h-18:00h28/junho quinta-feira 16:00h-18:00h

Devido a uma paralisacao de servidores da Universidade entre outros ocorridos,as sessoes planejadas para os dias 28/maio e 04/junho, nao foram realizadas, fato esteque causaria uma perda de 4 horas na carga horaria total. Entretanto, em acordo comos participantes, as sessoes dos dias 11/junho, 14/junho, 18/junho e 21/junho, tiveramacrescimento de 1h cada, iniciando as 15h e encerrando as 18h, compensando assim, acarga horaria dos dias cujo as sessoes nao ocorreram.

4.2.1 Primeira Sessao

Data de realizacao: 24/05/2018.

Carga horaria: 2h.

Numero de participantes: 13.

Neste primeiro encontro, foi apresentado aos participantes o projeto, tais como oobjetivo, a metodologia utilizada, a linguagem de programacao Java e o ambiente Netbe-ans, alem do funcionamento do Coding Dojo no modelo Randori.

Como estava previsto, partindo da observacao do perfil do publico alvo, onde variosdos participantes desconheciam alguns dos conceitos fundamentais que seriam desenvolvi-dos, a princıpio houve a necessidade dos instrutores abordarem brevemente alguns destesconceitos, como o de algoritmos, linguagem de programacao, variaveis primitivas, classesjava, bibliotecas java, estruturas de entrada e saıda de dados. Apos este primeiro mo-mento, foi distribuıdo entre os participantes os material de apoio (conteudo e lista deatividades), em seguida, o primeiro problema foi solucionado pelos instrutores, um atu-ando como piloto e o segundo como copiloto, desta forma demonstrando aos participanteso funcionamento da pratica do Coding Dojo. Este primeiro exercıcio foi resolvido de formabem clara, mostrando o passo a passo a criacao de projetos, pacotes, classes e metodos nalinguagem Java, apresentando tambem o ambiente utilizado, neste caso, a IDE Netbeans.

Definimos um tempo de 5 minutos para realizar a troca de posicoes (Piloto, co-piloto e plateia). A primeira lista de atividades, continha 18 exercıcios, que deveriam

Page 38: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 36

ser solucionar utilizando os conceitos trabalhados. Destes, os quatro primeiros foramsolucionadas pelos participantes com algumas intervencoes dos instrutores.

4.2.2 Segunda Sessao

Data de realizacao: 04/06/2018.

Carga horaria: 2h.

Numero de participantes: 14.

Nesta sessao, varios participantes que nao estavam no primeiro encontro se fizerampresentes, por esse motivo, optou-se novamente em aplicar os conteudo empregado na 1asessao. Os 30 minutos iniciais foram usados para introduzir os conceitos de linguagemde programacao, algoritmos e explicar as variaveis primitivas da linguagem Java. Aposesse momento iniciamos a pratica do Dojo, e por opcao dos participantes, os 4 primeirosexercıcios solucionados na 1a sessao foram refeitos, revisando a resolucao para quem jahavia visto na 1a sessao e facilitando a compreensao para quem estava tendo o primeirocontato com a pratica do Dojo. Mesmo os participantes que estavam em sua primeirasessao (primeiro contato), participaram como pilotos e copilotos na resolucao das questoes.Com o fim desta sessao todos os alunos que permaneceram ate o final das sessoes jaestavam introduzidos a linguagem Java. Em relacao aos exercıcios, nao houve avancoem relacao as questoes propostas no folder de exercıcios, entretanto, resolver as questoesnovamente, serviu como revisao do conteudo, pois na semana anterior nao foi possıvelrealizar as sessoes que estavam planejadas. Observou-se tambem que requer tempo paraque os participantes mentalizem uma forma para solucionar o problema, e que os mesmosestavam apreensivos de errar a linha de codigo, algo que persistiu pelas sessoes seguintes.

4.2.3 Terceira Sessao

Data de realizacao: 11/06/2018.

Carga horaria: 3h.

Numero de participantes: 12.

A terceira sessao, consideramos uma dos mais produtivos ate o momento, foi in-troduzido aos participantes algumas funcoes da Classe Math, para facilitar escrita deformulas utilizadas para a resolucao das questoes. A classe Math foi utilizada para soluci-onar problemas complexos (como radiciacao), para outras foi mais utilizado os operadoresmatematicos. Os participantes resolveram 8 questoes, totalizando 12 exercıcios solucio-nadas, de um total de 18 propostas, as seis questoes restantes foram colocadas para osalunos resolverem em casa como exercıcio. Na proxima sessao se inicia o novo conteudo,estruturas de selecao (if/else), alem de propor novos exercıcios cuja resolucao envolve

Page 39: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 37

essa estrutura. Observamos que alunos que ainda nao tinham participado como pilotose copilotos, sentiram-se seguros e a vontade para participar da codificacao. No decorrerda pratica do Dojo, foi necessario que turma se deslocasse para outra sala, o que causouuma interrupcao de aproximadamente 15 min, fato este que nao prejudicou o transcorrerda sessao.

4.2.4 Quarta Sessao

Data de realizacao: 14/06/2018.

Carga horaria: 3h.

Numero de participantes: 12.

Nesta sessao, iniciamos com novo conteudo, estruturas de selecao (if/else), foramdistribuıdos os novos materiais de apoio e lista de questoes. Nos minutos iniciais daaula foram explicados como se utiliza essas estruturas na linguagem Java, e explicamosuma tabela exposta no material, a tabela da verdade, que contem as relacoes logicasde negacao, disjuncao e conjuncao. Assim como uma breve explicacao sobre em quaissituacoes utilizar os operadores logicos ‘&’; ‘&&’ ; ”|”e ‘||’.

Os instrutores iniciaram a pratica do dojo solucionando a questao 19 dos exercıciospropostos. Em seguida, os exercıcios foram sendo solucionados pelos alunos presentes,no intervalo de resolucao, entre um questao e outra, foi necessario reforcar a utilizacaocorreta dos operadores. Os participantes do curso BSI, recentemente viram estruturas deselecao na linguagem C, em suas aulas, consideramos que este fato facilitou ainda maisa compreensao do conteudo. A maior dificuldade dos alunos, foi ao condicionar duasvariaveis e uma mesma variavel duas vezes, apos uma breve explicacao dos instrutoresesse problema logo foi resolvido.

4.2.5 Quinta Sessao

Data de realizacao: 18/06/2018.

Carga horaria: 3h.

Numero de participantes: 10.

Nesta sessao, continuamos a resolucao de exercıcios com estruturas de selecao(if/else), foram resolvidas as 5 ultimas questoes desta parte do conteudo, questoes estas,mais complexas que as primeiras. Todas foram resolvidas pelos participantes, e ao final o,como o tempo restante, umas das questoes de maior complexidade, foi refeita, para quetodos os participantes pudessem compreender a logica de sua resolucao. Com o passar dasquestoes os alunos aparentavam estar animados e participativos nos debates acerca da re-solucao das questoes. Alguns participantes nao estavam presentes na sessao anterior, logo,

Page 40: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 38

estes necessitam de uma atencao maior por parte dos instrutores, ressaltando/reforcandoo comentario realizado pelos pilotos e copilotos durante a resolucao das questoes.

4.2.6 Sexta Sessao

Data de realizacao: 21/06/2018.

Carga horaria: 3h.

Numero de participantes: 11.

Neste encontro iniciamos com a abordagem de novas estruturas da linguagem Java,no caso, as estruturas de repeticao while e for, assim como em todo novo conteudo, ex-plicamos suas formas de escrita na linguagem Java, alem de esclarecer as diferencas entreelas, e em quais situacoes problemas cada uma delas e melhor aplicada. Apos esse pri-meiro momento, os instrutores iniciaram a codificacao dojo, solucionando a 1a questaodo material de questoes referentes a esta aula, em seguida, os participantes prossegui-ram com a resolucao das questoes. Alguns exercıcios envolviam alem das estruturas derepeticao, tambem estruturas de selecao e classes Scanner e Math, pode-se observar quealem de trabalhar os conteudos recentes, os participantes ja tiveram total compreensaoda utilizacao de estruturas trabalhadas anteriormente.

4.2.7 Setima Sessao

Data de realizacao: 21/06/2018.

Carga horaria: 2h.

Numero de participantes: 10.

Nessa sessao, foram continuados a resolucao dos exercıcios de operadores de re-peticao, os alunos ja haviam compreendido o funcionamento das estruturas for e while,assim como sua formato de codificacao, iniciando com a declaracao de uma variavel, se-guida da condicao de permanencia no laco, e finalizando com incremento ou decrementodo valor da variavel inicial. Entretanto, notamos que alguns destes exercıcios seriam me-lhor solucionados utilizando uma estrutura, que por hora nao fora trabalhada, vetoresou arrays em Java. Optamos entao em resolve-las na proxima sessao. e continuamossolucionando outras questoes disponıveis no material.

Page 41: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 39

4.2.8 Oitava Sessao

Data de realizacao: 21/06/2018.

Carga horaria: 2h.

Numero de participantes: 14.

Nesta ultima sessao, conceituamos um conteudo complementar, que nao estava aprincipio previsto, vetores/arrays list. Logo, o inıcio desta sessao foi utilizado para aabordagem do conceito e utilizacao dessa estrutura. Tendo em vista que esta estrutura eum pouco mais complexa que as anteriores, demandou de um tempo maior para apresenta-la aos alunos, e em seguıda, tres dos exercıcios dos nao solucionados na aula anteriorforam elucidados pelos participantes com ocasionais auxılios dos instrutores. Ao finaldesta sessao, alem do formulario de auto-avaliacao SAM (Self Assessment Manikin), foientregue aos presentes, a avaliacao BRM (Bom, Ruim e Melhorar) no qual foi explicadaaos alunos seus objetivos, assim como ressaltado a importancia do preenchimento emconformidade com as reais perspectivas observadas pelos participantes.

4.3 Avaliacao do AlunoDois formularios foram aplicados aos participantes, para que eles avaliassem dois

diferentes aspectos, um acerca de sentimentos como satisfacao, motivacao e controle, paraeste, utilizou-se o modelo de auto-avaliacao SAM. O segundo formulario de avaliacao, men-surou opinioes dos alunos sobre a totalidade dos encontros, para este utilizamos o modeloBRM, que apurava respostas dos alunos sobre os pontos de vista bom, ruim e melhorar.Ambos os modelos de avaliacao sao apresentados no capıtulo 3, na secao 3.5. Apresenta-mos nas subsecoes 4.3.1 e 4.3.2 a seguir, os resultados obtidos por essas avaliacoes.

4.3.1 Resultados SAM

Na primeira sessao, descrita na subsecao 4.2.1, estavam presentes 13 alunos, dentreeles, apenas 11 optaram com preencher o formulario SAM. Sobre o quesito satisfacao,obtivemos 8 votos positivos, 2 votos neutros e 1 voto negativo. Em motivacao foram 9positivos, 1 neutro e 1 negativo. Para o item controle, foram registrados 2 votos positivos,6 votos neutros e 3 votos negativos. Considerando todos os aspectos, foram registrados19 votos positivos, 9 neutros e 5 negativos.

Para o segundo encontro, descrito na subsecao 4.2.2, estavam presentes 14 alunos, etodos preencheram o formulario. Sobre o quesito satisfacao, obtivemos 13 votos positivos,1 votos neutro e nenhum voto negativo. Em motivacao foram 11 positivos, 2 neutros e 1negativo. Para o item controle, foram registrados 2 votos positivos, 8 votos neutros e 4votos negativos. Totalizando 26 votos positivos, 11 neutros, e 5 negativos.

Page 42: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 40

Na terceira sessao, relatado na subsecao 4.2.3, 12 alunos estavam presentes, e todosassinalaram a avaliacao. Sobre o quesito satisfacao, obtivemos 9 votos positivos, 2 votosneutros e 1 voto negativo. Em motivacao foram 7 positivos, 2 neutros e 2 negativo. Parao item controle, foram registrados 4 votos positivos, 6 votos neutros e 2 votos negativos.Considerando todos os aspectos, foram registrados 20 votos positivos, 11 neutros e 5negativos.

No quatro encontro, descrito na subsecao 4.2.4, estavam presentes 12 alunos, dentreeles, apenas 10 preencheram o formulario SAM. Sobre o quesito satisfacao, obtivemos 9votos positivos, 1 voto neutro e nenhum voto negativo. Ja em motivacao foram 9 positivos,1 neutro e 0 negativo. Para o item controle, foram registrados 7 votos positivos, 3 votosneutros e nenhum votos negativo. Totalizando 25 votos positivos, 5 neutros, e 0 votosnegativos.

Para a quinta sessao, relatada na subsecao 4.2.5, estavam presentes 10 alunos, etodos preencheram o formulario. Sobre o quesito satisfacao, obtivemos 10 votos positivos,0 votos neutros e 0 votos negativos. Em motivacao o mesmo resultado, foram 10 positivos,0 neutros e 0 negativos. Para o item controle, foram registrados 9 votos positivos, 0 votosneutros e apenas 1 votos negativos. Totalizando 29 votos positivos, 0 neutros, e um unicovoto negativo.

Para o sexto encontro, descrito na subsecao 4.2.6, estavam presentes 11 alunos,sendo que todos preencheram o formulario. Sobre o quesito satisfacao, obtivemos 7 votospositivos, 1 votos neutro e 3 votos negativos. Em motivacao foram 8 positivos, 1 neutroe 2 negativo. Para o item controle, foram registrados 4 votos positivos, 4 votos neutros e3 votos negativos. Totalizando 19 votos positivos, 6 neutros, e 8 votos negativos.

A penultima sessao, descrita na subsecao 4.2.7, 10 alunos estavam presentes, etodos assinalaram a avaliacao. Sobre o quesito satisfacao, obtivemos 9 votos positivos, 1voto neutro e 0 votos negativos. Em motivacao foram 9 positivos, 0 neutros e apenas 1voto negativo. Para o item controle, foram registrados 7 votos positivos, 0 votos neutrose 3 votos negativos. Considerando todos os itens, foram registrados 25 votos positivos, 1voto neutro e 4 votos negativos.

No oitavo e ultimo encontro, noticiado na subsecao 4.2.8, 14 participantes estavampresentes, e esse mesmo numero preencheu a autoavaliacao. Sobre o quesito satisfacao,obtivemos 13 votos positivos, 0 votos neutros e somente 1 voto negativo. Em motivacaoforam 9 positivos, 4 neutros e 1 negativo. Para o item controle, foram registrados 8 votospositivos, 3 votos neutros e 3 votos negativos. Considerando todos os elementos, foramregistrados 30 votos positivos, 7 votos neutros e 5 votos negativos.

Page 43: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 41

A tabela 5, expoe os numeros obtidos em cada sessao, alem de demostrar a tota-lidade de Votos Negativos (V-), Votos Neutros (VN) e Votos Positivos(V+), para cadaitem analisado:

Tabela 5 – Resultado das auto-avaliacoes dos participantesSatisfacao Motivacao Controle

V- VN V+ V- VN V+ V- VN V+1o Sessao 1 2 8 1 1 9 3 6 22o Sessao 0 1 13 1 2 11 4 8 23o Sessao 1 2 9 2 3 7 2 6 44o Sessao 0 1 9 0 1 9 0 3 75o Sessao 0 0 10 0 0 10 1 0 96o Sessao 3 1 7 2 1 8 3 4 47o Sessao 0 1 9 1 0 9 3 0 78o Sessao 1 0 13 1 4 9 3 3 8Total 6 8 78 8 12 72 19 30 43

Baseado nos dados da tabela 5, o grafico da Figura 7 constata a evolucao destesnumeros, sobre os votos positivos, neutros e negativos com o passar dos encontros.

Figura 7 – Progressao dos votos

A autoavaliacao SAM, de forma geral, obteve 276 votos, onde 193 deles forampositivos(v+), ou seja cerca de 70% dos votos totais; houveram 50 votos neutros(VN),que correspondem a 18% dos totais, enquanto que votos negativos(V-), agregam 12% dosvotos totais, ou seja exatos 33 votos. Consideramos que independente do fator analisado,seja ele a satisfacao, motivacao ou controle dos participantes, o grande numero de votospositivos expressam de forma geral, bons resultados acerca da realizacao dos Dojo deprogramacao.

Page 44: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 42

4.3.2 Resultados BRM

Como apresentado no capıtulo 3, na sessao 3.5, a avaliacao da oficina pelo aluno,foi realizada por meio de um formulario com tres campos de resposta aberta. Destacamosa respostas de apenas 3 alunos sobre a avaliacao geral dos encontros:

Aluno 1:

Bom: “Muito boa a oportunidade de poder aprender Java na pratica. E de graca, mas aqualidade e alta. Em poucas aulas o aluno ja consegue ter autonomia na resolucaodas questoes”

Ruim: “O horario e um pouco ruim quando tem prova logo apos o Coding Dojo.”

Melhorar: “Poderia ter todo semestre e com outras linguagens.”

Aluno 2:

Bom: “Aprender uma linguagem de programacao. Treinar em cada aula. Adidatica/dinamica das aulas. Envio da resolucao dos exercıcios. Desenvolve o tra-balho em equipe.”

Ruim: “Nem todas as aulas serem no mesmo laboratorio.”

Melhorar: “Ter mais edicoes e com outras linguagens de programacao tambem.”

Aluno 3:

Bom: “Bem dinamico. Bom ensino..”

Ruim: “Pouco tempo de curso.”

Melhorar: “Quantidade de aulas da oficina.”

As respostas expressas pelos participantes, reforcam o que foi verificado nas resul-tados da autoavaliacao SAM. Os comentarios mostram que os alunos estavam satisfeitoscom a metodologia utilizada, e com os conhecimentos adquiridos e aplicados durante assessoes de Coding Dojo, de tal forma que alguns participantes sugeriram a aplicacao outrassessoes de dojos de programacao, alem de propor um aumento no numero de encontrosrealizados e a utilizacao de outras linguagens de programacao.

Page 45: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 43

4.4 Observacoes dos InstrutoresEntre os pontos observados pelos instrutores estao: a boa interacao entre alunos,

alem da iniciativa dos participantes em sanarem duvidas com os instrutores, demonstrandoassim interesse em aprender conteudo, destacamos tambem, que nos primeiros encontros,alguns participantes demonstraram um inicial desconforto com a metodologia, em nossasobservacoes consideramos que estes indivıduos possuem um perfil mais tımido ou inseguro,tendo em vista a exposicao envolvida nas funcoes de piloto e copiloto, e por conta disto,optaram por apenas observar a resolucao das questoes por seus colegas. Como passar dassessoes esses mesmos indivıduos, ja estavam familiarizados com a metodologia e com alinguagem Java, e logo participaram mais ativamente dos encontros.

Outro ponto observado, foi que enquanto o piloto narrava suas acoes no codigo,alguns membros da plateia logo buscavam em conjunto interpretar o problema e identificaronde esta ocorrendo o possıvel erro na resolucao apresentada pelos pilotos. Desta forma,ao realizar as trocas de posicoes, o logica para a resolucao ja estava construıda, cabendoapenas implementar no codigo esta logica, utilizando as estruturas necessarias para asolucao do problema.

4.5 DiscussoesDe modo geral, considerou-se com o avancar dos encontros, que os participan-

tes realmente conseguiram desenvolver e praticar os conceitos iniciais da linguagem deprogramacao Java. Baseando-se nas observacoes realizadas pelos instrutores, alem dosexpressivos numeros acerca da satisfacao, motivacao e controle dos alunos, obtidos pela aavaliacao SAM, juntamente com os comentarios expressos pela avaliacao BRM, houve defato um grande proveito desta experiencia para os participantes.

Em varios momentos foi percebido o real interesse de alguns alunos sobre a com-preensao da sintaxe da linguagem e utilizacao das estruturas, pois, sempre que lhes surgiaalguma incerteza, nao hesitavam em contatar os instrutores para sanar tal duvida. Algunsajustes tiveram que ser feitos a partir da dinamica “Coding Dojos Randori”, para tornar oencontros produtivos para os alunos como, por exemplo, a realizacao de pausas periodicaspara explicar o raciocınio por tras de uma solucao enquanto ela e desenvolvida.

E importante ressaltar tambem alguns problemas identificados pelos instrutorese pelos o participantes, tais como, o locais de realizacao das sessoes, considerando quea metodologia necessita de poucos componentes fısicos, dentre eles um computador, umprojeto e um quadro branco. Os espaco de realizacao nao foi o mesmo em todas as sessoes.Em uma ocasiao, no decorrer de uma sessao foi necessario realocar todos os participantespara um outro local, para entao dar continuidade na pratica. Alem de varios desses locais

Page 46: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Capıtulo 4. Resultados e Discussoes 44

cedidos nao fornecerem um suporte ideal para a realizacoes das sessoes.

Apos analise das listas de frequencias, observamos que nenhum dos participantesobteve 100% de frequencia nos encontros. Apenas 3 alunos participaram de 7 sessoes,cerca de 87,5% do total dos encontros, outros 7 alunos tiveram frequencia de 75%, quecorrespondem a 6 encontros, 4 alunos participaram de 5 sessoes e obtiveram frequenciade 62,5%. E outros 11 alunos obtiveram a frequencia igual ou inferior a 50%, variandosua participacao entre 0 e 4 encontros.

Outro aspecto evidente, foi a quantidade participantes nas sessoes, em media 10alunos. Considerando que inicialmente 25 vagas foram ofertadas e preenchidas, menosde 50% dos inscritos participam efetivamente dos encontros, este acontecimento podeestar relacionado com a adaptacao dos alunos a metodologia, pois em alguns momentos, enecessario que o alunos demostre seus conhecimentos codificando e narrando suas acoes,logo o fator de exposicao se faz presente, o que pode inibir a participacao de alunos comperfil mais tımido e introvertido, assim como outros fatores observados, como os horariosde realizacao dos encontros e alguns acontecimentos que comprometeram a realizacao dassessoes planejadas.

Page 47: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

45

5 Conclusoes e Trabalhos Futuros

O aprendizado e o exercıcio da programacao de computadores sao tarefas queexigem dedicacao e esforco dos estudantes, logo, muitos desses acabam encontrando di-ficuldades nos primeiros contatos com uma linguagem de programacao e elaboracao dealgoritmos. No ensino superior, como fundamentado no capıtulo 2, a reprovacao em dis-ciplinas que incluem a pratica da programacao em sua planejamento, e um fator quecontribui significativamente para episodios de evasao de alunos.

As sessoes de Coding Dojos mostram-se uma pratica sustentavel no desenvolvi-mento de habilidades de programacao. No decorrer deste projeto, com os registros rea-lizados e com a analise dos dados coletados, podemos perceber que a acao foi, no geral,positiva para os participantes.

Como os conhecimentos adquiridos pela pratica realizada, presumimos que paraestes alunos a experiencia resultara em uma maior de compreensao dos conteudos traba-lhados em componentes curriculares que contornam o ensino de programacao, resultandoassim, em uma diminuicao das taxas de reprovacao nestas disciplinas, consequentementea reducao de casos de evasao de alunos nos cursos de informatica da Universidade.

Para os instrutores deste projeto, houve tambem grande ganho, sendo eles vete-ranos do curso de Licenciatura em Computacao, a pratica realizada proporcionou a estesfuturos professores a oportunidade de exercer e aplicar os conhecimentos adquiridos nodecorrer da sua graduacao, contribuindo assim para a formacao docente desses alunos.

Como trabalhos futuros, destaca-se a importancia da investigacao do desempenhodos alunos participantes dos Coding Dojos nas disciplinas relacionadas a programacao.

Alem de estarem previstos a realizacao de novos encontros em turmas de calou-ros que futuramente nos ingressarao nos cursos de LC e BSI. Propomos tambem umaoutra possıvel forma de aplicacao de Coding Dojos na Universidade, esta por sua vezcom maior apoio das coordenacoes de curso, na divulgacao e conscientizacao dos alunossobre importancia da participacao em projetos como este, que promovem a abordagempratica de um determinado conceito necessario para o decorrer do curso, neste caso, a pro-gramacao de computadores, assim como, uma maior assistencia fornecida pelo instituto,com a concessao de locais e horarios mais apropriados para a realizacao destes eventos,com a realizacao dos encontros sendo mediadas pelos discentes que integram o programade monitoria da UFRA, dando apoio aos alunos acerca do aprendizado de programacao,cuja a administracao e exercida pela PROEN, por meio da Divisao de Apoio Pedagogicoda Universidade.

Page 48: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

46

Referencias

ADAN-COELLO, J. M. et al. Conflito socio-cognitivo e estilos de aprendizagem naformacao de grupos para o aprendizado colaborativo de programacao de computadores.Brazilian Journal of Computers in Education, v. 16, n. 03, 2008. Citado na pagina 13.

BORGES, R. M. et al. Usando o modelo 3c de colaboracao e vygotsky no ensino deprogramacao distribuıda em pares. In: Brazilian Symposium on Computers in Education(Simposio Brasileiro de Informatica na Educacao-SBIE). [S.l.: s.n.], 2007. v. 1, n. 1, p.51–60. Citado na pagina 21.

BOSSAVIT, L.; GAILLOT, E. The coder’s dojo–a different way to teach and learnprogramming. In: SPRINGER. International Conference on Extreme Programming andAgile Processes in Software Engineering. [S.l.], 2005. p. 290–291. Citado na pagina 28.

BRADLEY, M. M.; LANG, P. J. Measuring emotion: the self-assessment manikinand the semantic differential. Journal of behavior therapy and experimental psychiatry,Elsevier, v. 25, n. 1, p. 49–59, 1994. Citado na pagina 31.

CAMPIONE, M.; WALRATH, K.; HUML, A. The Java tutorial: a short course on thebasics. [S.l.]: Addison-Wesley Professional, 2001. Citado na pagina 24.

CARMO, D. H.; BRAGANHOLO, V. Um estudo sobre o uso didatico de dojos deprogramacao. In: XX Workshop sobre Educac ao em Informatica (WEI). [S.l.: s.n.],2012. Citado na pagina 21.

COLL, C. Aprendizagem escolar e construcao do conhecimento. In: Aprendizagemescolar e construcao do conhecimento. [S.l.: s.n.], 1994. Citado na pagina 20.

DAMIANI, M. F. Entendendo o trabalho colaborativo em educacao e revelando seusbenefıcios. Educar em revista, SciELO Brasil, n. 31, 2008. Citado na pagina 20.

DEITEL, H. M.; DEITEL, Paul J. Java: Como programar. 8a Edicao. [S.l.]: Sao Paulo:Prentice Hall, 2010. Citado na pagina 25.

DELGADO, C.; TOLEDO, R. de; BRAGANHOLO, V. Uso de dojos no ensino superiorde computacao. in Workshop sobre Educacao em Computacao., 2012. Citado 2 vezesnas paginas 21 e 28.

ERICSSON, K. A.; KRAMPE, R. T.; TESCH-ROMER, C. The role of deliberatepractice in the acquisition of expert performance. Psychological review, AmericanPsychological Association, v. 100, n. 3, p. 363, 1993. Citado na pagina 28.

FRANZ, L. P.; SILVA, J. P. S. da; CHEIRAN, J. F. P. O uso de coding dojo noaprendizado colaborativo de programacao de computadores. RENOTE, v. 12, n. 2, 2014.Citado 2 vezes nas paginas 14 e 21.

GOMES, A.; HENRIQUES, J.; MENDES, A. Uma proposta para ajudar alunos comdificuldades na aprendizagem inicial de programacao de computadores. Educacao,Formacao & Tecnologias-ISSN 1646-933X, v. 1, n. 1, p. 93–103, 2008. Citado 2 vezesnas paginas 13 e 19.

Page 49: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 47

GOMES, A. J.; MENDES, A. J. A procura de um contexto para apoiar a aprendizageminicial de programacao. Educacao, Formacao & Tecnologias-ISSN 1646-933X, v. 8, n. 1,p. 13–27, 2015. Citado na pagina 19.

HUNT, A.; THOMAS, D. The pragmatic programmer. [S.l.]: Pearson Education India,1900. Citado na pagina 28.

INDRUSIAK, L. S. Linguagem java. Grupo JavaRS JUG Rio Grande do Sul, 1996.Citado na pagina 25.

JENKINS, T. On the difficulty of learning to program. In: CITESEER. Proceedings ofthe 3rd Annual Conference of the LTSN Centre for Information and Computer Sciences.[S.l.], 2002. v. 4, n. 2002, p. 53–58. Citado na pagina 13.

KAMPFF, A. J. C. Mineracao de dados educacionais para geracao de alertas emambientes virtuais de aprendizagem como apoio a pratica docente. 2009. Citado napagina 19.

LAUTERT, L. d. S.; ROLIM, M.; LODER, L. Investigando processos de retencao noambito de um curso de engenharia eletrica. In: Congresso Brasileiro de Educacao emEngenharia. [S.l.: s.n.], 2011. v. 39. Citado na pagina 18.

LUZ, R. B.; NETO, A. Usando dojos de programacao para o ensino de desenvolvimentodirigido por testes. In: Brazilian Symposium on Computers in Education (SimposioBrasileiro de Informatica na Educacao-SBIE). [S.l.: s.n.], 2012. v. 23, n. 1. Citado napagina 21.

MARINHO, C. et al. Experiencias no uso da metodologia coding dojo nas disciplinasbasicas de programacao de computadores em um curso interdisciplinar do ensinosuperior. In: Anais dos Workshops do Congresso Brasileiro de Informatica na Educacao.[S.l.: s.n.], 2016. v. 5, n. 1, p. 1097. Citado na pagina 28.

NETBEANS, I. Disponıvel em¡ http://www. netbeans. org¿. Acesso em 25/06/2018,v. 11, 2008. Citado na pagina 25.

NG, E.; BEREITER, C. Three levels of goal orientation in learning. Journal of theLearning Sciences, Taylor & Francis, v. 1, n. 3-4, p. 243–271, 1991. Citado na pagina 13.

PEREIRA, A. S. Retencao discente nos cursos de graduacao presencial da UFES. 2013.164 f. Tese (Doutorado) — Dissertacao (Mestrado em Gestao Publica)-Programa dePos-Graduacao em Gestao Publica, Universidade Federal do Espırito Santo, Vitoria,2013. Citado na pagina 19.

RIBAS, E.; BIANCO, G. D.; LAHM, R. A. Programacao visual para introducao aoensino de programacao na educacao superior: uma analise pratica. RENOTE, v. 14, n. 2,2016. Citado na pagina 19.

SILVEIRA, F. E. d. Relato de experiencia do uso de programacao em pares nodesenvolvimento de sistemas da ufrgs. In: Workshop de Tecnologia de Informacao eComunicacao das Instituicoes Federais de Ensino Superior (10.: 2016: Gramado).Anais. Gramado,[sn], 2016. [S.l.: s.n.], 2016. Citado na pagina 20.

Page 50: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Apendices

Page 51: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

49

APENDICE A – Formulario de Inscricao

Figura 8 – Formulario de Inscricao

Projeto de Coding Dojo com JavaEste formulário será utilizado para realizar sua inscrição no Projeto de Coding DOJO do BPM Lab / ICIBE / UFRA. O número de vagas é limitado e apenas alunos dos cursos de informática do Campus Belém poderão participar.

Coding Dojo é um método de aprendizagem para desenvolvimento de projetos em computação, utilizado em universidades, eventos de computação, empresas e hackerspaces. Nessa dinâmica, todas as pessoas constroem juntas a solução, alternando a posição reflexiva da platéia com as posições mais ativas dos pilotos e co-pilotos, construindo a partir do trabalho acumulado dos pilotos anteriores a solução dos problemas apresentados nas sessões.

Como o desenvolvimento de código será colaborativo, não podemos caracterizar esse projeto precisamente como uma oficina, pois os alunos terão necessariamente participação ativa no desenvolvimento das soluções dos problemas de algoritmos que serão expostos aos participantes.

Período do Projeto: 24 de maio a 28 de junho. Dias dos encontros: Segunda e Quinta-feira. Horário dos encontros: 16:00h as 18:00h. Local dos Encontros: Sala 01, ICIBE/UFRA.

Datas dos encontros (10 encontros): 24/maio, 28/maio, 04/junho, 07/junho, 11/junho, 14/junho, 18/junho, 21/junho, 25/junho e 28/junho.

A frequência mínima de 75% dará direito a certificado.

*Obrigatório

1. Nome Completo *

2. Número de Matrícula *

3. E-mail *

4. Curso *Marcar apenas uma oval.

Licenciatura em Computação

Bacharelado em Sistemas de Informação

Page 52: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 50

Powered by

5. Quanto a minha experiência com algoritmos e linguagens de programação *Marcar apenas uma oval por linha.

Sim Não

Fui apresentado ao conceito dealgoritmos no ENSINOFUNDAMENTALFui apresentado ao conceito dealgoritmos no ENSINO MÉDIOJá fiz disciplina de algoritmos ouprogramação de computadores noENSINO SUPERIORJá ouvi falar ou li o que é umALGORITMOJá ouvi falar ou li o que é umaLINGUAGEM DEPROGRAMAÇÃO (Ex: Java,Python, C, C++)

6. Por que você está se inscrevendo neste projeto?

Page 53: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

51

APENDICE B – Materiais de Apoio

Figura 9 – Folder 01 - Operadores Matematicos, Variaveis e Funcoes

O q

ue é

um

alg

ori

tmo

?

Alg

oritm

o n

ad

a m

ais

é d

o q

ue u

ma r

eceita q

ue

mo

str

a

passo

a

p

asso

o

s

pro

ced

ime

nto

s

nece

ssário

s p

ara

a r

esolu

ção

de u

ma tare

fa. E

m

term

os

ma

is

técnic

os,

um

a

lgo

ritm

o

é

um

a

se

qu

ên

cia

lóg

ica

, fin

ita e

defin

ida d

e i

nstr

uçõe

s

qu

e

deve

m

ser

seg

uid

as

para

re

so

lve

r u

m

pro

ble

ma

. Q

uais

e

str

utu

ras

pre

cis

am

os

de

um

a

lin

gu

ag

em

de p

rog

ram

açã

o p

ara

des

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

De

mo

str

ar

ao

alu

no

de

q

uais

a

s

prin

cip

ais

estr

utu

ras n

ece

ssária

s p

ara

criar

pro

gra

mas,

e

assim

, so

lucio

na

r e

xe

rcíc

ios

utiliz

and

o

a

ling

uag

em

de p

rog

ram

açã

o J

AV

A.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

Op

erad

ore

s M

atem

átic

os,

Var

iáv

eis,

F

unçõ

es, E

ntr

ada

e S

aída.

Be

lém

/Pará

2018

Page 54: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 52

Op

era

do

res

Os

opera

do

res

o

utiliz

ado

s

princip

alm

ente

n

a

eta

pa

d

o

pro

ce

ssam

ento

, p

ossib

ilita

nd

o

realiz

ar

açõe

s e

spe

cífic

as (

ma

tem

áticas,

log

ica

s

e d

e c

om

para

çã

o)

so

bre

os d

ad

os.

Ma

tem

áti

co

s:

Ad

içã

o

+

Su

btr

ação

-

Mu

ltip

lica

ção

*

Div

isã

o

/ R

esto

%

Va

riá

ve

is

Um

a v

ariáve

l é

um

a p

osiç

ão d

a m

em

ória d

o

co

mp

uta

dor

ca

pa

z d

e r

ete

r e

re

pre

se

nta

r um

va

lor

ou e

xp

ressã

o.

Ela

s s

ão a

ssocia

da

s a

u

m n

om

e,

ch

am

ado

id

entifica

do

r, e

em

Ja

va

restr

ing

em

o c

onju

nto

de v

alo

res q

ue p

odem

se

r atr

ibuíd

os a

ela

.

Ex

em

plo

s:

byte

a; // a

ceita a

pe

na

s v

alo

res in

teiro

s

sh

ort

b: // a

ceita a

pe

na

s v

alo

res in

teiro

s

int

c; //a

ceita a

pe

na

s v

alo

res in

teiro

s

lon

g d

: // a

ceita a

pe

na

s v

alo

res in

teiro

s

flo

at

e; //

aceita

va

lore

s r

eais

/decim

ais

do

ub

le f; // a

ceita

va

lore

s r

eais

/decim

ais

bo

ole

an

g; // a

ceita v

alo

res: tr

ue e

fa

lse

ch

ar

h; //a

ceita a

pe

na

s v

alo

res c

ara

cte

re

Fu

nçõ

es d

e S

aíd

a

Re

fere

-se a

sa

ída d

e d

ete

rmin

ad

o p

rocessam

en

to,

ou

se

ja, o v

alo

r o

u info

rma

çã

o a

ser

exib

ida a

o u

suário

apó

s

a e

xe

cuçã

o d

o p

rog

ram

a.

E

xem

plo

:

S

yste

m.o

ut.p

rintln

("H

ello

World !")

; J

Op

tion

Pa

ne

.sh

ow

Me

ssa

ge

Dia

log(n

ull,

" H

ello

Wo

rld

");

Fu

nçõ

es d

e E

ntr

ad

a

o

utiliz

ado

s

para

in

serir

dad

os

no

pro

gra

ma

, a

tra

s d

e um

d

isp

ositiv

o d

e

entr

ad

a,

o

com

puta

do

r lê

a

in

form

ação

inserid

a e

a a

rma

ze

na

em

um

a v

ariáve

l.

E

xem

plo

s:

S

ca

nn

er

entr

ada =

new

S

ca

nn

er(

Syste

m.in

);

Str

ing

lin

ha

= e

ntr

ada

.nextL

ine()

;

Str

ing

lin

ha

=

JO

ptioP

ane

.sh

ow

Inpu

tDia

log

("D

igite:"

, n

ull)

;

Fu

nçõ

es

Fun

çõe

s

o

rotina

s

ou

su

b-r

otina

s

auto

mática

s.

Sem

pre

q

ue

p

rete

nd

em

os

usar

um

m

esm

o

cód

igo

p

ara

a

lgo

espe

cífic

o,

criam

os

um

a fu

nçã

o.

De

ssa

form

a,

sem

pre

q

ue

quis

erm

os

utiliz

ar

aq

uela

co

dific

açã

o,

ao

invé

s

de

nós

a

dig

ita

rmo

s

nova

me

nte

, sim

ple

sm

ente

ch

am

am

os a

fu

nçã

o.

E

xem

plo

s:

Inte

ger.

pars

eIn

t(a)

Flo

at.

pars

eF

loat(

x)

Ma

th.P

I M

ath

.pow

(a,

b)

Ma

th.s

qrt

(x)

Ma

th.s

in(a

) M

ath

.co

s(a

) M

ath

.ta

n(a

) M

ath

.to

De

gre

es(a

) M

ath

.to

Ra

dia

ns(a

)

Page 55: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 53

Figura 10 – Folder 02 - Exercıcios Operadores Matematicos, Variaveis e Funcoes

O q

ue é

um

alg

ori

tmo

?

Alg

oritm

o n

ad

a m

ais

é d

o q

ue u

ma r

eceita q

ue

mo

str

a

passo

a

p

asso

o

s

pro

ced

ime

nto

s

nece

ssário

s p

ara

a r

esolu

ção

de u

ma tare

fa. E

m

term

os

ma

is

técnic

os,

um

a

lgo

ritm

o

é

um

a

se

qu

ên

cia

lóg

ica

, fin

ita e

defin

ida d

e i

nstr

uçõe

s

qu

e

deve

m

ser

seg

uid

as

para

re

so

lve

r u

m

pro

ble

ma

. Q

uais

e

str

utu

ras

pre

cis

am

os

de

um

a

lin

gu

ag

em

de p

rog

ram

açã

o p

ara

des

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

Ap

resen

tar

rio

s e

xe

rcíc

ios,

qu

e p

ara

su

as

reso

luçõ

es s

ão

ne

ce

ssá

rio

s u

tiliz

ar

op

era

do

res

ma

tem

ático

s,

va

riá

ve

is,

fun

çõe

s,

en

trad

a

e

sa

ída

.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

PA

RT

E I

– E

xer

cíci

os

Op

erad

ore

s M

atem

átic

os,

Var

iáv

eis,

F

unçõ

es, E

ntr

ada

e S

aída.

Be

lém

/Pará

2018

Page 56: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 54

LIS

TA

DE

EX

ER

CÍC

IOS

1.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

1,

que l

eia

va

lore

s v

ia t

ecla

do

, d

e

base

e a

a

ltura

d

e um

re

tâng

ulo

, p

or

fim

,

ca

lcu

le e

exib

a s

ua á

rea.

2.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

2,

para

ca

lcu

lar

e e

xib

ir a

áre

a d

e

um

qu

adra

do

, a

pa

rtir d

o v

alo

r d

e s

ua a

resta

qu

e s

erá

dig

ita

do

.

3.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

3,

para

ca

lcu

lar

e e

xib

ir a

áre

a d

e

um

q

uadra

do

a

part

ir

do

va

lor

de

sua

dia

go

na

l q

ue s

erá

dig

itad

o.

4.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

4,

ond

e s

eja

po

ssív

el

part

indo

de

va

lore

s d

a b

ase

e a

ltu

ra d

e u

m triâ

ng

ulo

, seja

possív

el ca

lcu

lar

e e

xib

ir s

ua á

rea.

5.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

5, ca

lcu

le e

exib

a o

vo

lum

e d

e u

ma

esfe

ra a

part

ir d

o v

alo

r de

se

u d

iâm

etr

o q

ue

se

rá d

igita

do.

6.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

6,

para

ca

lcu

lar

e e

xib

ir a

m

édia

aritm

ética

de q

uatr

o v

alo

res q

uais

qu

er

qu

e

se

rão

in

serid

os.

7.

Crie

um

a

cla

sse

princip

al

ch

am

ada

Qu

esta

o0

7,

para

ca

lcu

lar

e e

xib

ir a

m

édia

ge

om

étr

ica

de d

ois

va

lore

s q

uais

qu

er

qu

e s

erã

o d

igita

do

s.

8.

Sa

be

nd

o q

ue u

ma m

ilha m

arí

tim

a eq

uiv

ale

a

u

m m

il,

oito

cen

tos e

cin

qu

en

ta e

dois

metr

os e

qu

e u

m q

uilô

me

tro

possu

i m

il m

etr

os,

Crie u

ma c

lasse c

ham

ad

a Q

uesta

o0

8,

para

co

nve

rte

r u

m v

alo

r d

igita

do e

m m

ilhas m

arí

tim

as p

ara

qu

ilôm

etr

os.

9.

Crie

um

a cla

sse ch

am

ada

Q

uesta

o0

9,

para

ca

lcu

lar

e

exib

ir a

te

nsã

o d

e u

m d

ete

rmin

ad

o c

ircu

ito e

letr

ônic

o a

part

ir

dos va

lore

s d

a re

sis

tência

e co

rre

nte

e

létr

ica

q

ue serã

o

dig

ita

do

s.

Utiliz

e a

le

i d

e O

hm

.

10.

De

sen

vo

lva

um

a c

lasse

prin

cip

al

ch

am

ada

Qu

esta

o1

0,

ond

e s

eja

possív

el

entr

ar

via

te

cla

do

co

m o

va

lor

de u

ma

tem

pera

tura

em

g

raus

Ce

lsiu

s,

ca

lcu

lar

e

exib

ir

su

a

tem

pera

tura

eq

uiv

ale

nte

em

Fahre

nh

eit.

11.

De

sen

vo

lva

um

a c

lasse

prin

cip

al

ch

am

ada

Qu

esta

o1

1,

qu

e a

part

ir d

o d

iâm

etr

o d

e u

m c

írcu

lo q

ue s

erá

dig

ita

do,

ca

lcu

lar

e e

xib

ir s

ua á

rea.

12.

Em

um

a c

lasse c

ham

ada Q

uesta

o1

2,

Ca

lcu

le e

exib

a o

vo

lum

e d

e u

m c

one

a p

art

ir d

os v

alo

res d

a a

ltura

e d

o r

aio

da b

ase

qu

e s

erã

o d

igitad

os.

13.

Em

um

a c

lasse,

ca

lcu

le e

exib

a a

ve

locid

ad

e f

inal

(em

km

/h)

de u

m a

uto

ve

l, a

part

ir d

os v

alo

res d

a v

elo

cid

ad

e

inic

ial (

em

m/s

), d

a a

cele

ração

(m

/s²)

e d

o te

mp

o d

e p

erc

urs

o

(em

s)

qu

e s

erã

o d

igita

do

s.

14.

Ca

lcu

lar

e e

xib

ir o

vo

lum

e liv

re d

e um

am

bie

nte

qu

e

co

nté

m u

ma e

sfe

ra d

e r

aio

“r”

in

scrita

em

um

cub

o p

erf

eito

de a

resta

“a

”. O

s v

alo

res d

e “

r “

e “

a”

se

rão d

igitad

os.

15.

Em

u

ma cla

sse cha

ma

da Q

uesta

o1

5,

entr

e v

ia t

ecla

do

com

o v

alo

r d

a c

ota

ção

do

dóla

r e

um

a c

ert

a q

uantid

ad

e d

e d

óla

res.

Ca

lcu

lar

e e

xib

ir o

va

lor

co

rre

spo

nd

ente

em

Re

ais

(R

$).

16.

Em

u

ma cla

sse cha

ma

da Q

uesta

o1

6,

insira

via

te

cla

do

o v

alo

r d

e u

m â

ng

ulo

em

gra

us, ca

lcu

lar

e e

xib

ir a

s s

eg

uin

tes fu

nçõ

es

trig

ono

métr

ica

s:

se

no,

co

ssen

o,

tang

en

te e

se

can

te d

este

âng

ulo

. Le

mb

re-s

e q

ue u

ma

funçã

o trig

ono

métr

ica

tra

balh

a e

m r

adia

no

s.

17. C

rie

um

a c

lasse e

in

sira

via

te

cla

do

dois

va

lore

s q

uais

qu

er “X

” e “X

”. C

alc

ula

r e

exib

ir

o c

álc

ulo

XY

(“X

” e

leva

do

a “

Y”)

. P

esq

uis

ar

as f

unçõ

es E

xp

e L

n.

18.

Crie

um

a c

lasse e

in

sira

via

te

cla

do

, o

va

lor

de c

inco p

rod

uto

s.

Ap

ós a

s e

ntr

ada

s,

dig

ita

r um

va

lor

refe

rente

ao p

ag

am

ento

da

so

ma

tória

deste

s v

alo

res. C

alc

ula

r e

exib

ir o

tro

co q

ue d

eve

rá s

er

devo

lvid

o.

Page 57: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 55

Figura 11 – Folder 03 - Estruturas de Selecao, Operadores de Logicos e de Comparacao

O q

ue s

ão

estr

utu

ras d

e s

ele

çã

o?

E

m

alg

um

as

ocasiõ

es

de

um

p

rog

ram

a

o

nece

ssária

s

exe

cuta

r o

dig

o

ou

outr

o,

de

acord

o com

a

s o

pe

raçõ

es d

e co

mp

ara

ção

, a

estr

utu

ra

de

se

leção

IF

/EL

SE

fa

z

o

dire

cio

na

me

nto

d

a

exe

cuçã

o

do

pro

gra

ma

ate

nd

en

do

a e

sses o

pe

rado

res.

Qu

ais

e

str

utu

ras

pre

cis

am

os

de

um

a

lin

gu

ag

em

de p

rog

ram

açã

o p

ara

des

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Lóg

ico

s

Co

mp

ara

çã

o

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

Ap

resen

tar

os

op

era

do

res

lógic

os

e

de

co

mpa

ração

e

su

a utiliz

açã

o em

p

rogra

mas,

assim

com

o o

op

era

dor

de

se

leçã

o IF

/ELS

E.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

PA

RT

E I

I –

Op

erad

ore

s de

Com

par

ação

, O

per

ado

res

Lógic

os

e E

stru

tura

s de

Sel

eção

.

Be

lém

/Pará

2018

Page 58: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 56

Es

tru

tura

de S

ele

çã

o

A in

str

uçã

o d

e se

leção If

/

Els

e

perm

ite

espe

cific

ar

um

a

ação

a

realiz

ar

qu

an

do

a

co

nd

içã

o

for

ve

rda

deira

e u

ma a

ção d

ife

ren

te

quando a

co

nd

içã

o f

or

fals

a.

Op

era

do

res

Os o

pera

do

res s

ão u

tiliz

ado

s p

rincip

alm

ente

na

eta

pa

d

o

pro

ce

ssam

ento

, p

ossib

ilita

nd

o

realiz

ar

açõe

s

espe

cífic

as

(mate

mática

s,

log

ica

s e

de c

om

para

ção)

so

bre

os d

ad

os.

Co

mp

ara

çã

o:

==

x =

= y

x é

ig

ual a y

!=

x !

= y

x é

difere

nte

de y

>

x >

y

y x

é m

aio

r q

ue y

<

x <

y

x é

me

no

r q

ue y

>

=

x >

= y

x é

ma

ior

ou ig

ual a

y

<=

x <

= y

x é

me

no

r o

u ig

ual a y

L

óg

ico

s:

& -

E

co

nd

icio

na

l &

& -

E

co

nd

icio

na

l -

ve

rifica

ção

du

pla

|

-

OU

co

nd

icio

na

l

|| -

O

U c

ond

icio

na

l -

ve

rifica

ção

du

pla

Co

nd

içã

o A

= M

édia

ma

ior

qu

e 6

. C

ond

içã

o B

=

F

req

uência

m

aio

r q

ue 7

5.

A e

str

utu

ra IF

se

irá

exe

cuta

r o

dig

o

“Syste

m.o

ut.

prin

tln("

Alu

no

Ap

rova

do

!");

” se

am

bas

as

co

nd

içõ

es f

ore

m v

erd

ade

ira

s.

Ne

ste

ca

so, se

ao m

eno

s u

ma d

as

co

nd

içõ

es

for

fals

a

a

ação

realiz

ação

se

rá a

in

str

uçã

o E

LS

E.

Page 59: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 57

Figura 12 – Folder 04 - Exercıcios Estruturas de Selecao

O q

ue s

ão

estr

utu

ras d

e s

ele

çã

o?

E

m a

lgum

as o

casiõ

es d

e u

m p

rog

ram

a s

ão

nece

ssária

s e

xe

cuta

r o c

ódig

o o

u o

utr

o,

de

acord

o c

om

as o

pe

raçõ

es d

e c

om

para

çã

o, a

estr

utu

ra

de

se

leção

IF/E

LS

E

faz

o

dire

cio

na

me

nto

d

a e

xe

cuçã

o d

o pro

gra

ma

ate

nd

en

do

a e

sses o

pe

rado

res.

Qu

ais

e

str

utu

ras

pre

cis

am

os

d

e

um

a

lin

gu

ag

em

d

e

pro

gra

ma

ção

p

ara

d

es

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Lóg

ico

s

Co

mp

ara

çã

o

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

Ap

resen

tar

os

op

era

do

res

lógic

os

e

de

co

mpa

ração

e

sua

utiliz

açã

o

em

p

rogra

ma

s,

assim

com

o

o

ope

rad

or

de

se

leçã

o I

F/E

LS

E.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

PA

RT

E I

I -

Ex

ercí

cio

s –

Op

erad

ore

s de

Co

mp

araç

ão, O

per

ado

res

Lóg

icos

e E

stru

tura

s de

Sel

eção

.

Be

lém

/Pará

2018

Page 60: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 58

Ex

erc

ício

s d

e O

pe

raç

õe

s c

om

de

cis

ão

gic

a.

19

. E

ntr

ar

via

te

cla

do

, co

m

do

is

va

lore

s

dis

tin

tos. E

xib

ir o

ma

ior

de

les.

20

. E

ntr

ar

via

te

cla

do

, co

m

do

is

va

lore

s

dis

tin

tos. E

xib

ir o

meno

r d

ele

s.

21

. E

ntr

ar

co

m

do

is

va

lore

s

qu

ais

qu

er.

E

xib

ir

o

ma

ior

de

les,

se

exis

tir,

ca

so

co

ntr

ário

, en

via

r m

en

sa

ge

m a

vis

an

do q

ue

os n

úm

ero

s s

ão id

ên

tico

s.

22

. C

alc

ula

r e

e

xib

ir

a

áre

a

de

um

re

tân

gu

lo,

a p

art

ir d

os v

alo

res d

a b

ase

e

altu

ra q

ue

se

rão

dig

ita

do

s.

Se

a

áre

a f

or

ma

ior

qu

e 1

00,

exib

ir a

me

nsa

gem

“T

err

eno

gra

nd

e”.

2

3.

Ca

lcu

lar

e

exib

ir

a

áre

a

de

um

re

tân

gu

lo,

a p

art

ir d

os v

alo

res d

a b

ase

e

altu

ra q

ue

se

rão

dig

ita

do

s.

Se

a

áre

a f

or

ma

ior

qu

e 1

00,

exib

ir a

me

nsa

gem

“T

err

eno

gra

nde

”, ca

so

con

trá

rio

, e

xib

ir a

me

nsa

ge

m

“Te

rre

no

pe

que

no

”.

24

. E

ntr

ar

via

te

cla

do

com

tr

ês

va

lore

s

dis

tin

tos. E

xib

ir o

ma

ior

de

les.

25

. E

ntr

ar

com

o p

eso

e a

altu

ra d

e u

ma

de

term

inad

a

pe

sso

a.

Ap

ós

a

dig

ita

çã

o,

exib

ir s

e e

sta

pe

ssoa

está

ou

n

ão com

se

u pe

so id

ea

l. V

eja

ta

be

la da

rela

çã

o p

eso/a

ltu

ra².

. 2

6.

A p

art

ir de

tr

ês va

lore

s qu

e se

rão

dig

ita

do

s,

ve

rifica

r se

fo

rmam

ou

não

um

tr

iân

gu

lo.

Em

ca

so

p

ositiv

o,

exib

ir

sua

cla

ssific

açã

o:

“Isó

sce

les,

esca

leno

ou

eqü

iláte

ro”.

Um

triâ

ngu

lo e

sca

len

o p

ossu

i to

do

s o

s lad

os d

ife

ren

tes,

o isó

sce

les,

do

is

lad

os i

gu

ais

e o

eqü

iláte

ro,

todo

s o

s l

ad

os

igu

ais

. P

ara

exis

tir

triâ

ngu

lo é

n

ece

ssá

rio

qu

e a

som

a d

e d

ois

la

do

s q

ua

isqu

er

se

ja

ma

ior

qu

e o

ou

tro

, is

to, p

ara

os t

rês la

do

s

27

. V

erifica

r se

trê

s v

alo

res q

ua

isqu

er

(A,B

, C

) qu

e s

erã

o d

igita

dos f

orm

am

ou

o u

m

triâ

ngu

lo

retâ

ngu

lo.

Le

mb

re-s

e

qu

e

o

qu

ad

rad

o d

a h

ipo

ten

usa

é ig

ua

l a s

om

a d

os

qu

ad

rad

os d

os c

ate

tos.

28

. E

ntr

ar

co

m o

pe

so

, o

se

xo

e a

altu

ra d

e

um

a

de

term

ina

da

p

essoa

. A

s

a

dig

ita

çã

o, e

xib

ir s

e e

sta

pe

sso

a e

stá

ou

não

co

m s

eu p

eso id

ea

l. V

eja

ta

be

la d

a r

ela

ção

pe

so

/altu

ra².

29

. A

pa

rtir d

os v

alo

res d

a a

ce

lera

ção

(a

em

m

/s²)

, d

a v

elo

cid

ad

e in

icia

l (v0

em

m/s

) e

do

tem

po

de

pe

rcu

rso

(t

e

m

s).

C

alc

ula

r e

exib

ir a

ve

locid

ad

e f

ina

l d

e a

uto

ve

l em

km

/h.

Exib

ir m

en

sa

gem

de

aco

rdo

com

a

tab

ela

: F

órm

ula

da

ve

locid

ad

e e

m m

/s:

V =

v0

+ a

. t

30

. U

ma

e

sco

la

co

m

cu

rso

s

em

re

gim

e

se

me

str

al, r

ea

liza

du

as a

va

liaçõ

es d

ura

nte

o

sem

estr

e e

ca

lcu

la a

dia

do a

lun

o,

da

se

gu

inte

man

eira

: M

ED

IA =

(P

1 +

2P

2)

/ 3

F

aze

r u

m p

rog

ram

a p

ara

entr

ar

via

te

cla

do

co

m

os va

lore

s d

as n

ota

s (P

1 e

P

2)

e ca

lcu

lar

a

dia

. E

xib

ir

a

situ

açã

o

fin

al

do

alu

no

(“A

pro

va

do

o

u

Re

pro

va

do

”),

sa

be

nd

o

qu

e

a

dia

de

apro

va

ção

é ig

ua

l a

cin

co

.

31

. U

ma

e

sco

la

co

m

cu

rso

s

em

re

gim

e

se

me

str

al

rea

liza

du

as a

va

liaçõ

es d

ura

nte

o

sem

estr

e e

ca

lcu

la a

dia

do a

lun

o,

da

se

gu

inte

man

eira

: M

ED

IA =

(P

1 +

2P

2)

/ 3

F

aze

r u

m p

rog

ram

a p

ara

entr

ar

via

te

cla

do

co

m

o va

lor

da p

rim

eira

n

ota

(P

1)

e o p

rog

ram

a

deve

rá c

alc

ula

r e e

xib

ir q

uanto

o a

luno

pre

cis

a

tira

r n

a s

eg

und

a n

ota

(P

2)

pa

ra s

er

apro

va

do

, sa

be

nd

o q

ue a

dia

de

apro

va

ção

é i

gu

al

a

cin

co.

Page 61: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 59

Figura 13 – Folder 05 - Estruturas de Repeticao

O q

ue s

ão

estr

utu

ras d

e r

ep

eti

ção

?

Em

a

lgu

ma

s

ocasiõ

es

de

um

p

rog

ram

a

o

nece

ssária

s

exe

cuta

r um

d

ete

rmin

ad

o

dig

o

rep

etid

as v

eze

s.

De

acord

o c

om

as c

ondiç

ões d

ete

rmin

ad

as n

o

co

nd

içã

o d

e c

ontin

ua

ção

do lo

op,

um

a e

str

utu

ra

de r

epe

tição f

az o

exe

cuçã

o d

o c

ódig

o a

té q

ue

esse c

ond

içã

o s

e to

rne v

erd

ad

eira

. Q

uais

e

str

utu

ras

pre

cis

am

os

de

um

a

lin

gu

ag

em

de p

rog

ram

açã

o p

ara

des

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Lóg

ico

s

Co

mp

ara

çã

o

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

Ap

resen

tar

os o

pe

rado

res d

e r

ep

etiçã

o (

Fo

r e

While

) a

ssim

com

o s

ua u

tiliz

açã

o n

a lin

gu

agem

Ja

va

.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

PA

RT

E I

II –

Op

erad

ore

s de

Rep

etiç

ão.

Be

lém

/Pará

2018

Page 62: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 60

Es

tru

tura

de R

ep

eti

ção

Fo

r A

in

str

ução

d

e

repetiçã

o

Fo

r p

erm

ite

espe

cific

ar

um

a

ação

repe

tida

s

ve

ze

s

enq

uan

to

um

a

co

nd

içã

o

for

ve

rdad

eira

. E

ssa

estr

utu

ra

possu

i o

se

gu

inte

fo

rma

to:

for

( in

icia

liza

çã

o;

co

ndiç

ão

DeC

on

tin

ua

ção

; in

cre

me

nto

) {

in

str

ução

}

Es

tru

tura

de R

ep

eti

ção

Wh

ile

A

instr

ução

de

repetiçã

o

wh

ile,

ve

rifica

um

a

co

nd

içã

o

esta

be

lecid

a,

ação

a

repetid

a

enq

uanto

um

a

co

ndiç

ão

perm

ane

cer

ve

rdad

eira

. E

ssa

estr

utu

ra

possu

i o

se

gu

inte

fo

rma

to:

wh

ile (

co

nd

içã

o )

{

instr

ução

}

Page 63: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 61

Figura 14 – Folder 06 - Exercıcios Operadores de Repeticao

O

qu

e s

ão

estr

utu

ras d

e r

ep

eti

ção

?

Em

a

lgu

ma

s

ocasiõ

es

de

um

p

rog

ram

a

o

nece

ssária

s

exe

cuta

r um

d

ete

rmin

ad

o

dig

o

rep

etid

as v

eze

s.

De

acord

o c

om

as c

ondiç

ões d

ete

rmin

ad

as n

o

co

nd

içã

o d

e c

ontin

ua

ção

do lo

op

, um

a e

str

utu

ra

de r

epe

tição f

az o

exe

cuçã

o d

o c

ódig

o a

té q

ue

essa c

ond

içã

o s

e to

rne v

erd

ad

eira

. Q

uais

e

str

utu

ras

pre

cis

am

os

de

um

a

lin

gu

ag

em

de p

rog

ram

açã

o p

ara

des

en

vo

lve

r p

rog

ram

as

?

Op

era

dore

s:

Ma

tem

áticos

Lóg

ico

s

Co

mp

ara

çã

o

Va

riáve

is

Fun

çõe

s

Fun

çõe

s d

e E

ntr

ada

Fun

çõe

s d

e S

aíd

a

Ob

jeti

vo

da

Cart

ilh

a:

Ap

resen

tar

os o

pe

rado

res d

e r

ep

etiçã

o (

Fo

r e

While

) a

ssim

com

o s

ua u

tiliz

açã

o n

a li

ngu

agem

Ja

va

.

Ori

en

tan

do

s:

D

ene

r R

obe

rto

S.

Rip

ard

o

W

ald

inei R

om

an

o C

ava

lca

nte

Ori

en

tad

or:

Fab

io d

e L

ima B

eze

rra

OF

ICIN

A D

E I

NT

RO

DU

ÇÃ

O A

L

ING

UA

GE

M D

E P

RO

GR

AM

ÃO

JA

VA

PA

RT

E I

II –

Op

erad

ore

s de

Rep

etiç

ão.

Be

lém

/Pará

2018

Page 64: Experiˆencias com Coding Dojo nos Cursos de Sistemas de ...bdta.ufra.edu.br/jspui/bitstream/123456789/232/1...Computação Ficha elaborada pela Bibliotecária Nilzete Ferreira Gomes

Referencias 62

Ex

erc

ício

s c

om

estr

utu

ras

de

re

pe

tiç

ão

32.

Cri

ar u

ma

roti

na

de

entr

ada

que

acei

te s

om

ente

um

val

or

posi

tivo.

33.

Entr

ar co

m

dois

val

ore

s via

te

clad

o,

onde

o

segundo

dev

erá

ser

mai

or

que

o

pri

mei

ro.

Cas

o

contr

ário

so

lici

tar

novam

ente

ap

enas

o

segundo

val

or.

34.

Entr

ar v

ia t

ecla

do c

om

o s

exo d

e det

erm

inad

o

usu

ário

, ac

eita

r so

men

te “

F”

ou “

M”

com

o r

espost

as

vál

idas

.

35. E

xib

ir a

tab

uad

a do n

úm

ero c

inco

no inte

rval

o d

e

um

a d

ez.

36. E

ntr

ar v

ia tec

lado c

om

um

val

or

qual

quer

. Tra

var

a dig

itaç

ão,

no s

enti

do d

e ac

eita

r so

men

te v

alore

s

posi

tivo

s. A

pós

a dig

itaç

ão, e

xib

ir a

tab

uad

a do v

alor

soli

cita

do, no i

nte

rval

o d

e um

a d

ez.

37.

Entr

ar v

ia t

ecla

do c

om

um

val

or

(X)

qual

quer

.

Tra

var

a d

igit

ação

, no s

enti

do d

e ac

eita

r so

men

te

val

ore

s posi

tivos.

S

oli

cita

r o

inte

rval

o

que

o

pro

gra

ma

que

dev

erá

calc

ula

r a

tabuad

a do val

or

dig

itad

o,

sendo q

ue

o s

egundo v

alor

(B),

dev

erá

ser

mai

or

que

o pri

mei

ro (A

), ca

so co

ntr

ário

, dig

itar

novam

ente

som

ente

o s

egundo. A

pós

a val

idaç

ão d

os

dad

os,

ex

ibir

a

tabuad

a do

val

or

dig

itad

o,

no

inte

rval

o d

ecre

scen

te,

ou s

eja,

a t

abuad

a de

X n

o

inte

rval

o d

e B

par

a A

.

38.

Exib

ir a

tab

uad

a dos

val

ore

s de

um

a v

inte

, no

inte

rval

o d

e um

a d

ez.

Entr

e as

tab

uad

as,

soli

cita

r

que

o u

suár

io p

ress

ione

um

a te

cla.

39.

Exib

ir a

som

a dos

núm

eros

inte

iros

posi

tivos

do

inte

rval

o d

e um

a c

em.

40.

Exib

ir os

trin

ta pri

mei

ros

val

ore

s da

séri

e de

Fib

onac

ci. A

sér

ie:

1, 1, 2, 3, 5, 8, ...

41.

Exib

ir os

vin

te pri

mei

ros

val

ore

s da

séri

e de

Ber

gam

asch

i. A

sér

ie:

1, 1, 1, 3, 5, 9, 17,

...

42.

Cal

cula

r e

exib

ir

a so

ma

dos

“N”

pri

mei

ros

val

ore

s da

sequên

cia

abai

xo.

O

val

or

“N”

será

dig

itad

o,

dev

erá

ser

posi

tivo,

mas

men

or

que

cem

.

Cas

o

o

val

or

não

sa

tisf

aça

a re

stri

ção,

envia

r

men

sagem

de

erro

e s

oli

cita

r o v

alor

novam

ente

.

A s

equên

cia:

2, 5, 10, 17, 26, ....

43.

Cal

cula

r e

exib

ir

a so

ma

dos

“N”

pri

mei

ros

val

ore

s da

sequên

cia

abai

xo.

O

val

or

“N”

será

dig

itad

o,

dev

erá

ser

posi

tivo,

mas

m

enor

que

cinquen

ta.

Cas

o o val

or

não

sa

tisf

aça

a re

stri

ção,

envia

r m

ensa

gem

de

erro

e

soli

cita

r o

val

or

novam

ente

.

A s

equên

cia:

1/2

, 2/3

, 3/4

, 4

/5, ....

44.

Cal

cula

r e

exib

ir

a so

ma

dos

“N”

pri

mei

ros

val

ore

s da

sequên

cia

abai

xo.

O

val

or

“N”

será

dig

itad

o,

dev

erá

ser

posi

tivo,

mas

m

enor

que

cinquen

ta.

Cas

o o val

or

não

sa

tisf

aça

a re

stri

ção,

envia

r m

ensa

gem

d

e er

ro

e so

lici

tar

o

val

or

novam

ente

.

A s

eqüên

cia:

2, 5

/8, 10

/27

, 17

/64…

45.

Entr

ar via

te

clad

o co

m dez

val

ore

s posi

tivos.

Consi

stir

a d

igit

ação

e e

nvia

r m

ensa

gem

de

erro

, se

nec

essá

rio

. A

pós

a dig

itaç

ão, ex

ibir

:

a) O

mai

or

val

or;

b)

A s

om

a dos

val

ore

s; c

) A

méd

ia

arit

mét

ica

dos

val

ore

s;

46. E

ntr

ar v

ia t

ecla

do c

om

“N

” val

ore

s quai

squer

. O

val

or

“N”

(que

repre

senta

a q

uan

tidad

e de

núm

eros)

será

dig

itad

o,

dev

erá

ser

posi

tivo,

mas

men

or

que

vin

te.

Cas

o a

quan

tidad

e não

sat

isfa

ça a

res

triç

ão,

envia

r m

ensa

gem

de

erro

e

soli

cita

r o

val

or

novam

ente

. Após

a dig

itaç

ão d

os

“N”

val

ore

s, e

xib

ir:

a) O

mai

or

val

or;

b)

O m

enor

val

or;

c)

A s

om

a dos

val

ore

s; d)

A m

édia

ar

itm

étic

a dos

val

ore

s; e)

A

porc

enta

gem

de

val

ore

s que

são

posi

tivos;

f)

A

porc

enta

gem

de

val

ore

s neg

ativ

os;

47. E

ntr

ar v

ia t

ecla

do c

om

“N

” val

ore

s quai

squer

. O

val

or

“N”

(que

repre

senta

a q

uan

tidad

e de

núm

eros)

será

dig

itad

o,

dev

erá

ser

posi

tivo,

mas

men

or

que

vin

te.

Cas

o a

quan

tidad

e não

sat

isfa

ça a

res

triç

ão,

envia

r m

ensa

gem

de

erro

e

soli

cita

r o

val

or

novam

ente

. Após

a dig

itaç

ão d

os

“N”

val

ore

s, e

xib

ir:

a) O

mai

or

val

or;

b)

O m

enor

val

or;

c)

A s

om

a dos

val

ore

s; d)

A m

édia

ar

itm

étic

a dos

val

ore

s; e)

A

porc

enta

gem

de

val

ore

s que

são

posi

tivos;

f)

A

porc

enta

gem

de

val

ore

s neg

ativ

os;

Após

exib

ir o

s dad

os,

per

gunta

r ao

usu

ário

de

des

eja

ou n

ão u

ma

nova

exec

uçã

o d

o p

rogra

ma.

Consi

stir

a

resp

ost

a no s

enti

do d

e ac

eita

r so

men

te “

S”

ou “

N”

e

ence

rrar

o p

rogra

ma

em f

unçã

o d

essa

res

post

a.

48. C

alcu

lar

o f

atori

al d

e um

val

or

que

será

dig

itad

o.

Est

e val

or

não

poder

á se

r neg

ativ

o.

Envia

r

men

sagem

de

erro

e s

oli

cita

r o v

alor

novam

ente

, se

nec

essá

rio.

Per

gunta

r se

o usu

ário

des

eja

ou não

faze

r um

novo c

álcu

lo,

consi

stir

a r

espost

a em

“S

ou “

N”.

49. O

jogo d

a m

ega-s

ena

consi

ste

em a

cert

ar s

eis

dos

sess

enta

núm

eros

dis

ponív

eis

em u

m v

ola

nte

. F

azer

um

pro

gra

ma

par

a ca

lcula

r a

quan

tidad

e de

jogos

que

tem

os

que

faze

r, p

ara

com

cer

teza

ace

rtar

o r

esult

ado

da

mega-s

ena.

Adm

itin

do q

ue

fare

mos

jogos

de

seis

núm

eros

por

vola

nte

, o p

rogra

ma

dev

erá

exib

ir q

uai

s

seri

am

este

s nú

mer

os

em

cada

vola

nte

, ou

seja

,

exib

ir t

odos

os

resu

ltad

os

poss

ívei

s.