Uso de Karel para la Enseñanza de Programación … MX 2015... · Diferencia entre programación y...
Transcript of Uso de Karel para la Enseñanza de Programación … MX 2015... · Diferencia entre programación y...
Uso de Karel para la Enseñanza de Programación Estructurada
“Programando sin Computadora: Una Dinámica de Juego”
Por Dr. Emmanuel López-Neri
Centro de Investigación, Innovación y Desarrollo Tecnológico UVM
Contenido
• 1 Parte : Introducción a la programación – El juego de Karel
– Ejercicios para el juego
• 2da Parte: Identificando Estructuras de programación – Retomando al escribano
• 3era Parte: El mundo de Karel – Divide y Vencerás
– ¿Qué sigue?
¿Qué es Programar?
“Definir las instrucciones que se deben seguir para ejecutar una tarea” *
* Definición para este taller
Instrucciones
Ejecutor
¿Qué instrucciones entiende el Robot?
• Avanza
• Gira-Izquierda
• Recoge-Caja
• Deja-Caja
• ¿Hay-caja?
• ¿Puedes-Avanzar?
• ¿Tienes-cajas-en-mochila?
Da Instrucciones y escucha Respuesta
Ejecuta Instrucciones y da Respuesta
Reglas
Avanza: Karel se mueve solo un cuadro en dirección de donde esté viendo
Karel no puede avanzar si ya no hay mas cuadros
Karel no puede avanzar si hay
objetos no reconocidos
(paredes)
Primera Parte
Reto: Traer caja al lugar de inicio de Karel Ojos Abiertos
Escribano registra cada instrucción del programador y toma tiempo. ( Se usarán en la 2da parte del taller)
Segunda Parte
Reto: Traer caja al lugar de inicio de Karel
Ojos Cerrados
Escribano registra cada instrucción del programador. ( Se usarán en la 2da parte del taller)
Tercera Parte
Reto: Traer caja al lugar de inicio de Karel
Escribano registra cada instrucción del programador
Cuarta Parte
Reto: Karel debe armar una pirámide inversa.
Escribano registra cada instrucción del programador
Quinta Parte
Reto: Karel debe encerrar cualquier objeto pared
Escribano registra cada instrucción del programador
¡ Esto es la programación !
El reto es generar saber dar las instrucciones correctas
https://my.laureate.net/Faculty/webinars/Pages/Diferenciaentreprogramaci%C3%B3nycodificaci%C3%B3n,rompiendounparadigmadeense%C3%B1anza.aspx 80% 20%
Estructuras de Control
avanza; avanza;
si puedes-avanzar entonces inicio avanza; avanza; fin sino inicio deja-zumbador; fin;
iniciar-programa inicia-ejecución termina-ejecución
finalizar-programa
mientras frente-libre hacer Inicio avanza; fin;
si puedes-avanzar entonces inicio avanza; avanza; fin;
Instrucciones y Sensores
• Avanza
• Gira-Izquierda
• Recoge-Caja
• Deja-Caja
• ¿Hay-caja?
• ¿Puedes-Avanzar?
• ¿Tienes-cajas-en-mochila?
Ejecuta Instrucciones y da Respuesta
Instrucciones (i1,i2,…in)
Sensores (q1,q2,…qn)
Identificación de Estructuras
Escribano
avanza; ¿hay-caja? R: si avanza; ¿hay-caja? R: si avanza; ¿hay-caja? R: no deja-caja;
Q1= ¿Hay-caja? I1= avanza; I2:=deja-caja;
s
n
I2
Repetimos el Juego (Ahora siguiendo el algoritmo)
Comparar con los tiempos del escribano en el ejercicio anterior.
¿Qué Sigue?
Diferencia entre programación y codificación, rompiendo un paradigma de enseñanza:
https://my.laureate.net/faculty/webinars/Documents/2013Agosto_Diferencia%20entre%20Programacion%20y%20Codificacion,%20
Rompiendo%20un%20Paradigma%20de%20Ensenanza.pdf
https://my.laureate.net/Faculty/webinars/Pages/Diferenciaentreprogramaci%C3%B3nycodificaci%C3%B3n,rompiendounparadigmadeense%C3%B1anza.aspx
La Metodología Propuesta (Lopez-Neri,2014)
Entender el Problema
Propuesta de Algoritmo
Verificar Validez Lógica
Verificar Validez
Estructural Implementar
1 3 2 4
Referencias
• Garden City Collage, (2012,marzo 31). Concepts of Algorithm, Flow Chart & C Programming. [archivo de video]. Recuperado de https://www.youtube.com/watch?v=DF2XAc07eI0
• Rodriguez, M.A., (1991). Metodología de Programación a través de Pseudocódigo. 1era Edición. McGraw Hill
• Santamaría, L., (2004). Metodología de programación. Principios y aplicaciones.
• Cairó, O., (2006). Fundamentos de programación. Piensa en C. Prentice Hall.
• Cairó, O., (2009).Metodología de la programación. AlfaOmega.
• Lopez-Neri (2014), https://my.laureate.net/Faculty/webinars/Pages/Diferenciaentreprogramaci%C3%B3nycodificaci%C3%B3n,rompiendounparadigmadeense%C3%B1anza.aspx
¡Gracias !
@elopezneri /elopezneri www.cidetec-uvm.com
Dr. Emmanuel López Neri Director Centro de Investigación, Innovación
y Desarrollo Tecnológico UVM Campus Guadalajara Sur, México
(CIIDETEC-UVM) [email protected]