SlideShare uma empresa Scribd logo
Maratona deMaratona de
ProgramaçãoProgramação
Como auxiliar de ensino e aprendizado
Aluno Felipe Neves Brito
Prof. Me. Paulo Henrique M. de Araújo
Prof. Me. Arthur Rodrigues Araruna
UFC - Quixadá
RoteiroRoteiro
O que é a maratona
Como ela ajuda os alunos
O que é o GEMP
Quem pode participar
Problemas encontrados
Nossa solução
Resultados
O que é a Maratona de Programação?O que é a Maratona de Programação?
É uma competição
internacional
realizada pela ACM, onde equi-
pes se reúnem para resolver
problemas computacionais
complexos
Ao treinar para a MaratonaAo treinar para a Maratona
Os alunos exercitam habilidades como :Os alunos exercitam habilidades como :
Maior agilidade em escrever códigos
Melhor entrosamento em equipe
Maior facilidade em encontrar erros no código
Dentre outras
...E aprendem a modelar e resolver problemas computacionais
complexos no seu dia​-a​-dia
O que é o GEMP ?O que é o GEMP ?
Grupo de Estudos para a Maratona de
Programação
GEMP é um projeto de Extensão do Campus
de Quixadá que promove encontros
semanais para discutir e resolver problemas
semelhantes aos da Maratona
Quem pode participar doQuem pode participar do
GEMP ?GEMP ?
Conhecimentos adquiridos durante os
treinos para a maratona perpassam toda a
linha de conhecimento das principais
disciplinas de programação, de modo que
o GEMP pode atuar como auxiliar de
aprendizado destas disciplinas.
Alunos de todos os semestres e cursos!
ProblemasProblemas
Alunos iniciantes tem dificuldade em
entender o formato de saída pedido pelo
juíz online para a solução dos problemas e
acabam desistindo
ExemploExemplo
Código 1Código 1 Código 2Código 2
#include <iostream>
using namespace std;
int main(){
int A, B;
int X;
cin >> A;
cin >> B;
X = A + B;
cout << "X=" << X;
}
#include <iostream>
using namespace std;
int main(){
int A, B;
int X;
cin >> A;
cin >> B;
X = A + B;
cout << "X = " << X << endl;
}
SoluçãoSolução
Os alunos em um primeiro momento tem
a tarefa de preocupar​-se apenas com a
resolução do problema em si, deixando o
tratamento de entrada e saída para
quando estiverem mais experientes.
SoluçãoSolução
Foi criado um repositório de códigos no
qual, para desafios selecionados, todo o
código referente à entrada de dados e à
saída de dados estão previamente
implementados.
Cada desafio é dividido em
pequenas funções.
ExemploExemplo
#include <iostream>
using namespace std;
int soma(int A, int B){
// O aluno deve implementar essa função
}
int main(){ // O aluno não deve modificar a função main
int A, B;
int X;
X = soma(A,B);
cout << "X = " << X << endl;
}
ResultadosResultados
Durante os encontros do GEMP, essa
solução foi implementada com alunos do
1o semestre de FUP do semestre 2014.1.
Os resultados observados foram positivos,
pois os alunos conseguiram resolver
e submeter os problemas sem obter erro
de apresentação, que acontece quando
o aluno submete a resposta, esteja ela
certa ou não, com a exibição dos dados de
saída de forma incorreta.
ResultadosResultados
Percebeu​-se também que esse tipo de
exercício
fortalece o aprendizado de modularização
de programas, uma vez que há a divisão
do código dos problemas em pequenas
funções.
Obrigado!Obrigado!
ContatoContato
fb.com/felipenevesbrito
felipeneves@alu.ufc.br

Mais conteúdo relacionado

Semelhante a Maratona de Programação como auxiliar de ensino e aprendizado

Apresentação Competições
Apresentação CompetiçõesApresentação Competições
Apresentação Competições
Loiane Groner
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
Eduardo Jorge
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
Robson Ferreira
 
algoritmo construção
algoritmo construçãoalgoritmo construção
algoritmo construção
チアゴ モンテイロ
 
Revista programar 20
Revista programar 20Revista programar 20
Revista programar 20
Filipe Bezerra Sousa
 
Atps
AtpsAtps
01-Paradigmas.pdf
01-Paradigmas.pdf01-Paradigmas.pdf
01-Paradigmas.pdf
AmlieOGalaxias
 
Algoritmos
AlgoritmosAlgoritmos
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Prova de algoritmos e estrutura de dados
Prova de algoritmos e estrutura de dadosProva de algoritmos e estrutura de dados
Prova de algoritmos e estrutura de dados
Bruno Vale
 
Aula2
Aula2Aula2
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP
Frank Coelho
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
Frank Coelho
 
C curso - notas de aula
C   curso - notas de aulaC   curso - notas de aula
C curso - notas de aula
LoAlves21
 
(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação
Carlos Santos
 
Algoritomos aula 3 rafael
Algoritomos aula 3 rafaelAlgoritomos aula 3 rafael
Algoritomos aula 3 rafael
hugodrocha
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
Professor José de Assis
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
Armando Daniel
 
Minicurso de TDD
Minicurso de TDDMinicurso de TDD
Minicurso de TDD
William G. Comnisky
 
Macro br
Macro brMacro br
Macro br
Ari ferreira
 

Semelhante a Maratona de Programação como auxiliar de ensino e aprendizado (20)

Apresentação Competições
Apresentação CompetiçõesApresentação Competições
Apresentação Competições
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
 
algoritmo construção
algoritmo construçãoalgoritmo construção
algoritmo construção
 
Revista programar 20
Revista programar 20Revista programar 20
Revista programar 20
 
Atps
AtpsAtps
Atps
 
01-Paradigmas.pdf
01-Paradigmas.pdf01-Paradigmas.pdf
01-Paradigmas.pdf
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Analise Algoritmos
Analise AlgoritmosAnalise Algoritmos
Analise Algoritmos
 
Prova de algoritmos e estrutura de dados
Prova de algoritmos e estrutura de dadosProva de algoritmos e estrutura de dados
Prova de algoritmos e estrutura de dados
 
Aula2
Aula2Aula2
Aula2
 
1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP1- Apresentacao Metodologia RCP
1- Apresentacao Metodologia RCP
 
1 apresentacao metodologia rcp
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
 
C curso - notas de aula
C   curso - notas de aulaC   curso - notas de aula
C curso - notas de aula
 
(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação
 
Algoritomos aula 3 rafael
Algoritomos aula 3 rafaelAlgoritomos aula 3 rafael
Algoritomos aula 3 rafael
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 
Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Minicurso de TDD
Minicurso de TDDMinicurso de TDD
Minicurso de TDD
 
Macro br
Macro brMacro br
Macro br
 

Último

Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ismael Ash
 
Segurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptxSegurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptx
Divina Vitorino
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
Ismael Ash
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
ronaldos10
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
Faga1939
 
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdfEletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
barbosajucy47
 

Último (7)

Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
 
Segurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptxSegurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptx
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
 
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdfEletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
 

Maratona de Programação como auxiliar de ensino e aprendizado

  • 1. Maratona deMaratona de ProgramaçãoProgramação Como auxiliar de ensino e aprendizado Aluno Felipe Neves Brito Prof. Me. Paulo Henrique M. de Araújo Prof. Me. Arthur Rodrigues Araruna UFC - Quixadá
  • 2. RoteiroRoteiro O que é a maratona Como ela ajuda os alunos O que é o GEMP Quem pode participar Problemas encontrados Nossa solução Resultados
  • 3. O que é a Maratona de Programação?O que é a Maratona de Programação? É uma competição internacional realizada pela ACM, onde equi- pes se reúnem para resolver problemas computacionais complexos
  • 4. Ao treinar para a MaratonaAo treinar para a Maratona Os alunos exercitam habilidades como :Os alunos exercitam habilidades como : Maior agilidade em escrever códigos Melhor entrosamento em equipe Maior facilidade em encontrar erros no código Dentre outras ...E aprendem a modelar e resolver problemas computacionais complexos no seu dia​-a​-dia
  • 5. O que é o GEMP ?O que é o GEMP ? Grupo de Estudos para a Maratona de Programação GEMP é um projeto de Extensão do Campus de Quixadá que promove encontros semanais para discutir e resolver problemas semelhantes aos da Maratona
  • 6. Quem pode participar doQuem pode participar do GEMP ?GEMP ? Conhecimentos adquiridos durante os treinos para a maratona perpassam toda a linha de conhecimento das principais disciplinas de programação, de modo que o GEMP pode atuar como auxiliar de aprendizado destas disciplinas. Alunos de todos os semestres e cursos!
  • 7. ProblemasProblemas Alunos iniciantes tem dificuldade em entender o formato de saída pedido pelo juíz online para a solução dos problemas e acabam desistindo
  • 9. Código 1Código 1 Código 2Código 2 #include <iostream> using namespace std; int main(){ int A, B; int X; cin >> A; cin >> B; X = A + B; cout << "X=" << X; } #include <iostream> using namespace std; int main(){ int A, B; int X; cin >> A; cin >> B; X = A + B; cout << "X = " << X << endl; }
  • 10. SoluçãoSolução Os alunos em um primeiro momento tem a tarefa de preocupar​-se apenas com a resolução do problema em si, deixando o tratamento de entrada e saída para quando estiverem mais experientes.
  • 11. SoluçãoSolução Foi criado um repositório de códigos no qual, para desafios selecionados, todo o código referente à entrada de dados e à saída de dados estão previamente implementados. Cada desafio é dividido em pequenas funções.
  • 12. ExemploExemplo #include <iostream> using namespace std; int soma(int A, int B){ // O aluno deve implementar essa função } int main(){ // O aluno não deve modificar a função main int A, B; int X; X = soma(A,B); cout << "X = " << X << endl; }
  • 13. ResultadosResultados Durante os encontros do GEMP, essa solução foi implementada com alunos do 1o semestre de FUP do semestre 2014.1. Os resultados observados foram positivos, pois os alunos conseguiram resolver e submeter os problemas sem obter erro de apresentação, que acontece quando o aluno submete a resposta, esteja ela certa ou não, com a exibição dos dados de saída de forma incorreta.
  • 14. ResultadosResultados Percebeu​-se também que esse tipo de exercício fortalece o aprendizado de modularização de programas, uma vez que há a divisão do código dos problemas em pequenas funções.