APRENDIZAJE DE LA LÓGICA DE PROGRAMACIÓN UTILIZANDO COMPUTACIÓN GRÁFICA
INTRODUCCIÓN
En la formación de un Ingeniero de Sistemas es indispensable desarrollar las competencias necesarias para crear software, instruyéndose en diseñar algoritmos que conlleven a dar solución a problemas específicos.
En la actualidad, el área de programación se constituye en el principal foco de deserción, puesto que un buen número de estudiantes no se destacan precisamente en el fundamento lógico de la programación.
El proyecto “Enseñanza de la Lógica de Programación utilizando Computación Gráfica”, nace como una necesidad de mejorar el proceso de aprendizaje en una etapa temprana.
PROPUESTA
El conjunto de problemas que tradicionalmente se trabajan en el proceso de aprendizaje, utilizan para la verificación de resultados una interface en donde el estudiante debería ingresar y recibir datos en forma textual. Si bien es cierto que esta forma de interacción con los datos y los resultados es buena, no proporciona de forma evidente cuatro principios básicos:
Motivación:
Estimula al educando hacia la adquisición de nuevo conocimiento.
Simplicidad:
Es importante no recargar al estudiante de elementos irrelevantes que puedan distraer o conllevar a la confusión.
Verificación inmediata de Resultados:
La revisión oportuna y efectiva de resultados es importante en el proceso académico ya que entre más prolongado sea el tiempo en detección de errores se disipa más el concepto estudiado.
Facilidad de corrección:
Reparar un error es parte del aprendizaje, puesto que amerita una revisión del proceso anterior; sin embargo, si esta actividad se tarda más de lo adecuado puede ocasionar en el educando desmotivación y abandono.
Por este motivo se plante un curso de aprendizaje de programación que (sin perder sus estrategias tradicionales) incluyera ejercicios relacionados con computación gráfica y la utilización de una herramienta que permitiera lograr los cuatros principios básicos expuestos anteriormente y adicionalmente conservara la sintaxis del lenguaje C++ que siempre ha sido utilizada para este curso.
EJERCICIOS
Constantes y Variables
ex101-swastika
|
Se pretende desarrollar una esvástica, es una tipo de cruz con brazos iguales en sentido de las manecillas del reloj. Tiene un margen de 20 px de alto y 20 px de ancho. Tiene un grosor de 20 px. |
ex102-frame
|
Se pretende crear un marco con un ancho y un alto de 30 px y sus esquinas un arco de 90 grados. |
ex103-abstract
|
Se pretende crear unas figuras abstractas con un margen de 30 px. En la equina superior izquierda se va dibujaran dos lineas rectas una vertical y la otra horizontal con un arco que las conecta, igualmente en la parte superior derecha. En el centro se dibujara una especie de plano cartesiano y en en segundo y tercer cuadrante se dibujara unos arcos que conecten sus esquinas. |
ex104-cross
|
Se dibujara en el centro una linea vertical de 200 px y una linea horizontal de 300 px formando una cuz y en cada una de sus esquinas se dibujara un circulo con un radio de 20 px. Las lineas deben atravezar el circulo hasta la distancia de su radio. |
Instrucciones de Entrada y Salida
ex202-redizedcircles
|
Se dibujaran 3 circulos rediseñados en cualquier punto de la pantalla cada vez que se de click derecho, el primer circulo tiene un radio de 150 px, el segundo circulo un radio de 100 px y el tercer circulo con un radio de 50 px. |
ex203-Mirror
|
Se pretende simular un espejo, donde la pantalla estara dividida por una linea vertical en el centro de la pantalla, al momemnto de dar click en la parte derecha, se dibuja un circulo con un radio de 20 px y automaticamente se crea el circulo espejo del otro lado de la linea. |
ex204-customstar
|
Se va a dibujar una estrella personalizada en cualquier punto del display, la estrella consta de 4 puntas que se forman al dibujar 4 arcos y tiene un tamaño aproximado de 100 px. |
ex205-Join
|
Se vas a dibuja una union de lineas rectas dependiendo del punto que se escoja, se puede dar clicke n cualquier punto del display y automaticamente se dubujan cuatro lineas rectas desde los extremos hasta el punto. |
ex206-findcenter
|
Se va a dibujar en cualquier punto de la pantalla que sea seleccionado un circulo con un radio de 20 px y ademas se debe seleccionar otro punto para que se dibuje un circulo con un radio de 20 px y una linea recta que conecta ambos circulos desde su centro, tambien, se debe encontar el centro entre ambos circlos y se dibujará un circulo en esa posicion. |
ex207-findintersection
|
Se pretende dibujar una linea recta entre dos puntos seleccionados de cualquier area de la pantalla y encontrar la interseccion de dicah recta. |
Estructuras de decisión
ex301-circleorrectangle
|
Se pretende dibujar una linea recta horizontal. Si se hace click en la parte superiors se deberá dibujar un circulo y si es en la parte inferior se dibujará un rectangulo.
|
ex303-colors
|
Se desea dibujar en la pantalla 5 cuadrados de 20 px cada uno, el primer cuadrado será de color negro, el siguiente color rojo, el siguiente color azul, el siguiente color verde y el ultimo color amarillo. Se puede seleccionar cualquiera de dicho rectangulos que van a trabajar como un tipo de checkbox y permiten seleccionar el color que se vas a dibujar la figura. Al momento de seleccionar el color se selecciona cualquier punto de la pantalla y se dibuja un circulo de 50 px de radio del color seleccionado. |
ex304-quadrantshape
|
Se dibujara una cruz en el centro de la panatalla que representara un plano cartesiano y dependiendo del cuadrante en el que se haga click se deberá dibujar una cruz, un reloj de arena, un triangulo o un rombo. |
ex305-customquadrantsshapes
|
Se pretende dibujar un cuadrante personalizado en cualquier punto que sea seleccionado de la pantalla, formado por dos lineas rectas. |
Ciclos
ex401-lines
|
Se quiere dibujar una cuadricula con un margen de 20 px, formado por lineas verticales azules y lineas horizontales rojas, se dibujaran con una distancia de 20 px de ancho y 20 px de alto. |
ex402-rectangle
|
Se dibujará unos rectangulos conectados de las esquinas formando una escalera desde la esquina superior izquierda de la pantalla hasta la esquina inferior derecha. Cada rectangulo tiene un tamañi de 20 px cada uno.. |
ex403-circles
|
Se desea dibujar en linea recta una cadena de circulos conectados entre sí, tendran un margen superior de 35 px. Cada circulo tendra un radio de 15 px y se conectara con otro circulo desde la distancia de la margen mas 10 px. |
ex404-board
|
Se quiere dibujar una board compuesta por rectangulos con un margen de 10 px y un tamaño de 10 px de cada rectangulo. |
ex405-boardcircles
|
Se quiere dibujar una board compuesta por circulos con un margen de 15 px y un tamaño de 5 px por cada circulo. |
ex406-shine
|
Se quiere dibujar una especie de Shine con un margen de 40 px, que estara formado por lineas rectas que van desde el margen hasta el centro de la pantalla. |
ex407-stair
|
Se quiere dibujar una especie de escalera compuesta por rectangulos que van desde el mas pequeño con un tamaño de 20 px hasta el mas grande con un tamaño de 280 px y separados por una distancia de 20 px. |
ex408-ovals
|
Se quiere dibujar una especie de amplificador de sonido compuesto por ovalos formados con arcos, comienza desde el verticalmente desde el centro y horizontalmente con un margen de 45 px. Los arcos formados con un angulo de 360 grados se forman pegado al anterior y aumentan un tamaño de 15 px cada uno. |
ex409-shot
|
Se pretende dibujar una especie de onda, puede ser de señal wifi, la cualq se va a dibujar en cualquier punto que se seleccione de la pantalla y sera formada por 9 arcos que se incrementaran en 5 px. |
Vectores