Mathematics and Programming Problem Solving
Mathematics and Programming Problem Solving
net/publication/228411537
CITATIONS READS
31 5,678
4 authors, including:
SEE PROFILE
All content following this page was uploaded by Anabela Gomes on 01 June 2014.
evaluate mathematical ideas. It is very important to give students cubes, palindromes, factorials, Fibonacci numbers, maximum and
opportunities to reflect on and clarify their thinking about minimum common divider of two numbers, among others.
mathematical ideas. One of the obstacles they frequently cope
with in solving a programming problem lies in transforming a
2.7 Calculation and estimation
textual solution into mathematical language. As the experiences
Our main interest in this area was that the students could use
went on this standard was applied in an intensive way, because
estimation techniques in calculations and ratios, not especially to
we consider that the capacity to read, write, listen, discuss and
solve problems, but mainly to evaluate results. The evaluation and
interpret mathematics is a vital part of programming learning.
analysis of wrong results can constitute meaningful learning
opportunities in programming. So it is important that students can
2.3 Mathematics as means of reasoning be aware of them as soon as possible. While students try to
In successive sessions we presented to students different types of describe what they are doing and verify their answers, they are
logical problems which would train their abilities in inductive and simultaneously using conjectures to formulate new problems and
deductive reasoning. To help them we used a large amount of planning new strategies to answer them.
models, known facts, properties and relationships. The presented
exercises didn’t always have a direct translation in programming
2.8 Patterns and functions
terms, but they included fundamental aspects and concepts to
An important aspect of this standard deals with the capacity to
develop programming skills. Another aspect of this standard,
represent a real problem expressing its solution using a function.
considered to be a powerful strategy in problem solving, consisted
This is very important to develop abstraction skills and
on the identification of patterns and relationships to analyze
programming competences. Two types of important programming
mathematical solutions and certain types of regularities which is
problems can be connected with these competences. The first
the basic characteristic of inductive reasoning. The pupils were
deals with the concept of variable. The second concerns the
encouraged to validate their assumptions through the construction
capacity to observe simple situations and recognize that they can
of arguments that justify them, as well as carrying through
lead to a general method which can be applied to a variety of
generalizations or applications to new problems.
situations.
of problems. However, we observed that this difficulty Our research also includes a comparative study between the
was significantly reduced as they kept on solving that results the students obtained in the programming and
type of problems along the sessions. We considered that mathematical tests done in the beginning of the semester with
to be able to program the students should both apply the similar tests to be done after the semester ends. The idea was to
inductive and deductive reasoning, and validate their evaluate the impact the problem solving activities had on the
own thinking which should be trained in an intensive students’ abilities. Also, next academic year, when the students
manner. follow the initial programming course again, it will be possible to
study eventual improvements in these students programming
performance. Those will be the next steps of our work.
5. CONCLUSION AND FUTURE WORK
The experiences carried through during the second semester of
2005/2006 in the Superior Institute of Engineering of the 6. ACKNOWLEDGMENTS
Polytechnic of Coimbra were described in this paper. Throughout The authors would like to thank all students that participated in
the research the students belonging to the studied sample were the experience and especially to professor Francisco Pereira.
submitted to a series of problem solving exercises that were
directly or indirectly related to common beginners programming
7. REFERENCES
problems. The essential intention was to identify the students
[1] Gomes, A. and Mendes, A. J. A animação na aprendizagem
main gaps in mathematics and to analyse their influence on
de conceitos básicos de programação, Revista de Enseñanza
programming capacity. The analyses of the obtained results
y Tecnología, 13 (1999), 22-32.
indicate that the majority of the students don’t have basic
mathematical concepts, which reflects in their problem solving [2] Jenkins, T, On the difficulty of learning to program, In
ability and, therefore, in their low programming skills. With our Proceedings of the 3rd Annual LTSN- IC Conference (2002),
observations we could establish clearly that the lack of Loughborough University.
programming skills was accompanied by a deep lack of [3] Normas para a avaliação em matemática escolar. Associação
mathematical knowledge and skills and that the later many times de Professores de Matemática. (Out. de 1999).
was the main cause of the former. The capacity to program
consists of a hierarchy of multiple competences [4]. However we [4] Lister, R., Adams, E., Fitzgerald, S., Fone, W., Hamer, J.,
believe that many of them can be trained and improved, with Lindholm, M., McCartney, R., Moström, J., Sanders, K.,
persistence, determination and perseverance. Seppälä, O., Simon, B., Thomas, L. A Multi-National Study
of Reading and Tracing Skills in Novice Programmers,
SIGSCE Bulletin, 36, 4 (Dec. 2004), 119-150.