Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resumen
El objetivo de este trabajo es compartir las estrategias que nos dieron buen resultado para salvar
algunas de las dificultades que encontramos en el proceso de aprendizaje de los alumnos ingresantes
para los conceptos bsicos de algortmica y programacin.
Introduccin
En todas las carreras de informtica existe alguna materia de programacin en el primer ao, en
nuestro caso esta primer materia es Algortmica y Programacin que se dicta en el segundo
cuatrimestre, luego de Anlisis Matemtico I, lgebra y Geometra e Introduccin a la
Computacin. Tal como acontece en la mayora de las primeras materias de una carrera
universitaria, confluyen diferentes situaciones que dificultan el aprendizaje:
o Falta de conciencia estudiantil
o Desinters por sus estudios en general
o Apata por la materia en particular
o Dificultades para interpretar consignas
o Dificultades para expresarse
o Carencia de hbitos de lectura
o Carencia de disciplina para estudiar
o Escasa retencin de los conocimientos adquiridos
o Bajo grado de reflexin, de independencia y de generalizacin.
Estas situaciones sumadas a las inherentes a la asignatura provocan alta desercin y bajo
rendimiento que se refleja en una relacin aprobados / inscriptos muy baja.
TE&ET'06 117
Algortmica y Programacin es una materia de vital importancia en la formacin del alumno, el
xito o fracaso en ella influye decisivamente en las restantes, ya que no quedan casi posibilidades
de seguir avanzando en la carrera si no se logran las competencias requeridas. Por lo tanto es
imperativo buscar las mejores estrategias que ayuden a efectivizar el proceso de enseanza-
aprendizaje y la calidad de los resultados.
En este sentido, a lo largo de muchos aos venimos observando, investigando, proponiendo y
probando estrategias que den mejor resultado para la enseanza-aprendizaje de la programacin.
Estas estrategias abarcan desde la forma didctica de impartir los conocimientos hasta la
distribucin de las horas de clase.
Marco terico
En este apartado daremos el marco terico de las metodologas aplicadas en nuestra ctedra, que por
sus caractersticas, y luego de en un proceso de refinamiento, seleccin y experimentacin,
consideramos que son las ptimas.
TE&ET'06 118
o presencia de la contradiccin (contradiccin entre los conocimientos nuevos a asimilar y los
ya asimilados o contradiccin entre los conocimientos nuevos o existentes y la propia vida).
Los mtodos de enseanza problmica ms utilizados son:
o La exposicin problmica: la esencia de este mtodo radica en que el profesor, al trasmitir
los conocimientos, crea una situacin problmica y muestra la va para solucionar
determinado problema, muestra la veracidad de los datos, descubre las contradicciones
presentes en la situacin y descubre la lgica del razonamiento para solucionar el
problema planteado.
o Elaboracin conjunta problmica: est basado en la interaccin profesor-alumno, de forma
tal que el docente logre, a travs de los alumnos, la situacin problmica.
o Bsqueda parcial o heurstica: se caracteriza porque el profesor organiza la participacin de
los estudiantes para la realizacin de determinadas tareas del proceso de investigacin.
o Investigativo: permite relacionar al alumno con las tcnicas y mtodos propios de la
actividad investigativa, desarrollando el pensamiento creador. Lo fundamental, en este
mtodo, es la actividad de bsqueda independiente de los estudiantes dirigida a la solucin
de un problema.
o Por problemas: los estudiantes se introducen en el proceso de bsqueda de solucin de
problemas nuevos para ellos, aplicando conocimientos ya asimilados y adquiriendo
independientemente otros, lo que le permite obtener y desarrollar la actividad creadora.
Mtodos participativos
Los mtodos y tcnicas participativas se definen como las vas, procedimientos y medios
sistematizados de organizacin y desarrollo de la actividad del grupo de estudiantes, sobre la base
de concepciones no tradicionales de la enseanza, con el fin de lograr el aprovechamiento ptimo
de sus posibilidades cognoscitivas y afectivas. Algunos de estos mtodos y tcnicas son, por
ejemplo, la discusin en grupos pequeos, el juego de roles, la mesa redonda, la tcnica de la
rejilla, el panel, y otros que tienen una utilizacin cada vez ms amplia en la enseanza.
Segn Cueto (1985), el aprendizaje grupal implica ubicar al docente y al estudiante como seres
sociales, integrantes de grupos, buscar el abordaje y la transformacin del conocimiento desde una
perspectiva de grupo, valorar la importancia de aprender a interaccionar en grupo y a vincularse con
los otros, aceptar que aprender es elaborar el conocimiento, ya que ste no est dado ni acabado;
implica, igualmente, considerar que la interaccin y el grupo son medio y fuente de experiencias
para el sujeto, que posibilitan el aprendizaje, reconocer la importancia de la comunicacin y de la
dialctica en las modificaciones sujeto grupo.
El mtodo as concebido ha de garantizar, adems, el desarrollo no solo de conocimientos y
estrategias cognoscitivas en el estudiante, sino tambin de importantes cualidades de trabajo en
grupo; fomentar su inters y motivacin por el conocimiento y por su propio desarrollo como
personalidad, como sujeto de su actividad social.
n
La contradiccin surge porque matemticamente es lo mismo, pero computacionalmente no,
debido al error de redondeo propio de la implementacin de los nmeros reales.
En otros casos se aborda un tema a partir de un problema cercano a la vida cotidiana o profesional
que constituyan de alguna manera un desafo.
Tambin hay casos en que la discusin de un nuevo tpico consiste en una introduccin terica,
presentando el concepto y dando las definiciones que se requieran, seguida de numerosos ejemplos
comentados y una amplia prctica de aplicacin y de corroboracin de resultados esperados o no.
Algunas clases de teora se dedican a resolver en forma conjunta un enunciado de problema
planteado y elegido por los alumnos. Los alumnos realizan sus aproximaciones hacia la solucin y
el docente analiza dinmicamente si est bien o no, permitiendo las equivocaciones para aprender
desde el error. Si el grado de error es muy grosero, se insta con preguntas a que reflexionen sobre la
propuesta antes de seguir avanzando. Si el error es fcilmente corregible mediante un refinamiento,
se lo acepta para luego corregirlo en el refinamiento. Son clases muy ricas, porque el actor principal
es el alumno, quien adems debe defender su propuesta frente a otras de sus compaeros.
La distribucin de los temas de la materia determina tambin una forma de enseanza cclica en la
que los mismos conceptos se abordan de forma recurrente a lo largo del curso, reafirmando,
completando, relacionando, aplicndolo. Muchos conceptos se aplican primero intuitivamente o con
una explicacin simple de lo que se trata pero suficiente como para poder aplicarlo, y luego, en una
etapa posterior se completa y formaliza. Tal es el caso de descomposicin de problemas y
refinamiento sucesivos.
TE&ET'06 120
Eleccin de la forma de representacin el algoritmo
Es importante que el alumno desarrolle capacidades que le permitan encarar la resolucin de un
problema de manera eficaz e independiente del lenguaje de programacin. Si bien se comienza a
resolver problemas simples, luego sern cada vez ms complejos. De los distintos mecanismos para
representar algoritmos, hemos adoptado el pesudocdigo, un lenguaje algortmico menos rgido que
un lenguaje de programacin, que permite centrar la atencin en la resolucin del problema y no en
los detalles propios de la rigidez de un lenguaje de programacin.
El pseudocdigo es una notacin algortmica textual caracterizada por:
o Permitir la declaracin de los datos (constantes y/o variables) manipulados por el algoritmo.
o Disponer de un conjunto pequeo y completo de palabras reservadas que permitan expresar:
las acciones elementales, las primitivas de composicin de acciones y la definicin de
acciones con nombre (funciones y procedimientos).
Algunos critican al pseudocdigo porque lo consideran como la traduccin de un lenguaje de
programacin al castellano, ms precisamente lo llaman Pascal en castellano. Aunque algunas
formas de pseudocdigo pueden llegar a serlo, en general no es as. Esta similitud con Pascal se da
porque Pascal fue un lenguaje pensado para ensear y por lo tanto tiene caractersticas tiles para
expresar con naturalidad la solucin.
Nosotros definimos y usamos un lenguaje algortmico que respeta las construcciones de la
programacin estructura con las caractersticas sintcticas ms favorables para la legibilidad de los
programas, como por ejemplo: simbologa diferente para cosas diferentes, estructuras de control con
terminador de estructura, etc.
1
Programar es un proceso mental complejo dividido en varias etapas. Su finalidad es comprender claramente el
problema que se va a simular o resolver mediante la computadora, y entender tambin con detalle cul ser el
procedimiento mediante el cual la mquina llegar a la solucin deseada
2
La codificacin es una etapa posterior a la programacin y consiste en escribir en un lenguaje de programacin la
solucin ya encontrada mediante la programacin.
TE&ET'06 121
o El concepto de funcin sin efecto lateral es factible y natural hacerla respetar en Pascal pero
es antinatural querer respetarlo en C
o Los conceptos de comunicacin entre subprogramas a travs de parmetros de entrada,
salida o entrada-salida, obligan a trabajar anticipadamente con punteros, con todo lo que
esto implica. En Pascal se puede hacer el paralelo con el pseudocdigo los parmetros de
salida y de entrada-salida se especifican en la cabecera con el prefijo var, mientras que los
de entrada no requieren ninguna aclaracin. Querer establecer un paralelo entre el concepto
y la implementacin en C, obligara a modificar la llamada, la cabecera y el cuerpo de la
funcin.
o El manejo de la entrada-salida y de los archivos es ms complejo y menos natural que en
Pascal.
o La forma natural de tratar un problema con posibles condiciones de error en C, es tratar
primero los casos errneos para retornar enseguida si se diera esa situacin, para luego
quedarse con el caso normal. Pero no es la forma natural en que se piensa la solucin del
problema. Para estos caso, la codificacin en C exigira reformular la solucin, o de lo
contrario, ensear la programacin basada en el lenguaje.
Otro lenguaje de programacin analizado fue ADA, que tiene ventajas similares a las de Pascal pero
no es tan simple como l.
La caracterstica ms rechazada por el alumnado del uso de lenguajes de este tipo es la interfaz con
el usuario que les resulta antigua, puramente textual. Estamos analizando la conveniencia o no de
utilizar entornos con interfaz grfica.
TE&ET'06 122
o Mal manejo de los ndices en arreglos: Accede a posiciones no definidas, confunde o no
respeta el orden de los ndices en arreglos de ms de una dimensin, confunde arreglo y
registro
o Errores en la solucin: No muestra los resultados obtenidos, no resuelve el problema
planteado. ,mala interpretacin del enunciado, mal planteo del problema, falta casos de
tratar, establece la solucin general pero no la refina, resuelve puntos parciales pero no arma
la solucin global
Estrategias adoptadas
Distribucin horaria: Al principio dbamos mdulos de cuatro horas dos de teora y dos de
prctica en dos das, pero los alumnos se retiraban antes y tampoco ejercitaban fuera de clase.
Desde hace cuatro aos, distribuimos las ocho horas de clases semanales en cuatro das de dos
horas, quedando clases terico-prcticas alternadas con clases de ejercitacin, y logrando mayor
participacin de los alumnos y menos olvidos de una semana para la otra.
Gua de trabajos prcticos: Desde hace unos cinco aos, se introdujo un prctico inicial que se
puede hacer sin haber comenzado a ver conceptos propios de la materia, pero que lo ejercita para la
resolucin de problemas: situaciones de sentido comn, de interpretacin de enunciados como por
ejemplo analizar situaciones acerca de las reglas de un juego, de relaciones lgicas y matemticas,
identificar la incgnita, los datos y restricciones, identificacin de estructuras de control que
aparecen en el lenguaje natural, expresiones con conectivos lgicos o matemticos, enunciados del
tipo al menos uno, mayor que 2 pero no tan grande como 15, entretenimientos y acertijos, etc.
La resto de la gua incluye una variedad de problemas que cubren todos los temas y en los que se
plantean problemas similares con diferente forma de enunciado, enunciados similares pero con
connotaciones diferentes, varias variantes de un mismo problema, problemas a resolver, problemas
para reconocer la o las soluciones correctas, para analizar cual es mejor, buscar errores, enunciados
de situaciones bastante cercanas a la realidad con diferente grado de dificultad. En general los
enunciados no explicitan las estructuras de datos que requieren sino que debe descubrirla.
El objetivo de esta variedad de enunciados es que resuelva situaciones diferentes, preste atencin a
cada palabra del enunciado y se familiarice con distintas maneras de expresar en lenguaje natural lo
que en lenguaje algortmico podra representarse de una misma forma.
Evaluaciones: Se evala a travs del desarrollo de trabajos prcticos y parciales. Las evaluaciones
contemplan de manera integrada la adquisicin de conocimientos, la formacin de actitudes, el
desarrollo de la capacidad de anlisis, habilidades para encontrar la informacin y resolver
problemas reales, expresin oral y escrita.
Los trabajos prcticos obligatorios consisten fundamentalmente en resolucin de problemas
algortmicos algunos de los cuales lo codificarn, desarrollando programas especficos.
El primer parcial es conceptual y evala la adquisicin de los conceptos bsicos para la formulacin
de algoritmos. Se requiere de su aprobacin y no se califica con nota numrica. En el segundo y
tercer parcial se evala resolucin de problemas mediante formulacin de algoritmos en los que
debe aplicar estructuras de datos y de control adecuadas; se califica con nota numrica.
La incorporacin del parcial conceptual antes de las evaluaciones que incluyen desarrollar
algoritmos ha permitido mejorar mucho los resultados de ellas: los alumnos afianzan los conceptos
que utilizarn para resolver los problemas y hacen un primer parcial sin el temor de la hoja en
blanco que se produce cuando an no se tiene prctica suficiente en la resolucin algortmica.
TE&ET'06 123
Relativas a los temas: Se trabaja con los conceptos de funcin y procedimiento desde los primeros
algoritmos: Al principio, cuando an no se ha dado el tema y se detecta que sera til contar con una
cierta operacin que no es una primitiva para el procesador, imaginamos que la posee y
especificamos qu hace y cmo nos comunicamos: qu recibe, qu devuelve, le damos un nombre y
la utilizamos respetando la especificacin acordada. Esto ha contribuido a disminuir los errores que
se encontraban relativos a la invocacin y definicin, a afianzarse en el uso de funciones y
procedimientos, a comenzar a modularizar en forma natural.
La especificacin con precondiciones y poscondiciones de las funciones y procedimientos, y la
comunicacin conceptual de parmetros de entrada, entrada-salida y salida tambin ha ayudado a
mejorar los errores que se encontraban relativos al tema.
El dedicarle mayor tiempo al anlisis del problema, de los datos de entrada y las condiciones que
deben cumplir y la definicin de operaciones especiales para su validacin ha mejorado su visin
para resolver el problema y disminuido los errores frecuentes que ocurran sobre el tema.
Conclusiones
La enseanza a travs de la resolucin de problemas es actualmente el mtodo ms invocado para
poner en prctica el principio general de aprendizaje activo. Lo que en el fondo se persigue con ella
es transmitir en lo posible de una manera sistemtica los procesos de pensamiento eficaces en la
resolucin de verdaderos problemas.
Una metodologa para la enseanza basada en problemas durante el proceso docente educativo ser
funcional en la medida que se tenga en cuenta los otros elementos del proceso: objetivos,
contenidos, mtodos, medios y formas organizativas.
Aprender a programar es una tarea compleja pero esencial tanto para la adquisicin de
conocimiento como el desarrollo de las capacidades de pensamiento.
Se han enumerado un conjunto de estrategias que nos estn dando buen resultado y esperamos que
puedan ser tiles para otras personas.
Bibliografa
CUETO DEL A.M. y A.M. FDEZ (1985). "El dispositivo grupal". Ediciones Bsqueda. Buenos
Aires, 1985.
MAJMUTOV, M.I. (1984) La Enseanza Problmica. La Habana. Cuba. Editorial Pueblo y
Educacin. 1984.
PORTUONDO PADRN, Roberto, VZQUEZ CEDEO, Rosa. (2000) Algunos aspectos de la
enseanza problmica Apuntes del Seminario de postgrado Metodologa de la enseanza de la
Ingeniera y la Tecnologa
RIZO, Cabrera Celia y Luis Campistrous: Didctica y Solucin de Problemas, Edicin Especial , II
Congreso Internacional Didctica de las Ciencias, 2002.
ROSANIGO, Zulema Beatriz (2005) Algoritmica y Programacin Notas de ctedra.
RUEDA, Sonia V., GARCA Alejandro J. (2005) Anlisis y Comprensin de Problemas Curso de
nivelacin para ingresantes a carreras de Ciencias e Ingeniera de la Computacin JEITICS 2005 -
Primeras Jornadas de Educacin en Informtica y TICS en Argentina
TE&ET'06 124