• Nenhum resultado encontrado

6.3 PLANEJAMENTO DOS CÓDIGOS

6.3.6 Coleta e Análise de Dados

Para o processo de análise de dados, além dos códigos computacionais desenvolvidos baseado nas atividades já executadas em sala de aula, atividades de fixação e um teste final respondido em papel foram aplicados, sendo usados os seguintes instrumentos de coleta de dados: códigos computacionais; avaliação processual; diário de campo, atividades e questionários para professora e alunos.

O teste aplicado possuía questões objetivas e descritivas e se apoiava em dois momentos para avaliação da nota. O aluno deveria resolver a questão matemática para, em seguida, desenvolver o código desta mesma questão. Caso resolvesse somente um destes momentos, seria dado somente uma pontuação, caso contrário, as duas.

A avaliação teve como objetivo analisar a lógica que os alunos utilizaram até chegar ao final da resposta e se o uso da programação teve impactos relevantes para a resolução dos conteúdos matemáticos e desenvolvimento do raciocínio lógico.

Aula por aula, o pesquisador fez um diário de campo a respeito do desenvolvimento dos alunos, fazendo comparações com aulas anteriores e notando quais pontos cada aluno precisava aprimorar ou onde houve evolução cognitiva. Assim, foi possível trabalhar determinados aspectos de forma individual com estes alunos.

Outra forma de mensurar a evolução dos alunos no conteúdo matemático se deu por meio de atividades propostas pelo pesquisador. O aluno devia responder primeiro a questão matemática e somente após a resposta, que pode ocorrer com o auxílio do pesquisador, estes alunos levariam para o desenvolvimento dos códigos, com o conhecimento prévio, os códigos podiam ser desenvolvidos, e cada dúvida que surgia, o pesquisador estava pronto para auxiliar.

Baseado nas anotações semanais sobre o desenvolvimento cognitivo dos alunos, novas atividades foram desenvolvidas para o grupo, buscando preencher as lacunas deixadas em branco, que vem simbolizar os conteúdos que estes alunos não evoluíram com a utilização da programação de computadores e fixar o conteúdo nos alunos que não encontraram maiores problemas no desenvolvimento matemático e computacional.

No decorrer de dois meses (fevereiro e março), foi utilizado com os alunos a linguagem Python como ponte para o complemento do conhecimento já adquirido em sala de aula. O pesquisador aplicou atividades em forma de códigos de programação para testar o conhecimento dos participantes em linguagem de programação e no conteúdo, além de poder constatar que a utilização da programação pode contribuir para o processo educacional.

Em parceria com a professora da disciplina de matemática, os alunos envolvidos no projeto e os não envolvidos foram avaliados pela professora no decorrer de dois meses, sendo respondido posteriormente via questionário.

Com isso, os dados obtidos vão sendo formados e ao finalizar o projeto, estes são comparados, demonstrando a contribuição da programação no desenvolvimento do raciocínio lógico destes alunos, favorecendo a obtenção do conhecimento e resolução dos problemas e atividades da apostila.

Além das avaliações feitas pelo professor pesquisador, um questionário foi aplicado junto aos alunos envolvidos na pesquisa, visando levantar as opiniões a respeito do uso da programação como complemento ao conteúdo aprendido em sala de aula, conforme apresentado no APÊNDICE D.

Portanto, para validar os dados da pesquisa, é utilizada a análise de conteúdos na pesquisa qualitativa do referido projeto, seguindo o modelo proposto por diversos autores, por Bardin (1977) e Moraes (1999), a saber: Preparação das informações; Unitarização ou transformação do conteúdo em unidades; Categorização ou classificação das unidades em categorias; Descrição e Interpretação.

Desta forma, o processo de coleta e análise de dados se encontrará completo e a linguagem de programação Python que também será avaliada, poderá ser apresentada como um meio para o processo de ensino e aprendizagem na disciplina de matemática.

7 ANÁLISE DE DADOS

Este capítulo tem por objetivo apresentar os resultados da pesquisa desenvolvida, tomando como base os exemplos e atividades criados em sala de aula e a prova aplicada aos alunos. Todo este processo visa a compreensão e utilização da aprendizagem significativa alinhada a construção e/ou complemento do conhecimento já obtido em sala de aula por meio da programação de computadores.

Para este processo de análise dos resultados, foi levado em consideração o conhecimento em linguagens de programação lúdicas, o que os beneficiaram no processo de aprendizagem de uma nova linguagem, além do raciocínio lógico utilizado no desenvolvimento de cada código computacional, mesmo que o resultado final não tenha sido correto, o pesquisador pode avaliar todo processo da lógica de cada aluno na resolução dos problemas.

Para a análise dos resultados, utilizou-se a metodologia da análise de conteúdo de Bardin (1977), no qual o autor afirma que a intenção desta metodologia está relacionada a “inferência de conhecimentos relativos às condições de produção (ou, eventualmente, de recepção), inferência esta que recorre a indicadores (quantitativos ou não).” (BARDIN, 1977, p.38).

Desta forma, a presente pesquisa analisou as contribuições que a linguagem Python proporcionou no aprendizado matemático aos alunos participantes durante o período de um bimestre.

Sendo assim, é detalhado a seguir os códigos desenvolvidos junto a avaliação aplicada, tendo como metodologia e análise de conteúdo sob uma perspectiva construcionista e a aprendizagem significativa.

7.1 SEQUÊNCIA NUMÉRICA

O código da sequência numérica objetiva detalhar o processo do cálculo desta sequência juntamente com a sua apresentação na IDE da linguagem. Portanto, no início das aulas foram levados alguns problemas para serem resolvidos pelos alunos com o auxílio do professor. Estes problemas eram convertidos posteriormente em códigos computacionais.

Para que o conteúdo pudesse ser resolvido, o princípio básico apresentado na aprendizagem significativa (conhecimento prévio) era utilizado, ou seja, o conhecimento prévio a respeito do conteúdo. Isto possibilitava ao aluno, em alguns casos, usar seu conhecimento prévio para elaborar uma possível resposta do problema.

Desta forma, foi apresentada a seguinte sequência numérica para os alunos, bem como seu resultado, conforme apresentado na Figura 8.

Figura 8 - Exemplo Sequência numérica

Fonte: Autoria própria

Por meio da linguagem de programação, estes alunos podiam detalhar a fórmula para apresentação dos valores solicitados. De acordo com o era pedido na atividade, os alunos detalhavam com o auxílio do pesquisador os comandos list e range, necessário para solucionar o problema e apresentado na Figura 9.

Figura 9 - Sequência numérica com intervalos de cinco valores

Fonte: Autoria própria

Nota-se que o resultado final da lista apresenta em sua última casa o valor – 25 -, isto ocorre pois o computador entende o número – 0 – como sendo o primeiro valor a ser alocado na primeira casa.

É importante ressaltar que, as cores que identificam cada comando na IDE, se tornam meios de memorização para determinados comandos e, ao memorizar

list(range(0,30,5) )

[0, 5, 10, 15, 20, 25]

as cores, os alunos compreendiam que tais comandos eram fundamentais para a apresentação dos resultados, seja por meio de comandos de decisão, comandos para entrada de texto ou até mesmo cores que indicavam apresentação de um determinado texto para o usuário, conforme apresentado na Figura 10.

Figura 10 - Listagem de uma sequência com 5 valores

Fonte: Autoria própria

Para a análise dos códigos desenvolvidos, foram definidos um conjunto de critérios contidos no Quadro 1.

Quadro 1 - Critérios Significativos Sequência Numérica

Adaptado de: Tramontin (2019)

Ausubel (2000) descreve a importância de um conhecimento prévio no processo de obtenção de novos conhecimentos. Desta forma, no processo anterior a utilização da programação, o pesquisador indagou os alunos a respeito do problema apresentado no quadro. Este processo tinha como objetivo estimular os subsunçores, a fim de observar as respostas dos alunos e verificar o conhecimento já obtido a respeito.

Assim, o pesquisador fez o uso do seguinte diálogo com os dois grupos da pesquisa: CÓDIGO SEQUÊNCIA NUMÉRICA OBJETIVO DO CONTEÚDO Compreensão de sequências numéricas e seus modos de apresentação OBJETIVO DO CÓDIGO Detalhar o processo para obtenção do resultado do problema e possibilitar novos meios para sua resolução. TIPOS DE APRENDIZAGEM SIGNIFICATIVA Representacional Conceitual FORMAS DE APRENDIZAGEM SIGNIFICATIVA Subordinada

P: Como podemos resolver a sequência numérica? A03: Colocamos todos os valores até 30, professor.

A01, A02: Podemos colocar valores de cinco em cinco até chegar a 30, professor.

P: E como ficaria o resultado? A02: 5,10,15,20,25,30

P: Todos concordam? A01, A02, A03: Sim.

É possível notar uma compreensão por parte dos alunos A1 e A2, por mais que o aluno A3 tenha informado um valor errôneo, no momento em que os demais colegas apresentaram a reposta, seu subsunçor o fez notar que a resposta apresentada era a correta, mesmo que em um primeiro momento sua resposta não tenha sido a mesma que a dos colegas e com o resultado apresentado no quadro.

No segundo grupo, o professor apresentou o mesmo problema e lançou a mesma pergunta:

P: Como podemos resolver a sequência numérica? A06: Podemos mostrar o valor de 5 em 5, professor. A04: Não sei professor.

P: Alguém tem mais sugestões?

P: A resposta da aluna A6 está correta, valores com um intervalo de 5 em 5. P: Turma, como ficaria o resultado então, falem para o professor?

Todos: 5, 10, 15, 20, 25, 30

Em ambos os grupos foi possível notar a compreensão de alguns e uma pequena parcela possuindo dúvidas sobre a resolução do problema proposto. No decorrer da explicação da sequência, foi possível notar a utilização de um conhecimento já existente por parte dos alunos.

Porém, alguma parte dos dois grupos se sentiam apreensivos por estarem aprendendo algo novo, um novo meio para resolução de problemas, vindo a sentir medo de errar. Ao finalizar a aula houve o seguinte diálogo:

A04, A10: Professor, fiquei com medo de errar, eu não sou boa em matemática. P: Não precisa ter este medo, estamos aqui para aprender e com os erros vamos chegar nos acertos.

A04, A10: Tudo bem professor.

É possível notar certa insegurança por parte dos alunos neste primeiro momento, receio de algo novo, de que isso possa afetar seu desempenho acadêmico e cognitivo, para tanto, o pesquisador precisou tranquiliza-los em relação aos seus medos, os familiarizando e os deixando mais à vontade na resolução das atividades que foram baseadas no exemplo apresentado.

Após a explicação do problema e as atividades propostas tendo como molde o exemplo apresentado, estes alunos são levados à aprendizagem dos tipos representacional, e assim, símbolos passam a representar determinados objetos (MOREIRA, 2012, p.16), e conceitual, no qual os participantes passam a notar regularidades nestas atividades, seguindo padrões para a resolução de cada problema (MOREIRA, 2012, p.16).

No segundo momento era apresentada a resolução da sequência numérica, agora por meio de códigos computacionais, sendo possível detalhar cada comando e testando seus resultados, conforme apresentado na Figura 9.

Por meio da exemplificação detalhada que é preciso na programação, foi possível complementar a compreensão dos alunos, pois o pesquisador precisou explicar a ordem para início e final da execução do código, detalhando os motivos para chegar no resultado final e, neste caso, os valores 0, 5, 10, 15, 20, 25.

Para os alunos que ainda possuíam alguma dificuldade, o pesquisador voltava ao quadro com toda turma e retomava a explicação, a fim de fixar a ideia central do problema e sua resolução. Este “esquecimento” podia acontecer por vários motivos, porém, era possível notar que era apenas necessário estimular o conhecimento prévio deles para que o processo de aprendizagem pudesse ocorre.

Este “esquecimento” foi notado com os alunos A3, A4, A8 e A10 e apresentado a seguir:

P: Em que momento não está ficando claro como a sequência é apresentada? A04: Professor, não consigo entender os saltos de 5 em 5 e como sei se ele vai parar no 25 ou no 30.

P: Na programação, também podemos definir um valor inicial e um valor final, neste caso, determinamos que o valor inicial seria 0, e o final 30, e um intervalo de 5. Vamos lá turma, até o valor 30 indo de 5 em 5, como vai ficar?

Todos: 0, 5, 10, 15, 20, 25.

P: A04, quantos valores apareceram de 5 até 30? A04: 6 valores professor.

P: Correto. Lembra que também podemos definir valores iniciais e finais, e que nossos valores iniciais e finais são 0 e 30 respectivamente?

A04: Sim.

P: Então de 0 até 30, com um limite de 6 valores e iniciando em 0, quantos valores vão ser apresentado?

A04: 0, 5, 10, 15, 20, 25.

P: Está correto como no quadro e no computador? A04: Sim professor, agora entendi.

No decorrer do desenvolvimento do código computacional é possível notar uma aprendizagem do tipo subordinada, que segundo Moreira (2012, p.3) vem a ser, “aquela na qual um novo conhecimento adquire significado na ancoragem interativa com algum conhecimento prévio especificamente relevante”, ou seja, estes alunos no decorrer das aulas obtiveram um complemento de um conhecimento já existente, devido a um subsunçor que poderá se tornar forte com o tempo, por meio da aplicação de atividades complementares.

7.1.1 Operações Matemáticas

O segundo conteúdo que os alunos apresentavam dificuldades estava relacionado as operações matemáticas, principalmente valores que faziam uso de multiplicação de grandes números, por exemplo, a multiplicação de - 3x15 -, a qual tem por resultado 45 e estes alunos levavam um certo tempo para chegar ao resultado final e em alguns casos, o resultado era apresentado de forma errônea.

Anterior ao desenvolvimento dos códigos, o pesquisador levou ao quadro as quatro operações básicas da matemática, sendo a adição; subtração; multiplicação e divisão. Ao descrever no quadro os problemas, os alunos apresentaram os resultados juntamente com o professor, conforme mostra a Figura 11.

Figura 11 - Operações Matemáticas

Fonte: Autoria Própria

Por possuir uma informação prévia da dificuldade que os alunos possuíam no operador da multiplicação, foi lançado um valor relativamente alto para que estes pudessem resolver o problema, para tanto, houve um pequeno diálogo:

P: Qual o primeiro passo desta multiplicação? Alunos: Multiplicar o 3x5 primeiro.

P: Qual o resultado? A07: O resultado é 15. P: Qual valor ficará. A04: O 5, professor.

P: Não seria o 1? Pois o maior fica e o menor vai para cima. P: Qual o restante do resultado?

A05: 3x4 é 12 e somando com 1, fica 135, professor.

Após este diálogo foi possível notar certa timidez dos alunos para responder as perguntas feitas pelo pesquisador. Com base no diálogo, foi possível traçar três exemplos que viriam a utilizar diretamente o conhecimento prévio dos alunos neste cálculo, juntamente com o princípio do construcionismo.

Para a resolução do problema por meio de código computacional, foi analisado o seguinte esquema encontrado na Quadro 2.

Quadro 2 - Critérios Significativos Operações Matemáticas CÓDIGO OPERAÇÕES MATEMÁTICAS OBJETIVO DO CONTEÚDO Compreensão do cálculo matemáticos envolvendo valores grandes. OBJETIVO DO CÓDIGO Detalhar três meios computacionais para resolução e apresentação do problema. TIPOS DE APRENDIZAGEM SIGNIFICATIVA Representacional Conceitual FORMAS DE APRENDIZAGEM SIGNIFICATIVA Subordinada

Adaptado de: Tramontin (2019)

Para a exemplificação e compreensão do cálculo, três exemplos foram desenvolvidos e utilizados pelos alunos, sendo o primeiro exemplo com valores pré- definidos, o segundo com uma pergunta do resultado ao usuário e o terceiro no qual o computador pergunta os valores ao usuário, deixando o restante do cálculo com a máquina.

No primeiro código computacional utilizou-se valores pré-definidos pelos alunos e, neste caso, foram utilizadas duas variáveis para armazenar os valores e uma terceira para fazer a multiplicação das duas primeiras variáveis, conforme apresentado abaixo:

a = 3 b = 27 c = a*b

print("O resultado é: ",c)

O resultado é: 81

É destacado que neste primeiro exemplo a máquina fazia a multiplicação de forma automática, sem que haja interferência dos alunos, porém, antes do desenvolvimento do código, cada aluno fazia sua multiplicação no caderno, conforme apresentado na Figura 12.

Ao finalizar a multiplicação, era levado para o computador o seu desenvolvimento.

Figura 12 - Contas Multiplicação Parte I.

Fonte: Autoria própria

Este primeiro código serviu também para que os alunos delinearem as informações antes de fazer o cálculo. Mesmo que tenha sido o computador, os alunos puderam detalhar os valores, separando-os em variáveis (a e b), armazenando estes valores para que a máquina entenda o que está sendo pedido. O segundo código estava relacionado ao computador, perguntar ao usuário dois valores que, ao serem informados, eram multiplicados sem que o usuário pré- definisse uma resposta obrigatória. O código está detalhado conforme visualizado na Figura 13:

Figura 13 - Cálculo com entrada de dois valores

Fonte: Autoria própria

Assim como no primeiro código, este demonstrava a organização do código por meio de variáveis, e repetindo a formula, os alunos deveriam fazer o cálculo em primeiro lugar no caderno, antes de levar para o computador, conforme a Figura 14. Ao finalizar a execução, era comparado os resultados.

val1 = float(input("Informe o primeiro valor: "))

val2 = float(input("Informe o segundo valor: "))

calc = val1 * val2

Figura 14 - Contas Multiplicação Parte II.

Fonte: Autoria própria

O terceiro e último código possuía um nível maior de complexidade e, ao mesmo tempo, se tornava completo nos seus moldes. Neste exemplo surgiu algumas dúvidas dos alunos em relação a lógica da programação. A Figura 15 detalha o código desenvolvido.

Figura 15 - Cálculo utilizando comandos de decisão while e if

Fonte: Autoria própria

Não houve grandes dúvidas por parte dos alunos na elaboração dos códigos nos primeiros exemplos, porém, o terceiro código por possuir maior número de comandos e comandos mais complexos, caso da condicional while, estes alunos entraram no processo de “esquecimento”, que Ausubel define como assimilação obliteradora, ou seja, há um esquecimento residual do conhecimento existente para a obtenção de um novo conhecimento, neste caso, computacional, não sendo por

print("Qual o resultado da multiplicação de 3x45?") print("\n")

resp_esperada = 135 resp_usuario = " "

while resp_usuario != resp_esperada:

resp_usuario = float(input("Informe o resultado: ")) if resp_usuario == resp_esperada:

print("Parabéns, você acertou!!!") else:

completo, sempre haverá um resíduo, permitindo reativar este conhecimento existente (MOREIRA, 2012, p.17).

Assim como nos demais exemplos, era preciso que os alunos resolvessem o problema no papel primeiro, para só após ser levado ao computador. Durante a elaboração do código surgiram dúvidas, que foram respondidas pelo pesquisador, conforme demonstrado no diálogo abaixo:

A05: Professor, por que não tem nada no resp_usuario?

P: Essa variável está vazia, pois é aqui que iremos armazenar momentaneamente a resposta que o usuário informar.

P: Note A05, que resp_usuario está recebendo a resposta do usuário logo que é perguntado “Informe o resultado”. Assim que recebermos a resposta, podemos comparar com a resposta esperada, que está armazenado na variável resp_esperada. A03: E para o que serve o while mesmo professor?

P: O While é uma condição, em uma tradução, while significa enquanto, ou seja, enquanto nossa condição não for satisfeita, que significa que até ela ser verdadeira, ou seja, a resposta do usuário foi igual a resposta que queremos, ele vai ficar repetindo a pergunta. Quando a resposta do usuário for verdadeira, o código é encerrado.

Por intermédio do exemplo desenvolvido com os alunos, notou-se que os estes possuíam um conhecimento prévio do conteúdo, sendo preciso ainda aprender a separar cada valor de um determinado enunciado, e a programação pode ajudar a sempre separar os valores por variáveis, para que só após este primeiro procedimento, o cálculo fosse realizado.

Para esta atividade, buscou-se utilizar a aprendizagem significativa nos tipos representacional, no momento da compreensão matemática por meio dos símbolos, e conceitual no momento da utilização da programação, possibilitando a criação de novos conceitos, além da utilização de uma aprendizagem na forma subordinada.

7.1.2 Expressão Numérica

O terceiro conteúdo apresentado aos alunos tinha como objetivo complementar o conhecimento referente ao conteúdo de expressão numéricas, dificuldades essas relatadas pelo questionário de levantamento e professora da disciplina. Dos problemas apresentados, viu-se organização errônea dos sinais, ou

seja, estes alunos encontravam problemas em organizar a ordem para resolver os cálculos de uma expressão numérica.

No início da aula foi realizado breve revisão do conteúdo, logo após, o desenvolvimento dos códigos. Uma expressão contida na apostila dos alunos e não trabalhada em sala de aula foi utilizado como exemplo. A expressão se dispunha da seguinte maneira: 85-{50-[15-(12-8)]}. Ela foi escrita no quadro e junto com os alunos foi possível foi possível chegar a sua resolução, conforme apresentado na Figura 16.

Figura 16 - Expressão numérica

Fonte: Autoria própria

Por meio de código computacional para a resolução do problema, foi analisado o seguinte esquema encontrado no Quadro 3.

Quadro 3 - Critérios Significativos Expressão Numérica

CÓDIGO EXPRESSÃO NUMÉRICA OBJETIVO DO CONTEÚDO Resoluções de expressões numéricas OBJETIVO DO CÓDIGO Organizar a

expressão por meio dos sinais ( ), [ ] e { }, desenvolvendo códigos de forma lóogica TIPOS DE APRENDIZAGEM SIGNIFICATIVA Representacional Conceitual FORMAS DE APRENDIZAGEM SIGNIFICATIVA Superordenada

Afim de proporcionar a compreensão dos alunos da ordem para resolução da expressão numérica, conforme apresentado na Figura 16, os participantes deveriam ter o mínimo possível para ordenar esta expressão, pois este conhecimento seria importante para que ao desenvolver o código, os alunos definissem as respostas esperadas que os usuários viessem a informar, conforme

Documentos relacionados