American Journal of Education and Information Technology

| Peer-Reviewed |

Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python

Received: 08 April 2020    Accepted: 08 May 2020    Published: 17 July 2020
Views:       Downloads:

Share This Article

Abstract

Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects.

DOI 10.11648/j.ajeit.20200402.12
Published in American Journal of Education and Information Technology (Volume 4, Issue 2, December 2020)
Page(s) 50-55
Creative Commons

This is an Open Access article, distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution and reproduction in any medium or format, provided the original work is properly cited.

Copyright

Copyright © The Author(s), 2024. Published by Science Publishing Group

Keywords

Recursion, Geometry, Computer Graphics, Fractal, Python

References
[1] Athena Vakali, I. Giannopoulos, N. Ioannidis, C. Koilias, K. Malamas, Y. Manolopoulos and P. Politis, Application development in a programming environment, Athens: Institute of Education Policy, 1999. (in Greek).
[2] D. Georgiou, E. Antoniou and A. Chatzimichailidis, Discrete Mathematical Structures in Computer Science, Athens: Hellenic Academic Libraries Link, 2015. (in Greek).
[3] K. Gödel, "Die vollständigkeit der axiome des logischen Funktionenkalküls," Monatshefte für Mathematik, 37 (1), 1930, pp. 349-360.
[4] A. Church, "A note on the Entscheidungsproblem," The journal of symbolic logic, 1 (1), 1936, pp. 40-41.
[5] A. M. Turing, “Computability and λ-definability”, The Journal of Symbolic Logic, 2 (4), 1937, pp. 153-163.
[6] S. C. Kleene, “General recursive functions of natural numbers”, Mathematische Annalen, 112 (1), 1936, pp. 727-742.
[7] E. L. Post, “Recursively enumerable sets of positive integers and their decision problems”, Bulletin of the American Mathematical Society, 50 (5), 1944, pp. 284-316.
[8] M. M. Syslo and A. B. Kwiatkowska (2014) Introducing Students to Recursion: A Multi-facet and Multi-tool Approach. In: Gülbahar Y., Karataş E. (eds) Informatics in Schools. Teaching and Learning Perspectives. ISSEP 2014. Lecture Notes in Computer Science, vol 8730. Springer, Cham.
[9] Renée McCauley, Scott Grissom, Sue Fitzgerald and Laurie Murphy (2015). Teaching and learning recursive programming: a review of the research literature. Computer Science Education, 25: 1, 37-66, DOI: 10.1080/08993408.2015.1033205.
[10] B. B. Mandelbrot, “The fractal geometry of trees and other natural phenomena,” in Geometrical probability and biological structures: Buffon’s 200th anniversary. Springer, 1978, pp. 235-249.
[11] K. Falconer, “Fractal geometry: Mathematical foundations and applications”, 3rd ed., New Jersey: John Wiley & Sons, 2014.
[12] M. F. Barnsley, “Fractals Everywhere”, 3rd ed., Dover Publications, Inc., New York, 2012.
[13] V. Drakopoulos, “Scientific and artistic creation as assistants in the educational process”, Geometry: From science to application, 2012, p. 12. (in Greek).
[14] C. Song, S. Havlin and H. A. Makse, “Self-similarity of complex networks”, 433 (7024), 2005, p. 392.
[15] Leoni Evaggelatou-Dalla and V. Drakopoulos, “The new dimension of educational mathematical thinking”, in 14th Panhellenic Conference on Mathematical Education, Hellenic Mathematical Society, 1997, pp. 235-242. (in Greek).
[16] S. I. Oikonomidis and G. T. Kalkanis, “Repetitive Procedures in Natural Science, in Mathematics and in Informatics Education”. in Didactics of Physical Science and New Technologies in Education. 2007. (in Greek).
[17] A. Aggelis, N. Alexandris, P. Georgiadis, K. Gyrtis, A. Kostakos, A. Raptis, and L. Stergiopoulou-Kalantzi, Third Grade of Junior High School Informatics, Athens: School Book Publishing Organization (OEDB), 1997. (in Greek).
[18] B. S. Elenbogen and M. R. O'Kennon, “Teaching recursion using fractals in Prolog”, ACM SIGCSE Bulletin, 20 (1), 1988, pp. 263-266.
[19] V. Drakopoulos and P.-V. Sioulas, “Teaching Recursion to Junior-High School Students with the use of fractals: a complete lesson plan” in 10th Conference on Informatics in Education. Thessaloniki, 2018. (in Greek).
Author Information
  • Department of Computer Science and Biomedical Informatics, Faculty of Science, University of Thessaly, Lamia, Greece

  • Department of Computer Science and Biomedical Informatics, Faculty of Science, University of Thessaly, Lamia, Greece

Cite This Article
  • APA Style

    Vasileios Drakopoulos, Panagiotis-Vlasios Sioulas. (2020). Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python. American Journal of Education and Information Technology, 4(2), 50-55. https://doi.org/10.11648/j.ajeit.20200402.12

    Copy | Download

    ACS Style

    Vasileios Drakopoulos; Panagiotis-Vlasios Sioulas. Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python. Am. J. Educ. Inf. Technol. 2020, 4(2), 50-55. doi: 10.11648/j.ajeit.20200402.12

    Copy | Download

    AMA Style

    Vasileios Drakopoulos, Panagiotis-Vlasios Sioulas. Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python. Am J Educ Inf Technol. 2020;4(2):50-55. doi: 10.11648/j.ajeit.20200402.12

    Copy | Download

  • @article{10.11648/j.ajeit.20200402.12,
      author = {Vasileios Drakopoulos and Panagiotis-Vlasios Sioulas},
      title = {Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python},
      journal = {American Journal of Education and Information Technology},
      volume = {4},
      number = {2},
      pages = {50-55},
      doi = {10.11648/j.ajeit.20200402.12},
      url = {https://doi.org/10.11648/j.ajeit.20200402.12},
      eprint = {https://download.sciencepg.com/pdf/10.11648.j.ajeit.20200402.12},
      abstract = {Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects.},
     year = {2020}
    }
    

    Copy | Download

  • TY  - JOUR
    T1  - Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python
    AU  - Vasileios Drakopoulos
    AU  - Panagiotis-Vlasios Sioulas
    Y1  - 2020/07/17
    PY  - 2020
    N1  - https://doi.org/10.11648/j.ajeit.20200402.12
    DO  - 10.11648/j.ajeit.20200402.12
    T2  - American Journal of Education and Information Technology
    JF  - American Journal of Education and Information Technology
    JO  - American Journal of Education and Information Technology
    SP  - 50
    EP  - 55
    PB  - Science Publishing Group
    SN  - 2994-712X
    UR  - https://doi.org/10.11648/j.ajeit.20200402.12
    AB  - Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects.
    VL  - 4
    IS  - 2
    ER  - 

    Copy | Download

  • Sections