Comparación de dos algoritmos para hallar ternas pitagóricas usando dos paradigmas de programación diferentes

Palabras clave: algoritmo, programación funcional, programación imperativa, procesos cíclicos, recursión, ternas pitagóricas

Resumen

En este artículo, además de analizar las características algorítmicas de dos versiones de solución al problema de hallar ternas pitagóricas en un rango de 1 hasta n para n como un valor entero definido, se realiza una comparación entre la solución implementada a partir del paradigma de programación funcional, basado en lenguaje Scheme entorno Dr. Racket versión 6.1 y la solución implementada a partir del paradigma de programación imperativa utilizando lenguaje C++ arista estructurada entorno DevC++ Versión 5.8.0. La comparación de estas dos soluciones, vistas desde paradigmas de programación diferentes, se hace a nivel de codificación pura, a nivel de la lógica utilizada para resolverlo y a nivel del rendimiento y la eficiencia, apoyados en la medición de tiempos de proceso. Ambos programas presentan los resultados en dos formatos y la comparación de rendimiento se hace teniendo en cuenta el despliegue en la pantalla. Esta comparación no solo permite establecer relaciones entre los paradigmas de programación (paradigma funcional y paradigma imperativo) sino que posibilita el planteamiento de un híbrido que pudiera ser mucho más eficiente que ambos, pero a partir de lo más eficiente que cada uno puede aportar. Cada una de las implementaciones es totalmente original producto de la investigación y de la iniciativa y la experiencia del autor de este artículo.

Descargas

La descarga de datos todavía no está disponible.

Biografía del autor/a

Omar Iván Trejos Buriticá, Universidad Tecnológica de Pereira

Ingeniero de Sistemas. Especialista en Instrumentación Física. Magister en Comunicación Educativa. PhD en Ciencias de la Educación, actualmente es docente de tiempo completo de la Universidad Tecnológica de Pereira.

Citas

Trejos Buriticá, O. I. (2012). Aprendizaje en Ingeniería: un problema de comunicación. Pereira (Colombia): Tesis Doctoral - Universidad Tecnológica de Pereira.

Van Roy, P. (2008). Concepts, Techniques and Models of Computer Programming. Estocolmo: Université catholique de Louvain.

Bruner, J. S. (1969). Hacia un teoría de la instrucción. Ciudad de México: Hispanoamericana.

Ausubel, D. (1986). Sicología Educativa: Un punto de vista cognoscitivo. Ciudad de México. Trillas.

Bruner, J. S. (1991). Actos de significado. Madrid: Alianza Editorial.

Paz Penagos, H. (2014). Aprendizaje autónomo y estilo cognitivo: diseño didáctico, metodología y evaluación. Revista Educación en Ingeniería, 9(17), 53-65.

Paz Penagos, H. (2009). How to develop metacognition through problem solving in higher education? Revista de Ingeniería e Investigación, 31(1), 75-80.

Felleisen, M. et al. (2013). How to design programs (2ª Ed). Boston. MIT Press

Trejos Buriticá, O. I. (2006). Fundamentos de Programación. Pereira: Papiro.

Sparks, J. (2008). The Pythatorean Theorem. Bloomington (Indiana): AuthorHouse.

Publicado
2015-12-15
Cómo citar
Trejos Buriticá, O. (2015). Comparación de dos algoritmos para hallar ternas pitagóricas usando dos paradigmas de programación diferentes. Entre Ciencia E Ingeniería, 9(18), 84-94. Recuperado a partir de https://revistas.ucp.edu.co/index.php/entrecienciaeingenieria/article/view/560
Sección
Artículos