Académique Documents
Professionnel Documents
Culture Documents
índice
Bienvenidos a Cuantrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3.2 Condicionales “Espera hasta” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Sesión 14: Condicionales con cartas (Desconectada) . . . . . . . . . . . 52
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Sesión 15: Condicionales con abejas (Conectada) . . . . . . . . . . . . . . 55
3.3 Estructuras de las decisiones y las condicionales . . . . . . . . . . . . . . . 56
¿Qué es el pensamiento computacional? . . . . . . . . . . . . . . . . . . . . . . 6 Sesión 16: Escenarios cambiantes (Desconectada) . . . . . . . . . . . . . 56
¿Por qué aprender a programar en la escuela? . . . . . . . . . . . . . . . . . 6 3.4 Decisiones mediante switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Propósitos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Sesión 17: Secuencias y loops con laberintos (Conectada) . . . . . . . 57
Contenidos escolares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Sesión 18: Escenarios cambiantes con Scratch (Conectada) . . . . . 57
Contenidos generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.5 Iteraciones (loops) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Estrategias didácticas y pasos a seguir . . . . . . . . . . . . . . . . . . . . . . . . 9 Sesión 19: Repeticiones con Scratch (Conectada) . . . . . . . . . . . . . . 64
Seguridad en Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Sesión 20: Loops de la vida real (Desconectada) . . . . . . . . . . . . . . . 67
Sesión 21: Loops con el Robot Lightbot (Conectada) . . . . . . . . . . . . 68
1. Noción de programación e instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.6 Funciones y variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Sesión 22: Crea un llavero programable (Desconectada) . . . . . . . . 72
Sesión 1: “Las computadoras hacen todo al . . . . . . . . . . . . . . . . . . . 14 Sesión 23: Funciones con artistas (Conectada) . . . . . . . . . . . . . . . . 74
pie de la letra” (Desconectada) Sesión 24: Funciones y variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Sesión 2: Programación con papel (Desconectada) . . . . . . . . . . . . . 15 con el Robot Lightbot (Conectada)
1.1 División de un problema grande en subtareas . . . . . . . . . . . . . . . . . . 21
Sesión 3: Robot Lightbot desconectado (Desconectada) . . . . . . . . . 21 4. Soluciones del mundo real (último reto) . . . . . . . . . . . . . . . . . . . . . . . . . 83
Sesión 4: Algoritmos de la vida real (Desconectada) . . . . . . . . . . . . 24
1. Aprender acerca del tema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2. Conceptos básicos de programación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2. Identificar un problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
3. Crear una solución innovadora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
2.1 Eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4. Desarrollar su propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sesión 5: Repetición simple en Scratch (Conectada) . . . . . . . . . . . . 28 5. Hacer una presentación de la solución . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sesión 6: El gran evento (Desconectada) . . . . . . . . . . . . . . . . . . . . . 30 6. Aportar a su comunidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.2 Comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Anexo 1: Actividades Extras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sesión 7: Comandos con el Robot Lightbot (Conectada) . . . . . . . . . 33
Sesión 8: Secuencias con laberintos (Conectada) . . . . . . . . . . . . . . 35 Vocabulario para enseñar a programar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2.3 Secuencias de comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 de manera fácil
Sesión 9: Programación con vasos (Desconectada) . . . . . . . . . . . . . 35
Sesión 10: Secuencias con artistas (Conectada) . . . . . . . . . . . . . . . . 38 Guías de descargas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
2.4 Depuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Sesión 11: Carrera de relevos (Desconectada) . . . . . . . . . . . . . . . . . 39 Guía práctica de introducción a Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Bienvenidos a Cuantrix
Una iniciativa de izzi, AMITI y Fundación Televisa, la “Desarrollar un pensamiento analítico y estructurado, “Programar es aprender el idioma de una computadora, “Programar es aprender. Programar es principalmente
cual busca que cada año en México al menos un millón utilizando en un principio juegos y herramientas didácticas, es aprender a pensar, a desarrollar la imaginación, a una habilidad que debe dominarse si se quiere pasar de
de niñ@s y jóvenes se interesen por el pensamiento nos dará los conocimientos básicos de la programación tener nuevas habilidades y, sobre todo, a poder usar, ser consumidores pasivos a actores digitales. Programar
computacional y aprendan a programar. y nos ayuda a detectar el proceso que debe seguirse para explotar y disfrutar la tecnología. es abrir el campo de posibilidades, dar vida a las ideas,
desarrollar un proyecto, producto o servicio: qué necesitas, crear las herramientas del mañana. Es adoptar un razo-
La programación como herramienta de educación dónde comienzas, a dónde quieres llegar y los pasos in- Atrévete a pensar diferente”. namiento lógico y encontrar soluciones simples a problemas
resulta especialmente interesante y divertida en mu- termedios para lograrlo. Una vez que tienes esta habilidad complejos en todos los ámbitos y sectores.
chos aspectos, ya que desarrolla diversas habilida- puedes hacer lo que sea”. Dra. Karina Mariela Figueroa Mora.
des multidisciplinarias en los niñ@s; como aprender Profesora e investigadora en la Facultad Programar me ha enseñado que aprender puede ser divertido”.
a trabajar en equipo, fomentar la persistencia y la de Ciencias Físico-Matemáticas de la Universidad
creatividad. Aptitudes que los ayudarán en su a de- MCC. Magdalena de la Luz Navarro Mojica Michoacana de San Nicolás de Hidalgo Dra. M. Rocío Abascal
sarrollar su capacidad para resolver determinados Profesora de Informática, Programación y Algorítmica Profesora y coordinadora de la Maestría en Diseño,
problemas y los fortalecerán en cualquier materia. del Tecnológico de Monterrey campus Querétaro “Los programadores serán indispensables en muchas Información y Comunicación de la UAM
empresas del futuro. Un programador piensa de manera
La creatividad, la sociabilidad y la comunicación entre los estructurada, compleja y creativa, usa herramientas “La educación en el pensamiento computacional es esencial
chicos se ve beneficiada exponencialmente a través de di- avanzadas como las matemáticas para resolver problemas para desarrollar la competencia de solución de problemas,
ferentes recursos y herramientas que se utilizarán para “Crear es imaginar, crear es transformar, crear es acercarse de alto impacto tecnológico, social y económico mediante que a su vez es una de las competencias más apreciadas
resolver problemas. Y todo esto gracias a la programación. con curiosidad y empatía a entender un problema y tratar de computadoras físicas o biológicas. Con estas herramientas, y requeridas por los empleadores más importantes a nivel
solucionarlo. Ser creativos es una característica humana, él o ella pueden crear las empresas del futuro desde internacional. De aquí se desprende la importancia del
Acompaña a tus alumnos a visitar cuantrix.mx y que nos permite ser mejores personas, mejores ciudadanos, una computadora. El reto Cuantrix tiene por objetivo proyecto Cuantrix, el cual busca desarrollar el pensamiento
juntos preparemos a los nuevos creadores tecno- y tener armonía con nuestro planeta. Aprender a desarrollar competencias en el uso de estas herramientas computacional a través de la enseñanza de la programación.
lógicos, para que puedan pensar y diseñar el mun- programar es aprender una de las actividades creativas y así contribuir en la formación de los nuevos agentes de Éste es el tipo de programas que vale la pena que la sociedad
do del futuro desde ahora. más poderosas. La programación nos transforma en seres cambio para la economía digital”. apoye e impulse”.
capaces de crear a través de máquinas, computadoras,
Los materiales que hemos desarrollado, serán reforzados teléfonos, sensores, redes, drones y cientos de tecnologías Dr. César Raúl Cárdenas Pérez Dr. Juan Arturo Nolazco
y asesorados por nuestra página web, es muy importan- que existen y existirán. La programación nos permite Director of the Electronic Design Center and Director del Área de Tecnologías de Información y Eletrónica
te que estés informado y recurras a ella constantemente resolver problemas que sobrepasan nuestros límites como Professor at the Mechatronics Department del Tecnológico de Monterrey, campus Monterrey
para que la vinculación de Cuantrix con el calendario es- humanos. Cuantrix es una enorme oportunidad para
colar sea más sencilla. que miles de niños puedan aprender a programar y verse
fortalecidos como creadores. Estoy seguro de que esta
Para desarrollar el todo material curricular, Cuantrix iniciativa marcará una generación de nuevos creadores
siguió modelos importantes de organizaciones interna- que, con la programación, generará un México más
cionales dedicadas a la misma tarea como son Code.org, emprendedor, más prospero, con más visión y compromiso”. Los invitamos a ser parte de este esfuerzo en beneficio de cientos de miles de
Fundación Sadosky y CS Unplugged. Además de contar estudiantes mexicanos, quienes transformarán su pensamiento para convertirse
con el apoyo de destacadas personalidades académicas en creadores de la tecnología que utilizan.
en el ramo y qué mejor que escuchar las palabras de Dr. Víctor M. González y González
algunos de los miembros de nuestro comité asesor: Jefe del Departamento Académico de Computación del ITAM
Entra a cuantrix.mx y encontrarás todo lo que necesites.
6 Pensamiento computacional 7
Introducción
¿Qué es el pensamiento computacional?
Nuestra calidad de vida depende de nuestro pensamiento, ya que esta es la habilidad que nos centrado en el aprendizaje de herramientas específicas de software, como
permite tomar decisiones y resolver problemas. Si pensamos mejor, vivimos mejor nosotros y Excel, Word, uso de buscadores, etc., herramientas que fortalecen las
quienes nos rodean. destrezas operacionales; sin embargo, es necesario fomentar habilidades,
conocimientos y actitudes diversas: ser crítico y reflexivo con el uso que
El objetivo del pensamiento computacional es desarrollar sistemáticamente las habilidades hacemos de las tecnologías, consciente de sus posibilidades y riesgos y
del pensamiento crítico y la resolución de problemas con base en los conceptos de la computa- capaces de evolucionar y crear con ellas.
ción. En suma, que las personas potencien y aprovechen el poder que tienen las computado-
ras en la actualidad. Queremos fomentar una programación creativa que conecte los intereses
y gustos del alumno con proyectos en los que puedan ser protagonistas,
El pensamiento computacional es un proceso de solución de problemas que incluye, entre así como que se expresen en los mismos lenguajes que están acostum-
otras, las siguientes características: brados a consumir. Por esto, nos apoyamos en diferentes herramientas,
con y sin internet.
• Organizar y analizar datos de forma lógica.
• Representar datos mediante abstracciones, tales como modelos y simulaciones. Pretendemos que, por medio de la programación en contextos significati-
• Automatizar soluciones mediante algoritmos (pasos ordenados para lograrlo). vos, puedan trabajar la creatividad, la expresión, el trabajo colaborativo y,
• Formular problemas para que las computadoras puedan solucionarlos. en equipo, la comunicación, la modelización y resolución de problemas; el
• Identificar, analizar y desarrollar posibles soluciones a los problemas. Encontrar la proceso que empieza con una idea hasta llegar a desarrollar un proyecto,
combinación de pasos y recursos eficientes y efectivos. la experimentación con nuevas ideas, la perseverancia cuando las cosas
• Entender los procesos para solucionar problemas en el mundo computacional y convertirlos no funcionan bien, sin frustrarse al aprender a tolerar la frustración: todas
en la solución de diferentes problemas. éstas son habilidades del siglo XXI.
Por lo tanto, queremos programar para aprender, para expresarnos, para comprender mejor Adolfo Ferrer, Liks.co
los contenidos científicos y tecnológicos, para perder el miedo a crear y compartir y para que
todos tengamos las mismas oportunidades de acceder a una alfabetización propia del siglo XXI.
La tradición escolar de enseñanza en las TIC (Tecnología de la Información y Comunicación) se ha
8 Pensamiento computacional 9
• Noción de programa y máquina. Comandos (acciones) y valores (datos). 6. Para antes de semana santa ya tendrías que estar terminando la sesión 20.
• Estrategias de identificación y división de subtareas.
• Soluciones a problemas de programación. 7. Para el mes de mayo tendrías que empezar nuestra última unidad, esto lo puedes ligar a
• Identificación de problemas secundarios. entregas de otras materias, ya que se elaborara un proyecto multidisciplinario muy interesante.
• Procedimientos.
• Repeticiones simples. Alternativas condicionales. Repeticiones condicionales. Despues de los temas aprendidos, en este capítulo Se propone hacer una investigación
• Uso de diferentes herramientas (Scratch, Lightbot, ScratchJr, etc). de los problemas que enfrenta su mundo real y encontrar soluciones aplicando lo
• Procesamiento de estructuras lineales y diseño de actividades típicas de programación, aprendido hasta ahora.
incluyendo la selección de operaciones primitivas del sistema de cómputo elemental o
autómata. 8. Al finalizar su proyecto, entra a http://cuantrix.mx/ para acompañar a tus alumnos a
• Metodología para la corrección de errores del programa a partir del análisis de la diferencia completar el tercero y último reto Cuantrix.
entre lo que se espera de éste y lo que efectivamente hace.
Es muy importante ya que solo así podemos nosotros evaluar el aprendizaje e impacto
de Cuantrix en los niños.
10 Pensamiento computacional 11
Invita a los alumnos a platicar sobre los lugares que han visitado en familia o 1. Que se formulen las siguientes preguntas entre ellos: ¿Cuál es su animal favorito? ¿Cuál
de viajes escolares: museos, zoológicos, ferias, exposiciones, etcétera. Tam- es su programa de tv, película o personaje favorito? ¿Cuál es su número favorito?
bién pueden hacer viajes imaginarios a los lugares que ellos elijan. 2. Con la información obtenida que cada alumno haga tres opciones seguras de nombres de
usuarios para su pareja. No debe incluir información privada o distinta, sólo con base en
Haz que pasen a platicar al frente de la clase, describiendo que van viendo y las preguntas.
haciendo. Pregúntales de forma sorpresiva ¿Qué necesitan para estar seguros 3. Pídeles que los compartan a toda la clase.
en esos lugares? 4. Organízalos para que sean jueces y vean cuáles propuestas siguen las reglas de seguridad.
Explícales que hay tres reglas básicas para navegar en internet: Organiza una discusión sobre lo que es apropiado compartir en internet; para qué puede usarse
el internet y qué reglas hay que seguir para navegar en la red.
1. Pedir permiso a sus papás, maestro o tutores
2. Hablar sólo con personas que conocen
3. Escoger lugares que son buenos para ellos Información extra: Digital Compass, de Common Sense Media
Te proponemos la siguiente herramienta para brindar apoyo al tema de seguridad en internet.
Ahora vamos a pensar ¿qué más podemos hacer para mantenernos seguros? https://d2e111jq13me73.cloudfront.net/sites/default/files/educator_guide_092415_sp.pdf
http://www.pantallasamigas.net/otros-webs/privacidad-online-net.shtm
Entra a cuantrix.mx
14 Pensamiento computacional 15
Noción de programación
1 e instrucciones
Actividad 2
En un segundo momento de la clase, puede sugerírsele a los alumnos que piensen y formulen
acciones acotadas para que las realice algún compañero. Por ejemplo: “levantar brazo derecho”,
“pestañear”, “mirar a un determinado compañero”, “levantarse de la silla”, etc.
En esta parte trabajaremos algunas nociones elementales de programación. Al respecto, interesa destacar que
un programa puede ser entendido como un conjunto de instrucciones (que corresponden a comandos) desti- A continuación, se propondrá a un alumno que interprete el papel de robot y ejecute una serie
nadas a ser ejecutadas por una máquina: la computadora. De manera más específica, estas instrucciones son de instrucciones, como la siguiente: “levantarse de la silla”, “levantar el brazo derecho”, “cerrar
descripciones de soluciones a problemas. Programar implica, por lo tanto, delimitar problemas para poder luego los ojos”, “abrir la boca”, “sentarse en la silla”.
formular las soluciones adecuadas. Para ello, proponemos emplear una estrategia llamada división en tareas
secundarias, que consiste en dividir una acción en otras acciones más pequeñas, que son parte de aquella.
Esta sesión tiene dos palabras importantes: Al término de estas actividades, puede presentarse la noción de comando, que es
la instrucción que un programador o usuario le da a una computadora, y pedir a los
alumnos que reflexionen acerca de la especificidad de las instrucciones formuladas.
Algoritmo: una lista de pasos a seguir para lograr una solución de una tarea
determinada o llegar a una meta.
Programa: es un algoritmo que ha sido codificado en algún lenguaje para que una Actividad 3
computadora pueda interpretarlo.
1. ¿Qué pasaría con el robot si las acciones que se le hubieran indicado fueran muy generales o
muy complejas (por ejemplo, “caminar” o “dibujar una casa”)? ¿Podría haberlas ejecutado?
2. ¿Se modificó el resultado final de la secuencia al cambiar el orden de las acciones?
Sesión 1. Las computadoras hacen todo al pie de la letra 3. ¿Qué ocurriría en los siguientes casos?
Sin computadora
• Se le ordena al robot que se siente en una silla, pero no hay ninguna.
Program.AR • Se le dice al robot que levante el brazo derecho y ya lo tiene levantado.
• Se le pide al robot que levante el brazo derecho mientras tiene levantado el izquierdo y no
En esta primera sesión didáctica no se utilizarán computadoras sino que, a partir de la representación de las re- se específica si antes debe de bajar éste o no.
glas de los programas computacional, se trabajará con los alumnos en el tipo de tareas que realiza una computadora
y se prestará atención al modo en que deben indicarse esas tareas. Para profundizar en el carácter específico de las instrucciones que se utilizan en programación,
el maestro interpretará nuevamente el papel de robot y le solicitará a un alumno que lo guíe paso
Objetivos a paso para que vaya al pizarrón y escriba una palabra determinada, (por ejemplo, el nombre
del alumno). El maestro/robot sólo podrá escribir la palabra cuando ésta le sea dictada letra
• Comprender el carácter específico de las instrucciones empleadas en programación. por letra, pero esto no se le dirá al alumno al comienzo, sino luego de que haya realizado varios
• Distinguir entre instrucciones generales y específicas. intentos. De este modo, por ejemplo, si el alumno dicta el nombre todo junto, respóndele: “No
• Conocer algunos de los conceptos propios del ámbito de la programación. entiendo”; si el maestro/robot no está en el pizarrón, ante la solicitud del alumno de que escriba,
• Establecer relaciones entre el orden de las acciones programadas y los resultados obtenidos. dirá “No puedo escribir en el aire”.
Desarrollo
Entenderán que, aun cuando sientan que las instrucciones son claras, hay cierta dificultad para ser interpretadas Para dar las instrucciones, las flechas serán las respuestras del algoritmo.
por una computadora y practicarán la posibilidad de dar instrucciones mediante símbolos y códigos.
Si tenemos el siguiente algoritmo:
Para esta actividad necesitas papel cuadriculado o cualquier espacio donde puedas dibujar una cuadrícula, como en
el pizarrón, o bien dibujar los cuadros en una hoja blanca. 1. Mueve un cuadro a la derecha.
2. Mueve un cuadro a la izquierda.
Puedes pedirles que pasen al pizarrón a rellenar los cuadros siguiendo las instrucciones, o pueden trabajar en 3. Rellena el cuadro con color.
equipos y que le den las instrucciones a un miembro del equipo. Siempre se empezará dibujando el cuadro de la
esquina superior izquierda (donde está la estrella). Le corresponde el siguiente programa:
Empezaremos con instrucciones simples como son las Es un ejemplo fácil, ahora intenta con algo así.
siguientes:
Comienza Comienza
aquí aquí
Algoritmo:
1. Mover un cuadro a la derecha
2. Rellenar el cuadro con color
3. Mover un cuadro a la derecha
4. Mover un cuadro a la derecha
5. Rellenar el cuadro con color
6. Mover un cuadro abajo
7. Mover un cuadro a la izquierda
1. Mover un cuadrado a la derecha 8. Rellenar el cuadro con color
2. Rellenar el cuadro con color 9. Mover un cuadro a la izquierda Indica los pasos con tu dedo
3. Mover un cuadrado a la derecha 10. Mover un cuadro a la izquierda Ahora dibuja el siguiente código en el pizarrón e intenta que tus alumnos programen de la siguiente forma:
4. Mover un cuadrado abajo 11. Rellenar el cuadro con color
5. Rellenar el cuadro con color 12. Más instrucciones …
Con una ligera sustitución podemos hacer que este ejercicio sea más sencillo. Podemos, por ejemplo, sustituir por
una flecha toda nuestra línea de instrucciones.
18 Pensamiento computacional 19
Escoge un dibujo sencillo como el que sigue y píntalo En este momento tal vez tu clase ya está haciendo Sigue el algoritmo con tu dedo y ve si puedes seguir los pasos de cada imagen en la parte de
en el pizarrón: propuestas para hacer diferentes actividades o tú tienes abajo.
nuevas ideas. Aprovecha el impulso.
Comienza
aquí
Utilizando la misma guía de flechas o símbolos, uno de los alumnos tiene que escribir el programa que se necesita 1.1 División de un problema grande
en subtareas
para dibujar la imagen que ellos escojan de las que te proponemos abajo.
Sesión 3. Lightbot
Sin computadora
Durante esta sesión, los alumnos aprenderán cómo dar instrucciones a una computadora mediante procesos
importantes como la planeación, el desarrollo y el orden adecuados.
Objetivos
• Entender cómo crear y dar un conjunto de instrucciones lo más específicas posibles (algoritmo) para que una
computadora pueda seguirlas.
• Planear y desarrollar un algoritmo.
• Escribir un programa a ejecutar basados en el algoritmo.
• Probar si lo programado es correcto (el robot llega a la hoja azul sin ningún problema).
• Corregir el programa si no está correcto, encontrar los problemas del programa y modificarlo.
Desarrollo
Los estudiantes (y el maestro) jugarán a dar una serie de instrucciones a un alumno o alumna que interpretará el
papel de un robot que seguirá las instrucciones que le den para llegar a un objetivo final. Ellos aprenderán cómo
decirle a la computadora lo que tiene que hacer con una serie de comandos y comprenderán así todo el proceso
de cómo se escriben los programas de las computadoras.
Actividad 1:
Y por último, dibujen en la figura de la izquierda el programa descrito a la derecha.
- Tiempo para desarrollar la actividad 2 horas.
- Materiales
Imprime o dibuja en el pizarrón el siguiente documento https://lightbot.com/Lightbot_PrintableIcons.pdf
30 hojas grises y 5 hojas azules.
Te recomendamos
Se recomienda a los maestros jugar los primeros 3 niveles del juego en línea, en Lightbot, para entender la ma-
nera en la que los alumnos tienen que resolver el laberinto y lograr que el robot siga las instrucciones. Lo que
Cierre realizarán es una versión fuera de línea del mismo juego. (Ir al juego aquí: http://lightbot.com/hocflash.html o
descargar la aplicación para Android aquí: https://goo.gl/DPtgZt).
Se sugiere trabajar con los alumnos en la asignación de nombres (lo suficientemente descriptivos y específicos)
a diversas tareas que luego combinarán para formar distintas secuencias. En este sentido, se puede pedirles ¿Qué decirle a los alumnos?
que describan los pasos que siguen al utilizar un programa, desde encender la computadora hasta la ejecución
del comando que abre el programa. También puede proponérseles que identifiquen, entre las actividades que Las computadoras son aparatos increíbles que nos ayudan a desarrollar diferentes actividades. Por ejemplo, nos
realizan cotidianamente, las que suponen una serie de pasos o actividades y que indiquen el nombre de cada ayudan a explorar el internet, jugar videojuegos, crear, hacer y muchas cosas más. También nos permiten realizar
actividad (por ejemplo, “cepillarse los dientes” supone las tareas secundarias de “tomar el cepillo”, “tomar la tareas difíciles pero, para ello, deben haber sido programadas y haber recibido las instrucciones específicas para
pasta”, “poner la pasta sobre el cepillo”, entre otras) e inversamente que agrupen varias actividades en otras saber qué hacer.
sucesivamente más abarcadoras (como el caso de “cepillarse los dientes”, “asearse” y está, a su vez, por ejemplo,
“vivir un día entero”). Programar es la manera en la que nosotros como programadores le decimos específicamente a una computadora
qué hacer. Para que pueda realizar las tareas, tenemos que darle una serie de instrucciones mediante comandos;
Es importante hacerles notar a los alumnos que los algoritmos son parte de toda actividad de su vida diaria. El ya que no podemos decirle a la computadora con la voz “abre la puerta”.
objetivo es construir habilidades para traducir situaciones del mundo real en escenarios de computación.
22 Pensamiento computacional 23
Acomodar las mesas del salón de clases en forma de laberinto y colocar las hojas grises en el El acomodo del laberinto deberá cambiarse en el transcurso de la clase.
camino del laberinto y al final la hoja azul, el objetivo del robot. Usa la imagen siguiente como
guía para acomodar el salón.
Comando Descripción
El robot tiene que utilizar este comando cuando esté sobre un bloque/hoja azul
para activar y poder terminar el programa.
Cierre
En esta actividad los alumnos comprendieron que las computadoras reciben instrucciones, así
como la importancia de tomar en cuenta que las instrucciones deben ser claras y precisas; ya que
si no se le dice a la computadora qué hacer de manera precisa, el programa no logrará el objetivo
Instrucciones para los alumnos propuesto. Es importante tener presente que la programación es como las matemáticas: puede
haber distintos procedimientos pero varios nos llevan al mismo resultado. Seguramente algunos
Los alumnos tendrán que desarrollar la serie de comandos (programa) para poder resolver el de tus compañeros realizaron la programación exactamente igual que tú.
laberinto y que el robot (un alumno) inicie en la primera hoja gris y termine en la hoja azul don-
de encenderá el foco (la meta), con las instrucciones que a continuación presentamos. El robot En las siguientes actividades aprenderás otros comandos que te servirán para hacer tu progra-
terminará el programa una vez que encienda el foco en todos los bloques azules. mación más corta y precisa para la computadora.
24 Pensamiento computacional
Para que los alumnos comprendan la relación que tienen los algoritmos con su vida diaria
deben desarrollar las habilidades para traducir situaciones de la vida real con escenarios
o programas para computadoras.
Actividad
Pregunta a tus alumnos qué hicieron para estar listos en la escuela esta mañana, escribe en
el pizarrón las respuestas que te van diciendo, sin importar el orden. Ahora pídeles que vayan
poniendo números a cada actividad según el orden lógico. Es momento de nombrar actividades
donde el orden es importante y las que en su caso no lo sean.
Te proponemos que hagan aviones de papel por equipos y se den instrucciones por pasos y com-
paren el resultado de los diferentes aviones y los pasos que necesitaron para hacerlos.
Sugerencias
Te proponemos también ver este video donde encontrarás más alternativas para poder explicar
a los alumnos la importancia de ver un problema en su totalidad y dividirlo para encontrar dife-
rentes soluciones, resaltando siempre el trabajo en equipo.
https://www.ted.com/talks/tom_wujec_got_a_wicked_problem_first_tell_me_how_you_
make_toast#t-462968
Entra a cuantrix.mx
28 Pensamiento computacional 29
Conceptos básicos de
2 programación Cuando se ejecuta “saltar” una vez, el gato pasa de una piedra a otra y avisa cuántos saltos le faltan para cumplir
el objetivo:
2.1 Eventos
Sesión 5. Repetición simple
Con computadora
Program.AR
Con esta sesión se empieza a trabajar en procesos más específicos que los alumnos irán
explorando sobre la base de lo ya aprendido. En este caso, la propuesta consiste en indagar
a través de una actividad de Scratch en los procesos computacionales implicados en la repe-
tición de tareas.
Si nunca has utilizado Scratch, te proponemos ver en la última parte de la currícula la guía
práctica de Scratch.
A partir de estas breves indicaciones, sugerimos dejar
Objetivos que los alumnos intenten resolver la actividad con lo
aprendido hasta el momento. Probablemente, la solución
• Aplicar herramientas de programación para la ejecución de tareas repetitivas. que propongan consista en repetir 30 veces el comando
• Reconocer que las computadoras pueden repetir una tarea cuantas veces sea necesario. saltar:
Actividad 1
Desarrollo
http://scratch.mit.edu/projects/42294970/#editor
Además de poca práctica, esta solución presenta el Tal como se hace con cualquier otro bloque que se desee
inconveniente de que puede ocasionar que sea difícil utilizar, éste se arrastra hasta el editor. Luego, en la
visualizar la manera de modificar la secuencia. Se vuelve casilla superior se indica la cantidad de veces que se
a presentar un problema similar al planteado en la desea repetir una acción. En el hueco inferior se ubica
El objetivo es hacer que el gato salte sesión anterior, donde con el fin de ahorrar las casillas la secuencia de comandos (en este caso, la acción que
30 veces para llegar a la última piedra. disponibles, se crean procedimientos o funciones ejecutará repetidamente el gato).
Para ello, en la categoría “Más bloques”, formado por dos o más tareas secundarias. Podría
sólo se da la siguiente instrucción suceder que algunos alumnos, teniendo esto presente,
primitiva: pregunten si existe algún tipo de comando que permita
economizar la cantidad de bloques, de manera que la
ejecución de los saltos pueda indicarse de forma menos
engorrosa. Una vez delimitado el problema, se presenta
el bloque repetir, ubicado en la categoría “Control”.
30 Pensamiento computacional 31
Consejo
Recordar que un evento es una acción que causa que algo suceda.
Tras esta explicación, nuevamente deja que los alum- Enséñales lo diferente que puede ser cada juego
nos intenten resolver el resto de la actividad. La solu- dependiendo de las condiciones.
ción es la siguiente:
Cierre Actividad 1
Al finalizar la secuencia, conviene hacer hincapié en los Prepara a tus alumnos para responder la siguiente pregunta:
siguientes aspectos:
• “Voy a hacerles una pregunta y quiero que levanten la mano si quieren que yo les dé la oportunidad de que
• Las computadoras pueden repetir una tarea cuantas me den la respuesta.”
veces sea necesario. • Ahora, formula una pregunta que sepas que la mayoría querrá contestar.
• Mediante el uso de determinados bloques de con- • Escoge a alguno de los estudiantes que tienen la mano levantada.
trol, como el bloque repetir, es posible ahorrar es- • Después de que responda, pregunta: ¿Cómo creen que supiste que ese estudiante quería decir la respuesta?
pacio y simplificar lo que se quiere expresar. Ade- • Explícales que cuando levantan la mano es un “evento” que causa que tú sepas que querían ser escogidos.
más, facilita corregir o modificar una secuencia de • Es importante subrayar la diferencia del significado de evento. Este concepto de evento no tiene nada que ver
comandos. con cumpleaños, fiestas y otras situaciones a las que solemos denominar eventos.
Alternativas • A partir de ahora, siempre que un comando o una se- • Diles que piensen en otros eventos que den señales: ¿Qué pasa cuando apagas una alarma de reloj? ¿Qué acción
cuencia de comandos se repita una cantidad fija de causa que lo hagas? Cuando presionas el botón de “Inicio” del horno de microondas, ¿qué ocurre?, ¿qué pasa
En caso de no poder utilizar Scratch, te proponemos veces, se utilizará el bloque repetir. cuando presionas un botón del control remoto de la TV?
intentar con la aplicación en la tableta de ScratchJr, • Los comandos o instrucciones que se quieran re-
con el siguiente PDF: petir se colocarán dentro de ese bloque. En el casi- Para todas las actividades anteriores, la meta es hacer una programación de actividades muy clara, sin interrupciones
llero en blanco del bloque se indicará el número de o eventos que pudieran alterar el resultado. Sin embargo, en la mayoría de los programas no puede hacerse eso,
https://www.scratchjr.org/activities/card05-forest_ veces que se repetirán los comandos. ya que buscamos que haya diferentes opciones para resolverlos debido a que existen diferentes necesidades.
es.pdf
Actividad 2
En la parte final del currículum encontrarás una guía
para utilizar ScratchJr. Ahora vamos a practicar cambiar programas con eventos.
Sesión 6. El gran evento
Sin computadora Vas a necesitar dibujar en una cartulina o en el pizarrón las siguientes imágenes:
Actividad 2. Bosque escalofriante Code.org
Descargar ScratchJr aquí: https://goo.gl/12UDl2 Los eventos son una gran oportunidad para agre-
gar variedad a los algoritmos que hemos practicado
Actividad extra hasta ahora.
Juego de Flappy de Code.org Algunas veces vas a necesitar que tu programa sea ca-
Con computadora paz de responder al usuario de la manera exacta en
que él lo quiera y para eso son los eventos.
https://studio.code.org/s/course2/stage/16/puzzle/1
En esta actividad los estudiantes aprenderán lo si-
En este juego, los alumnos aprenderán a construir su pro- guiente:
pio juego utilizando eventos e identificando los clics del
mouse con los choques de objetos. • Repetir comandos dados por un instructor.
• Reconocer acciones como señales para iniciar un
Van a crear un evento con el mouse y el pájaro golpea- comando.
rá el objeto. Así aprenderán a detectar cuando algo pasa • Diferenciar acciones predefinidas y las basadas en
y saber cómo reaccionar a tal evento. eventos.
32 Pensamiento computacional 33
• Designa con tus alumnos un sonido diferente para cada una de las figuras: 2.2 Comandos
1. Botón rosa o rectángulo: Dirán “wooooooo”.
2. Botón verde o estrella: Aplaudirán. Sesión 7. Presentación de Lightbot
3. Botón naranja o triángulo: Golpearán el piso con los pies. Con computadora
4. Botón morado o círculo: Dirán “bom-bon-bon”.
5. Botón turquesa o hexágono: “Dirán guauuuuu”.
Program.AR
• Ahora practica tocando cada una de las figuras y que todos hagan lo indicado. En esta sesión didáctica, comenzarán a utilizarse los bloques para resolver problemas. De este modo, frente a un
• Ahora, sigue algunas secuencias haciendo que hagan cada sonido y lo interrumpan cada vez problema determinado habrá una secuencia de bloques que será una solución y otras secuencias que no lo serán.
que señalas una figura diferente.
• Hazle saber a los alumnos que cada vez que seleccionas una figura, ése es un “evento” que El objetivo es lograr que en cada nivel el robot consiga prender la o las luces ubicadas en los cuadrados azules
les permite saber lo que tú esperas que hagan. del piso. Para ello, el usuario cuenta con una serie de acciones en forma de iconos y una casilla para ubicarlas.
• Ahora dales una tarea específica, como contar hasta 10 o cantar alguna canción. El juego ofrece la posibilidad de definir dos procedimientos (denominados funciones). En los primeros niveles no
• Cuando ya hayan comenzado, señalas alguna de las figuras esporádicamente. es necesario utilizarlos, por lo que te pedimos que dentro de esta secuencia los niños lleguen únicamente a los 8
• Continua hasta que puedan comprender la diferencia entre una acción guiada por un plan y primeros niveles.
otra acción alterada o modificada por un evento.
Objetivos:
Ahora puedes hacer incluso coreografías dándole a cada figura un movimiento diferente:
Aplaudir - levantar un brazo - manos a la cintura • Inferir que los programas pueden resolver problemas específicos.
• Identificar problemas y proponer soluciones mediante la programación.
• Reconocer el patrón que permite descomponer un problema en acciones más acotadas.
• Resolver problemas de manera más simple a partir del patrón que permite descomponerlos.
• Proponer diversas soluciones para un mismo problema.
Actividad 1
Desarrollo
Ir al juego aquí:
http://lightbot.com/hocflash.html o descargar la aplicación para Android aquí: https://goo.gl/DPtgZt
Luego de una breve introducción, se indica a los alumnos que ingresen a Lightbot, disponible en la liga anterior.
Una vez que terminó de cargarse el juego, se accede a una pantalla de presentación. La inteligencia artificial es una
tarea de programación compleja y hay que aclarar que no siempre los robots diseñados pueden manejarse y
funcionar solos, ya que algunos robots funcionan dentro de una trayectoria predeterminada por el programador,
que varía de una situación a otra. Por último, se señala en qué consiste el juego: utilizando una serie de comandos,
hay que lograr que el robot encienda todas las baldosas azules de la fábrica.
¡Empiecen a jugar!
Actividad extra
http://www.aprendeconelchavo.com/game/code/
Con tableta
https://goo.gl/OvbKJp
34 Pensamiento computacional 35
Los comandos primitivos del juego son los siguientes: Sesión 8. Laberintos: secuencias Cierre
Con computadora
Code.org Es importante detenerse a analizar y comparar las
actividades realizadas en Scratch con las llevadas a cabo
Comando Descripción
en Lightbot y a partir de ello, indicar los aspectos nuevos
Actividad en relación con el tipo de operaciones que realiza un
programa. Así mientras en los casos anteriores no
El robot avanza un lugar hacia adelante https://studio.code.org/s/course2/stage/3/puzzle/1 había un problema bien delimitado a resolver, en este
caso sabemos exactamente si el programa resuelve o
En esta actividad en línea, los alumnos comprenderán no el problema planteado.
los algoritmos aprendidos en las actividades anteriores.
El robot da un giro de 90º a la izquierda
Con los personajes de Angry Birds, los estudiantes Entre los aspectos novedosos, se encuentra el método
desarrollarán los algoritmos para mover al pájaro dentro de dividir un problema grande en partes pequeñas, lo
del laberinto. Para ello, van a apilar bloques en una cual se conoce en programación como división de tareas
El robot da un giro de 90º a la derecha secuencia lineal para moverse en línea recta o girar. secundarias y consiste en:
En este juego podrán expresar movimientos con • Identificar pequeñas tareas fáciles de explicar
comandos y establecer las secuencias necesarias (avanzar un paso, subir un escalón, encender la
El robot sube o baja un escalón (avanzando un lugar hacia adelante). para programar. luz) y asignarles un nombre adecuado para que se
entienda lo que representan.
Siempre que sea posible, proponemos trabajar en • Cambiar estas pequeñas tareas para definir el
El robot tiene que utilizar este comando cuando esté sobre un bloque u hoja azul parejas. programa que resuelve el problema, (los procedimientos
para activar y poder concluir el programa en Lightbot se llaman funciones).
Hasta ahora ya hemos realizado diferentes actividades traduciendo nuestros algoritmos a símbolos. Eso quiere
decir que hemos creado programas con códigos.
Vamos a suponer que tenemos códigos “nuestros” para cada una de las instrucciones. Por ejemplo, para una
instrucción podemos usar flechas, símbolos, movimientos de brazos, etc. Si tenemos nuestros códigos especiales
para cada paso, entonces tendremos un programa.
Objetivos
• Saber distinguir las órdenes con secuencias y pasos Clave simbólica: Levantar el vaso-paso hacia adelante-paso hacia
dentro de un programa. adelante-bajar el vaso-paso hacia atrás-paso hacia
• Predecir dónde podría fallar un programa. ↑ Levantar el vaso atrás (para regresar la mano).
• Modificar un programa existente y resolver ↓ Bajar el vaso Levantar el vaso-paso hacia adelante-paso hacia
problemas. → Mover vaso hacia adelante (mitad del ancho de vaso) adelante-paso hacia adelante-paso hacia adelante-
• Identificar cuando un algoritmo no está bien ← Mover vaso hacia atrás (mitad del ancho de vaso) bajar el vaso-paso hacia atrás-paso hacia atrás-paso
programado y tendrá que reajustarse. hacia atrás-paso hacia atrás.
Pasos: Levantar el vaso-paso hacia adelante-paso hacia
Palabras importantes adelante-paso hacia adelante-bajar el vaso.
1. Necesitas grupos de cinco alumnos. A cada grupo
Precisión: Ajuste completo o fidelidad de un dato, le corresponde un turno. Tienen que elegir un El ejercicio te está enseñando a lo siguiente:
cálculo, medida, expresión, etc. “robot” por equipo y salir de la clase mientras los
“programadores” codifican. Programar: Cuando los alumnos tienen el número de
Secuencia: Serie de elementos o pasos que se suceden 2. Enséñales la imagen de la pila de vasos. Sigue con cada uno de los equipos y en su turno pídeles vasos que necesitan y les pides que te den las instruc-
unos a otros y guardan relación entre sí. 3. Los grupos crearán un algoritmo (con las claves que te den una instrucción a la vez para llegar a formar ciones con los símbolos para ejecutar los movimientos
simbólicas) con instrucciones sobre el modo en la pila de tres vasos. La primera acción tiene que ser necesarios para llegar a formar la misma figura, están
Codificación: Traducir acciones a un lenguaje de símbolos. que el robot debería realizar la pila seleccionada. “levantar el vaso”. Recuérdales que un paso hacia haciendo un programa.
4. Una vez que los programadores han finalizado la adelante implica sólo la mitad del ancho de vaso.
Función: Fragmento de código que puede reiterarse o codificación de su pila, pueden llamar a su robot Código: Con la clave simbólica los alumnos crean un
repetirse ininterrumpidamente. para que regrese al salón. código para que su “robot” lo ejecute.
5. Después de regresar, el robot leerá las instrucciones
Parámetros: Información adicional que puede agregarse escritas con los símbolos y los ejecutará o traducirá Ahora que todos entendieron la actividad y saben
a una función para personalizarla. en movimientos para lograr la misma pila de vasos. programar a su “robot”, haz una figura como la que se
6. El grupo debe controlar los movimientos incorrectos muestra a continuación. Es un reto mucho más difícil,
A medida que los estudiantes van avanzando en la y luego trabajar en la depuración o corrección de ¿qué hace que formar esta pila lo sea tanto?
actividad, el modo en que van identificando sus errores, su programa antes de solicitar al robot una segunda
tratando de que encuentren diferentes estrategias y ejecución.
que las compartan con toda la clase. Esto ayuda a los
alumnos a reconocer que existen muchas maneras de Reglas:
abordar los problemas.
1. Los codificadores deben traducir todos los movimien-
Tratar de resolver juntos diferentes problemas y detectar tos utilizando únicamente las 6 flechas sugeridas.
errores que pueden resolverse. 2. Cada clave simbólica se refiere al movimiento del
brazo del robot.
Actividad 3. Los vasos deben quedar en poder del robot y no de Ve apuntando en el pizarrón los símbolos para poder
los programadores durante la codificación. “correr el programa” más tarde. Una posible solución
Los robots operan mediante “instrucciones”, conjuntos 4. Una vez que los robots regresen con sus equipos, podría verse así:
específicos de acciones para las que han sido prepro- no debe hablarse en voz alta.
gramados. Para realizar una tarea, un robot necesita
contar con una serie de instrucciones (llamadas algo- Ejemplo:
ritmos) que pueda ejecutar. Vamos a aprender lo nece-
sario para que esto ocurra. Resulta útil repasar un ejemplo con toda la clase
haciendo una pila de 4 vasos en un lugar en donde todos
Material: puedan verla. Acomoda los vasos en pila en el lugar de la
bandera 0 y pídele a cada equipo que te dé, en su turno, Esta pila es bastante compleja; ya que se agrega a lo
Necesitas vasos de plástico, por lo menos unos 17. las instrucciones para pasar la misma pila al lugar de la ancho, suma dos flechas más a la línea de código en
bandera 1: Con el programa escrito a la vista de la clase, llama a la indicación de los pasos hacia adelante y dos en los
Escribe los símbolos de cada clave simbólica en el pi- un voluntario para “correrlo”. Te recomendamos decir pasos hacia atrás. Para lograrlo, tendrás líneas que se
zarrón. Explícales que estos serán los únicos seis a uti- ↑ Levantar el vaso ← Mover vaso hacia atrás el significado de las flechas en voz alta a medida que verán así:
lizarse durante el ejercicio. Para esta tarea, instruirán ↓ Bajar el vaso mueven los vasos para que se sigan familiarizando con
a su “robot” para que ejecute una pila de vasos especí- el procedimiento. Por ejemplo; el programa de arriba
fico utilizando únicamente las siguientes flechas: se diría así:
38 Pensamiento computacional 39
Cuándo aprendiste a caminar, ¿lograste correr en el primer intento? Reflexiona con tus alumnos lo siguiente:
A veces las cosas más útiles son las más difíciles de aprender; podemos tardar mucho en lo- Cada problema al que nos enfrentamos tiene diferentes grados de dificultad. Si queremos tener opor-
grarlo. Si algo no te sale a la primera, no significa que nunca lo lograrás. tunidad de hacer algo creativo, útil e inteligente hemos de tener la voluntad de resolver problemas
que nos cuesten trabajo en los que sea necesario hacer varios intentos antes de lograr resolverlos.
Pon a pensar a los alumnos en cosas que al principio fue difícil aprender y ahora hacen con
facilidad (andar en bicicleta, caminar, manejar). Equivocarse no es el final, es solo el camino a lo largo del cual tendremos éxito.
Explícales que cuando algo no te sale bien, tienes que recapacitar cuáles podrían ser las causas
y así poder solucionarlas y volver a intentarlo. En la programación, las correcciones o depuraciones
Es importante enseñar la PERSISTENCIA. No importa cuántas veces tengas que son elementos importantes.
intentar hacer las cosas para lograr el resultado que buscas. Las cosas pueden ser
difíciles, pero no imposibles. Si eres persistente y no te rindes, lograrás tener éxito. Tienen que aprender que deben modificarse las instrucciones las veces que sea necesario para po-
der lograr su programa. Para esto es importante predecir en qué sitio están los errores, y depurarlo.
Recuerda que la manera en que podemos variar algún algoritmo que ya habíamos
escrito puede llamarse Evento. Cuando buscas que tus programas respondan en el Depuración: El proceso de identificar y corregir errores de programación. En inglés
momento exacto en el que el usuario quiere, será necesario un “evento.” se conoce como debugging. Cuando encuentras y corriges un problema en un código.
Una limpieza de algo que consideras que está mal, o no funciona como es debido, una
corrección de errores.
En esta actividad, los estudiantes aprenderán a controlar el juego para completar dibujos. Una vez realizadas las actividades de programar en papel, los alumnos van a tener facilidad de
realizar esta carrera contra reloj.
Objetivos
Los alumnos tendrán que trabajar en equipos y hacer un programa basados en un algoritmo con
• Crear un programa para completar una imagen utilizando una secuencia de pasos. instrucciones claras y ordenadas.
• Poder definir diferentes figuras y explicar las diferencias entre ellas para lograr dibujarlas.
Objetivos
Organiza una lluvia de ideas para que imaginen cómo dibujar con la computadora.
• Saber comunicar ideas traduciéndolas a códigos y símbolos.
En los niveles, los estudiantes tendrán que diferenciar los ángulos. • Trabajar en equipo para lograr metas.
• Verificar el trabajo de todo el equipo para garantizar el éxito.
https://studio.code.org/s/course2/stage/4/puzzle/1
40 Pensamiento computacional 41
Materiales: Como ya aprendimos a programar este tipo de imágenes con símbolos, el ejercicio nos será familiar; solo que
ahora lo haremos en equipos y en relevos.
Se requiere pizarrón, papel blanco u hojas cuadriculadas o tarjetas para poder dibujar las si-
guientes imágenes: Las reglas son las siguientes:
1. Dividirse de preferencia en grupos de 3 a 5 personas.
2. Hacer que cada grupo se acomode en fila, a manera de relevos.
3. Poner la misma imagen en el sitio adonde va a llegar cada corredor de los diferentes equipos.
4. El primer estudiante o participante sale corriendo hacia la imagen, la revisa y escribe el primer símbolo en el
programa, para empezar así a reproducir esa imagen.
5. El mismo estudiante, al terminar, correrá de regreso a la fila de su equipo, se formará y tocará al siguiente
participante para que éste salga.
6. La persona en la línea que ha sido tocada saldrá corriendo hacia la imagen, la revisa y, al ver el programa
que ya empezó a escribirse, lo revisa. En caso de tener que depurar, lo hará tachando el símbolo que no esté
correcto, o de lo contrario agregará el suyo.
7. El participante corre a su fila y toca al siguiente, y así sucesivamente hasta que algún equipo termina el programa.
Juega esto varias veces en el espacio que hayas decidido hacerlo; el patio es una buena opción. En caso de no
tener un espacio grande, es posible hacerlo perfectamente con todos sentados en su silla y pasando la hoja entre
los equipos.
Actividad 2
Algunas veces, cuando estás programando en grupos, alguno de los integrantes comete errores y hay que corre-
girlos, hay que depurarlos.
A partir de cada una de las siguientes imágenes, encontrarás un código ya escrito con algún error. Dibújalo en el
pizarrón, ve quién encuentra la falla y cuál es el símbolo correcto.
Recuérdales la importancia del trabajo y la confianza en los equipos; que cada equivocación tiene arreglo y siem-
pre se aprende de cada error para que las cosas salgan mejor.
SE SUGIERE PRACTICAR LA EVALUACIÓN 2 AL CONCLUIR ESTA UNIDAD. LA ENCONTRARÁS AL FINAL DE ESTE MANUAL.
Entra a cuantrix.mx
46 Pensamiento computacional 47
Conceptos intermedios
de programación
También es posible descargar todos los escenarios en Ahora organiza otra secuencia utilizando los bloques
la siguiente liga: anteriores, por ejemplo:
http://programar.gob.ar/descargas/actividades.zip
Ingresen al programa El gato en la calle, disponible en línea. Si está en inglés, cambia el idio-
ma de la interfaz haciendo clic en el botón que se encuentra en el menú de la parte superior
de la pantalla.
Hasta ahora se han utilizado bloques que correspon- Simplemente, deberán arrastrar los bloques: acostarse Actividad 2
den a acciones primitivas, es decir, acciones básicas y cerrar los ojos de la lista más bloques. Después, ne- Conduzca por toda la ciudad
preestablecidas. También es posible crear nuevos blo- cesitarán colocarlos debajo del bloque definir dormirse.
ques, es decir, nuevas acciones. A éstas se les denomi- Descargar Scratch Jr. aquí: https://goo.gl/12UDl2
nará procedimientos.
Ahora que los alumnos saben cómo definir nuevos blo- Ser “programado” por otra persona nos dará una idea para entender lo que es realmente la programación.
ques de acciones, pídeles que creen y definan un nuevo
Para esto se presiona dentro de la opción Más bloques procedimiento, al que llamarán despertarse, que haga En esta actividad los estudiantes se programarán entre sí y tratarán de dibujar con las instrucciones. Así apren-
el botón Crear un bloque. Al hacerlo, se abre una que el gato abra los ojos y se levante. La definición del deremos los mecanismos básicos que la programación supone. Para ello, se proponen algunas actividades para
ventana con un bloque en blanco en el cual se escribe procedimiento debería verse de la manera que muestra que los alumnos programen en papel.
el nombre del nuevo bloque (en este caso, dormirse). el gráfico:
Objetivos
Desarrollo
Para las actividades que siguen se utilizarán dos hojas cuadriculadas (pueden ser cuadrículas dibujadas sobre
Una vez que se ha completado el nombre del bloque, Como cierre, solicita a los alumnos que armen y ejecu- hojas en blanco), un lápiz y una goma de borrar. Una hoja se usará para programar y otra para dibujar, siguiendo
se presiona “ok”. En el editor aparece un nuevo bloque. ten la secuencia de acciones necesarias para hacer que las instrucciones de un programa. En la parte superior de cada hoja se indicará el uso que le corresponde:
el gato avance un paso, se duerma, se despierte, salu-
de y vuelva a su lugar. Esto debería resolverse como lo “Programas” y “Dibujos”. Para programar, se emplearán los siguientes comandos (es decir, instrucciones):
muestra este otro gráfico:
Alternativas
https://www.scratchjr.org/activities/card01-car_es.pdf
50 Pensamiento computacional 51
La programación se realizará de forma similar a como Para utilizar un procedimiento se escribe su nombre Este programa supone las siguientes definiciones de los procedimientos:
se hace en Lightbot, pero en vez de ubicar los coman- entre corchetes en el lugar del programa que corres-
dos horizontalmente, de izquierda a derecha, se ubi- ponda: [Dibujar ventana]
carán de arriba hacia abajo, poniendo un comando por
renglón. Por ejemplo, la siguiente secuencia corres- A su vez, los procedimientos definidos pueden utilizarse
ponde a las instrucciones necesarias para dibujar un para definir otros procedimientos nuevos:
cuadrado:
Dibujar ventana doble
[Dibujar ventana]
→4
[Dibujar ventana]
Conviene hacer hincapié en que, al crear un procedimiento para cada parte del dibujo no es necesario cambiar el
programa principal para que el dibujo del perro sea más grande; basta con hacer los ajustes pertinentes en las
Inicio definiciones de los procedimientos.
Igualmente, mediante esta estrategia (que no es otra cosa que una subdivisión de tareas), es posible encontrar fá-
cilmente la parte del programa que tiene errores en el caso de que el dibujo resultante no sea el esperado. Por otra
Actividad 1 parte, es importante destacar que si los procedimientos se hubieran definido privilegiando un criterio meramente
Esta secuencia de cuatro pasos puede constituir un formal —por ejemplo, indicando los movimientos y los trazos que el lápiz debería hacer columna por columna o fila
procedimiento (es decir, un procedimiento es un comando Luego de explicar las reglas anteriores, proponle a los por fila— en vez de hacerlo por figuras (cabeza, cola, pata), sería necesario cambiar todo el programa para modi-
nuevo integrado por un grupo de acciones o tareas alumnos que realicen los programas para cada uno de ficar el tamaño del dibujo y además resultaría más complicado detectar las fallas que pudiera haber. Las mismas
secundarias que forman parte de una actividad más los dibujos que se incluyen a continuación. abstracciones que usamos habitualmente en la descripción de objetos son útiles para programar.
amplia). Cada procedimiento, para cuya definición se
podrá utilizar la parte inferior de la hoja Programa, La estrategia empleada para programar el primer dibujo puede usarse en los otros dibujos; así, por ejemplo, el
tendrá un título que será un nombre breve que sea su- programa principal correspondiente al último dibujo quedaría de esta manera:
ficientemente descriptivo de la tarea a la que remite
seguido de su definición.
[Dibujar cabeza] [Ir a pierna trasera] Como variante o complemento de las actividades anteriores, podrá indicarse a los alumnos que cada uno piense un di-
bujo, lo programe y luego le dé a un compañero el programa para que, siguiendo las indicaciones reproduzca el dibujo.
[Ir a cuerpo] [Dibujar pierna]
Cierre
[Dibujar cuerpo] [Ir a cola]
Se sugiere socializar las producciones de los alumnos y evaluar las dificultades que hayan surgido al programar
[Ir a pierna delantera] [Dibujar cola] en papel. Al respecto, podrás pedirles a los alumnos que reflexionen, acerca del uso de los procedimientos: cómo
Por ejemplo, a la secuencia anterior puede asignársele los definieron, cuáles fueron los nombres que les asignaron y si les resultó más conveniente hacer varias tareas
el nombre “Dibujar ventana”: [Dibujar pierna] secundarias o programar todo el dibujo en una sola tarea.
52 Pensamiento computacional 53
Palabras y conceptos importantes: Para esta actividad necesitarás juegos de cartas, sin
importar si están completas, hojas de papel y lápiz.
En este programa, el maestro escoge una carta, si la Escribe uno de los programas en el pizarrón y que em-
Sesión 14. Condicionales con cartas carta es roja, entonces un equipo gana un punto; si la piecen a jugar apuntando en un papel los puntos que
Sin computadora carta no es roja, entonces el otro equipo gana el punto. acumulan.
Code.org
Es importante jugarlo muchas veces con condicionales
No siempre sabemos cómo serán las cosas cuando creamos un programa. Los diferentes usua- diferentes para que entiendan el concepto. Pon cada
rios tienen diferentes necesidades y a veces querrás hacer algo basado en la necesidad de un vez más condicionales.
usuario, que no sea la misma del siguiente: para eso son las condicionales.
En este programa, alguien escoge la carta y, si es roja,
Actividad entonces su equipo tiene un punto. Pero si la carta es
negra y más alta que 9, entonces el otro equipo tiene
Esta actividad demuestra el modo en el que las condicionales se usan para construir un progra- un punto. Pero si la carta es negra y más baja que 9,
ma con información específica. entonces el equipo tiene el mismo número de puntos
que marca la carta.
Objetivos
O puedes hacerlo en pseudocódigo de la siguiente Hazles notar que los códigos siempre van dentro de las
• Definir circunstancias en las cuales el programa debe cambiar su proceso. manera: llaves “{ }”. El mismo programa escrito en pseudocódigo
• Determinar los criterios que harán que una condicional se cumpla. se vería así.
• Saber interpretar un programa y predecir sus puntos débiles.
54 Pensamiento computacional 55
Sesión 15. Abejas: Condicionales • El que no tenga zapatos negros espera hasta que
Con computadora todos salgan.
Code.org • El que no haya hecho la tarea espera hasta que
todos salgamos a recreo.
Hasta este momento, la mayoría de los programas que
los estudiantes han realizado corren de la misma for- Actividad 2
ma sin flexibilidad.
Abejas con condicionales
En esta etapa introduciremos las condicionales; códi- Code.org
gos que funcionan diferente dependiendo de las condi-
ciones que se encuentren. Ahora vamos a practicar las condicionales con el mis-
mo juego de abejas, pero lo haremos más complejo.
Es importante observar que las condicionales pueden ser “verdaderas” o “falsas”. Objetivos
Objetivos
Dales la siguiente actividad para trabajar en equipos: • Traducir el lenguaje hablado a condicionales para
un programa. • Comparar las propiedades y los valores de los
Si tu carta es menor a 5 y si tu carta además es roja, entonces tu equipo gana los puntos del nú- • Ejecutar un algoritmo con condicionales. símbolos ‹,=,›.
mero que marca tu carta. Pero si es otra cosa, entonces el otro equipo gana 1 punto. También, • Resolver laberintos usando combinaciones de se- • Traducir condicionales del lenguaje hablado a los
si la carta es de corazones, tu equipo gana 1 punto. cuencias y condicionales. símbolos.
• Ejecutar un algoritmo con condicionales.
Tienen que utilizar condicionales para ayudar a la abeja • Utilizar condicionales para tomar una decisión lógica.
a lidiar con la flor morada. Nadie sabe si las flores tie- • Escribir funciones con condicionales.
nen néctar, así que tendremos que usar las condiciona-
les para colectar néctar en caso de que lo haya.
Actividad 3
https://studio.code.org/s/course2/stage/13/puzzle/1
https://studio.code.org/s/course3/stage/7/puzzle/1
Así pueden ir imaginando y poniendo diferentes condi- Es importante subrayar la aclaración de que las con-
cionales, por ejemplo “espera hasta”. dicionales pueden ser verdaderas o falsas.
56 Pensamiento computacional 57
Mediante este bloque, es posible hacer que el mono verifique si está tocando la fruta. Para ello,
se hace clic exactamente sobre el casillero con la punta de flecha que se encuentra junto a To-
cando y se selecciona la banana:
Para resolver la actividad, es necesario utilizar el bloque nuevo (ya presentado en la actividad ante-
rior), “si… entonces”. Como recordarás, este bloque, que se encuentra en la categoría Control (en
el menú), permite ejecutar un comando sólo en el caso de cumplirse cierta condición.
Sin embargo, antes de intentar ver cómo se utiliza este bloque, conviene dividir el problema;
es decir, establecer la secuencia de acciones adecuada para el objetivo. Ello implica definir al
menos un procedimiento al que podemos denominar: “comer banana si hay” que resuelva el
problema de comer una banana solo en el caso de que ésta exista.
Si observas la forma de este bloque, notarás que es idéntica al casillero del bloque
Teniendo en cuenta este procedimiento, el programa que ejecutará el mono será tan simple “si… entonces...”:
como el siguiente:
Ahora bien, ¿cómo definir “comer banana si hay”? Dado que el mono comerá la banana si ésta
existe, es necesario darle alguna indicación para que sepa si la fruta está presente. En este
sentido, para que el mono reconozca la fruta y la coma, se presentará el bloque “¿tocando…?”,
ubicado en la categoría Sensores.
60 Pensamiento computacional 61
Esto no es casual, ya que corresponde a la condición con la cual se vincula un comando (o una Actividad 2
secuencia de comandos):
La segunda parte de esta secuencia didáctica se compone de una variante del siguiente
ejercicio:
Se comenzará con el proyecto de Scratch “La elección del mono”. Al ingresar y hacer clic varias
veces en la bandera verde, podrán observarse aleatoriamente los siguientes cambios de escenario:
Esta primera parte de la instrucción se lee: “si tocando banana, entonces…”. Para completarla,
es necesario elegir el comando que se ejecutará en el caso de que se cumpla esa condición.
Luego de haber explicado el uso de los bloques “si... entonces…” y “¿tocando…?” deja que los
alumnos terminen de definir el procedimiento “comer banana” y, finalmente, verificar que el
problema se resuelva correctamente presionando varias veces la bandera verde. Es importante destacar que en la casilla que se encuentra a la derecha del mono hay una u otra
fruta, pero no ambas a la vez. La secuencia siguiente daría un resultado incorrecto:
62 Pensamiento computacional 63
Sin embargo, antes de intentar ver cómo utilizar este bloque, conviene dividir el problema; es Deja a los alumnos concluir la actividad a partir de este punto. Primero, deberán definir el
decir, establecer la secuencia de acciones (o comandos) adecuada para el objetivo. Ello implica procedimiento “comer banana si hay”; después, terminar de definir el procedimiento “comer
definir al menos un procedimiento al que podemos denominar “comer fruta”, que resuelva el fruta” y finalmente, verificar que el problema se resuelva correctamente presionando varias
problema de comer una manzana o una banana. veces la bandera verde.
Teniendo en cuenta este procedimiento, el programa que ejecutará el mono será tan simple
como el siguiente:
Alternativa
https://www.scratchjr.org/activities/card09-talk_es.pdf
Actividad 3
Dado que el mono debe comer la manzana o la banana, es necesario darle alguna indicación Conversación
para que identifique qué fruta se trata en cada caso. Así, el problema de comer fruta incluye a
su vez otros dos similares a los de la actividad anterior: Descargar Scratch Jr. Aquí: https://goo.gl/12UDl2
Cierre
Se sugiere hacer hincapié en la idea de que toda alternativa condicional consta de dos partes:
una condición y una acción. Si se cumple la condición, entonces se realiza la acción. Asimismo,
sugerimos repasar con los alumnos las alternativas condicionales utilizadas en “La elección del
mono” (los dos “si… entonces...” de ambos procedimientos) y de qué condición y de qué acción
consta cada una. A continuación, indícales que propongan otros ejemplos de alternativas condi-
cionales. Por ejemplo, el programa “irse del salón” podría constar de las alternativas “cerrar
la ventana” (si está abierta) y “cerrar la puerta” (si está abierta).
64 Pensamiento computacional 65
Program.Ar
Actividad
Desarrollo
http://scratch.mit.edu/projects/42293070/#editor
Basta un rápido vistazo para notar que en esta solución (y en otras parecidas, que sólo varían en-
tre sí por el orden en que se ubican las instrucciones primitivas), se repiten algunas secuencias:
El objetivo es que el marciano coma todas las manzanas del tablero (en el caso de que al ingre-
sar no se vean las manzanas, basta con hacer clic en el icono ). Para ello, disponemos de las
siguientes instrucciones que se encuentran en la opción “Más bloques”:
66 Pensamiento computacional 67
Una vez que has identificado estas secuencias, deja que clic, en la sección “Más bloques”, en la indicación “Crear reformular la secuencia de comandos del programa. Los Anexo 1 con ejercicios extra del mismo tema
los alumnos vuelvan al problema y traten de resolverlo un bloque”. Luego, en la carpeta que se encuentra dentro procedimientos deberán quedar definidos de esta manera:
mediante el uso del bloque repetir (que fue presenta- de la nueva ventana, se escribe el nombre que se desea
do durante la secuencia didáctica anterior). Cabe con- asignarle al procedimiento; en este caso, el nombre pue-
templar la posibilidad de que algunos alumnos, en vez de ser “Comer 2 derecha”:
de acudir a la solución primitiva mostrada más arriba, Sesión 20. Loops
prevean el uso de este bloque ya desde una primera Sin computadora
instancia y que intenten utilizarlo (con menor o mayor Code.org
éxito). En ese caso, sugerimos no dar mayores preci-
siones que las que se dieron al comienzo y antes de Existe el término en inglés loop, que describe acciones
avanzar con la explicación aguardar a que la mayoría que se repiten un cierto número de veces. En esta ac-
de los alumnos hayan hecho al menos un primer ejer- tividad, los estudiantes aprenderán a convertir algunas
cicio para resolver el problema. El uso del bloque repe- acciones en repeticiones o loops. La palabra correcta
tir permitirá llegar al siguiente resultado: en español es iteraciones.
Objetivos
Al presionar OK, aparecerá en el editor un nuevo blo-
que, el correspondiente a la definición del procedi- • Repetir acciones iniciadas por el maestro.
miento, que debe completarse con las acciones o co- • Poder traducir un programa dibujado en un baile.
mandos primitivos que deseas que ejecute el marciano. • Convertir una serie de acciones en un solo loop o
En este momento, indica a los alumnos que definan el iteración.
procedimiento. La definición se verá así:
El programa finalmente debería quedar así: Actividad
Desarrollo
“Pon mi canción, pon mi canción, pon mi canción, pon mi canción”. Durante este nivel los alumnos aprenderán a crear El método para resolver este nivel reside en repetir los
loop o iteración, es decir, crear una serie de comandos comandos del Proc 1, pero primero es necesario que el
Lo mejor sería decir desde un, principio: “Pon mi canción 4 veces”. para que el robot repita la misma acción y prenda las alumno defina cuál sería el procedimiento para poder
luces sin necesidad de repetir todo el proceso, y resol- hacer la tarea indicada.
ver así el nivel de una manera más lógica.
Actividad
Para que recuerdes bien qué significa cada comando en la nueva versión de Lightbot y puedas
relacionarlos con las instrucciones de esta versión, revisa el siguiente cuadro:
En este nivel, el alumno necesitará un comando para reproducir la tarea requerida dentro del
(MAIN METHOD); en el segundo recuadro tendrá que definir lo que llevará el Proc 1 (Procedi-
miento 1) para repetirlo y lograr el objetivo.
La manera de resolver este nivel es repitiendo las ac- En este nivel 3-6 el alumno debe pensar en prender las
ciones en la dirección adecuada para que avance a la primeras dos luces de tal manera que quede del mismo
derecha o a la izquierda. lado donde empezó para repetir los comandos y avan-
zar a la siguiente esquina.
En el nivel 3-3 se requieren más comandos para poder concretar el ciclo. Es importante notar
que no porque se vea más complejo significa que sea difícil.
En el nivel 3-5 se agrega un recuadro para el procedi- Hay varias maneras en las que pueden completarse los
miento 2 (Proc 2), que el alumno tendrá que identificar, niveles, debido a que cada alumno tiene diferentes ma-
para poder combinar los comandos Proc 2 y Proc 1 en neras de pensar. Es posible que tú lo hayas resuelto de
Para este nivel, el alumno tiene que repetir los comandos de una esquina para lograr avanzar y diferentes procesos y así simplificar los pasos y resol- forma diferente y funcione.
dar la vuelta para cumplir el objetivo. ver la tarea requerida.
Para resolver este nivel es necesario pensar en una se- Si en algún momento no logras resolver el nivel, no
En el nivel 3-4, el alumno tiene que definir los comandos correctos para avanzar de un lado a rie de comandos para que el robot logre dar la vuelta y te desesperes, mejor piensa la manera como podrías
otro y prender todas las luces. siga prendiendo las luces. resolverlo y busca más soluciones.
72 Pensamiento computacional 73
3.6 Funciones y variables Cuando ya estén listos y tengan su material, enséñales tu muestra y diles que no importa lo diferentes que sean
las piezas que trajeron, el desarrollo de la actividad será el mismo; tampoco importa el tipo de hilo o cordón con
el que lo amarren y que la pieza especial que trajeron es única de entre todas.
Objetivo
Una función se define de encapsular una tarea que contiene muchas instrucciones,
justas para resolver un programa. Es un “pedazo” de un programa con un fin espe-
cífico. Esto nos permitirá entender un programa como un conjunto de pasos.
Actividad 1
Desarrollo
Para esta actividad necesitarás pedirles hilo o cordón con el que podrán ensartar chaquiras,
botones, pasta o papelitos, que también deben traer. Las piezas tienen que ser de 2 formas
diferentes (A y B).
Para el final del llavero necesitarán una pieza de su elección que pueda también ensartarse.
Lo ideal sería que tú hicieras una pulsera o un llavero con un patrón determinado usando dos
tipos diferentes de piezas con nudos entre ellas y con una pieza única.
74 Pensamiento computacional 75
Tendrán que observar que pueden respaldarse con es- Propón estas actividades para fortalecer el aprendizaje Para que recuerdes bien qué significa cada comando en la nueva versión de Lightbot y puedas relacionarlos con
tos formatos y poner en cada uno de ellos algunos de de los estudiantes: las instrucciones de la antigua versión, revisa el siguiente cuadro:
los pasos para poder usarlos en el programa y ahorrar
líneas. Esto es una función. Dales la oportunidad a que • Haz una lluvia de ideas sobre las actividades de los
ellos propongan. alumnos en la escuela.
Comando Descripción
• Divide a los estudiantes en pequeños grupos y dale
Pídeles que te compartan las diferentes formas que a cada grupo una hoja grande de papel.
ellos encontraron y después muestra la siguiente ma- • Cada grupo escribirá la actividad diaria como una
nera de hacerlo: función y deberán crear un cartel con el código de El robot avanza un lugar hacia delante
las funciones.
La opción puede denominarse Habilidad 1: • Escribe con toda la clase un programa del típico día
1-pieza A; 2-nudo; 3-pieza A; 4-nudo; 5-pieza B; 6-nudo de clase, nombrando a cada grupo como una función.
El robot da un giro de 90º a la izquierda
Habilidad 2:
1-pieza única; 2-nudo final
Sesión 23. Funciones con artista El robot da un giro de 90º a la derecha
Programa: Con computadora e internet
1-habilidad 1; 2-habilidad 1; 3-habilidad 2 Code.org
Ahora pregúntales cómo harían si tuvieran que repetir Para reforzar el aprendizaje de las funciones, los El robot sube o baja un escalón (avanzando un lugar hacia adelante)
la secuencia miles de veces. alumnos podrán dibujar formas en la pantalla las cuales
podrán modificar de acuerdo con diferentes propósitos.
Lo importante es saber que realizas una misma acción El robot tiene que utilizar este comando cuando esté sobre un bloque u hoja azul
varias veces aunque no sepas cuál material o variable Objetivo para activar y poder terminar el programa
vas a utilizar para que esto suceda y que el que existan
diferentes variables no altera tu resultado: llegar a una • Utiliza una función predeterminada para dibujar El robot utiliza este comando para guardar programas que se repiten
meta determinada. una figura y repetirla. constantemente
• Modifica una función existente para dibujar dife-
Actividad 2 rentes figuras.
• Distingue entre funciones y loops. El robot utiliza este comando para guardar programas que se repiten
Abeja: funciones • Crea un programa con funciones. constantemente. Se utiliza este bloque cuando ya se ha usado el comando P1
Con computadora
code.org Actividad
https://studio.code.org/s/course3/stage/5/puzzle/1
En esta actividad los estudiantes usarán y modificarán Avanzar (hace que el robot avance una casilla, excepto si está frente a una pared o a un desnivel, en cuyo caso
funciones para ayudar a la abeja a recolectar néctar y permanece en el mismo lugar).
hacer miel.
Sesión 24. Lightbot nivel 2 Girar a la derecha
Objetivos Con computadora
Girar a la izquierda
• Usar funciones predeterminadas para completar Para reforzar el aprendizaje de los comandos de Lightboth
las tareas repetidas. Saltar (permite al robot saltar por encima de un solo bloque, o bien saltar desde uno).
• Modificar la función existente para completar dife- Actividad
rentes tareas. Encender luz (si está apagada)
• Crear una función desde Scratch. Ir al juego en este link: o
http://lightbot.com/hocflash.html Apagarla (si está encendida)
Actividad 3
o descargar la aplicación para Android aquí: Función 1 y 2 (es lo mismo que proc 1 y proc 2)
https://studio.code.org/s/course3/stage/6/puzzle/1 https://goo.gl/DPtgZt.
Los alumnos entrarán al nivel 2 y completarán todas las actividades que se recomiendan.
A partir de aquí, tendrán que utilizar más espacios dentro del área principal (Main).
76 Pensamiento computacional 77
El alumno tiene que estar al pendiente de que cuan- Lo importante es que los alumnos logren identificar soluciones más adecuadas (aunque es menos proba- con un propósito bien definido y estar formado por se-
do encuentre un patrón que se repita, puede crear una patrones que les permitan ahorrar casilleros al definir ble que los alumnos las propongan) podrían ser las si- cuencias de acciones que se repiten muchas veces a
función con un comando específico llenando los blo- nuevas tareas. Con el fin de reforzar la continuidad de guientes: lo largo del programa. En relación con esto, pide a los
ques de cuadros de funciones: proc 1 y proc 2 . estas operaciones con las ya practicadas en Scratch, alumnos que busquen, en el intento de solución plan-
indica a los alumnos que propongan un nombre para la teado, alguna secuencia que se repita. Esta secuencia
Cuando utilicen las nuevas áreas, el comando p1 le tarea ejemplificada que sea suficientemente descripti- está formada por las acciones avanzar y encender luz.
dirá al robot qué hacer con un comando, éste incluye vo de la acción a realizar.
simplemente todos los movimientos que hay en proc 1 Esta observación constituye un buen punto de partida
. Lo mismo ocurre cuando tengan que utilizar proc Una vez que has explicado cómo crear nuevos procedi- para que los alumnos profundicen en la utilidad de los
2 . mientos en Lightbot, los alumnos están en condiciones procedimientos en programación. Así, siguiendo con
de solucionar el problema que se plantea en el nivel el análisis del ejemplo, las secuencias que se reiteran
Un procedimiento, como lo hemos denominado en este 5. Una opción que muchos alumnos han seguido para pueden borrarse y redefinirse como tareas secundarias
juego, es cuando se recurre a varios pasos o acciones continuar dando indicaciones al robot consiste en de- de un mismo procedimiento:
repetitivas. En este juego está permitido definir dos ta- finir la función 1 con el detalle de las acciones que no
reas nuevas o acciones que se repitan al menos una entran en el primer bloque de cuadros.
ocasión en el curso de ejecución del programa, delimi-
tadas por los grupos de casilleros Proc 1 y Proc 2. Cada
grupo admite hasta ocho acciones por tarea, porque es
parte del juego que el jugador piense la forma de utili- Según las características de la clase, podría ser conve-
zar las casillas de la manera más eficaz. niente dejar que los alumnos exploren diversas solucio-
nes posibles (reiniciando el juego, si es necesario). Por
Mediante los comandos se indica al robot que ejecute el momento, bastará con señalar las limitaciones que
las nuevas tareas definidas. Por ejemplo, si el procedi- presenta la primera solución y pasar al nivel siguiente.
miento o función 1 se define como avanzar tres veces,
al colocar el comando en el primer bloque de cuadros, Se sugiere dar tiempo a los alumnos para que inten-
se está indicando al robot que se mueva tres pasos ha- ten resolverlo por su cuenta. Lo más probable es que
cia adelante: la mayoría encare una vía de solución inadecuada, al
intentar repetir lo hecho en el primer ejemplo del ni-
vel anterior, por lo que es conveniente pedirles que
Debido a que las casillas de la función 1 no alcanzan interrumpan el juego y se enfoquen en cómo usar los
para indicar todas las acciones, se incluyen entonces procedimientos para hallar una solución satisfactoria.
en la función 2 las acciones restantes: Comienza señalando lo que ocurre cuando se utilizan De este modo, cada vez que quieras que el robot avance
los procedimientos solo como meras extensiones del y encienda la luz, en las casillas del Main method se
espacio disponible para llenarlos con acciones primi- indicará f1:
tivas. En este caso, se llega a una situación como la
siguiente:
Lo que se ha resuelto para la primera fila de luces, pue- para la solución de problemas, proponles que avancen • Definir un segundo procedimiento, que comience El último nivel es fácil de resolver. Un inconvenien-
de también aplicarse a la segunda. Para ello, solo hay a los siguientes niveles. Las soluciones y los patrones con la acción de saltar desde la baldosa encen- te que podría surgir aquí (si no se presentó ante-
que definir otro procedimiento que incluya el anterior. De correspondientes a esos niveles se muestran a continuación. dida de modo que el robot quede ubicado en la riormente) es que el robot apague una de las luces
acuerdo con esto, P2 puede definirse como seis veces P1. posición inicial, continúe con otro giro y repita que encendió con anterioridad. Para solucionarlo,
En el nivel 8 la secuencia de acciones más frecuente el primer procedimiento (que hace que el robot simplemente se indica que ejecute la acción encen-
consiste en avanzar dos veces y encender la luz: avance nuevamente al punto intermedio) y fina- der luz al final de la primera retícula, de manera
lice con la indicación de las acciones requeridas que el robot vuelva a encenderla.
para que el robot encienda la luz de la baldosa
del extremo derecho.
Recuerda:
Los alumnos tienen que saber distinguir el número de veces que se re-
piten las acciones en una misma instrucción y convertir esta serie de
acciones en un solo loop.
Soluciones del
mundo real (último reto) Descripción Comentarios
1. Aprender acerca del tema Explorar en grupo cuáles son los proble- Se aportarán ideas y se anotarán en el
mas más importantes pizarrón.
• Después de la primera discusión grupal, pide a los alumnos que realicen una investigación general de un
tema; en este caso, basura y contaminación. Deberán de utilizar diversos recursos como el Internet, libros,
Seleccionar los 3 problemas más impor-
entrevistas, entre otros. Decisión grupal
tantes que los niños identificaron
• Preguntar a los niños si han tirado el día de hoy algo como:
• Cáscaras de comida.
• Bolsas de plástico. Con esta actividad, los niños podrán encontrar varios problemas sobre el mismo tema. La inten-
• Objetos usadas. ción es que seleccionen solo uno de ellos y se propongan trabajar para desarrollar una solución.
• Ropa muy pequeña o usada.
1. Motivar a que los niños piensen en una solución que agregue valor a su comunidad, mejo-
rando algo que ya existe, complementando algo previo o bien, inventar algo completamente
3. Impulsa a los niños a que consideren diferentes ideas y tengan la actitud de que la primera Esta actividad de Scratch es una adaptación de Lightbot. Como en Lightbot, el objetivo es que el robot encien-
solución tal vez no sea la mejor de modo que piensen el problema desde distintos puntos de Al ingresar, se observa el siguiente escenario: da los cuadros azules. La diferencia es que, en vez de
vista. En ocasiones las soluciones que consideran “tontas” pueden ser las mejores. ubicar los comandos en un recuadro, se utilizan los
bloques característicos de Scratch. Los comandos
• Por último, permite que aprecien sus soluciones desde el punto de vista de que podrían primitivos (que, como es habitual, se encuentran en la
ser reales. categoría Más bloques) son en este caso los siguientes:
1. ¿Por qué sus soluciones podrían ser exitosas cuando otras han fracasado?
2. ¿Qué costo tendría volverla una realidad?
3. ¿Podría cualquier persona, o solo algunas, valerse de su solución?
• Recuérdarles que sus ideas no tienen que ser completamente nuevas y pon énfasis en que
innovar es la mejora de una idea o un objeto que ya existe.
4. Desarrollar su propuesta
Éste es el momento para desarrollar su propuesta, valiéndose de la imaginación y el trabajo
en equipo. Se espera que los alumnos se den cuenta de que les conviene crear un procedimiento que mueva al robot en diagonal
porque ese movimiento se repite más a menudo.
Luego, es posible crear dos procedimientos más: uno para que el robot encienda los cuatro cuadros azules que
Lo ideal sería que los alumnos puedan dejar huella y aportar soluciones reales en su comunidad. forman una diagonal a la izquierda y otro para que encienda los cuatro cuadros azules restantes, que forman otra
Utilizando un programa o simplemente pseudo código. diagonal a la derecha. Las definiciones de estos procedimientos serían las siguientes:
Actividad 1
Las actividades de Scrach que figuran a continuación presentan diversos escenarios y plan-
tean problemas de complejidad creciente. Se proponen a modo de ejercicio para que los alum-
nos afiancen lo aprendido hasta el momento. Luego del trabajo con cada actividad, sugerimos
hacer una puesta en común a fin de que los alumnos expongan las dificultades que se les ha-
yan podido presentar. Asimismo, también será útil comparar cada una con El gato en la calle,
ya trabajada.
Lightbot en Scratch
https://scratch.mit.edu/projects/42292564/#editor
88 Pensamiento computacional 89
A partir de los procedimientos definidos, la solución quedaría planteada de esta manera: La estrategia –que deberán descubrir los alumnos– será hacer que el extraterrestre tome las
estrellas fila por fila.
Como en otras oportunidades, se sugiere dejar a los alumnos que intenten resolver el problema Otras posibilidades son las siguientes:
solos e intervenir únicamente cuando sea necesario; por ejemplo, si se observa que buscan una
solución sin crear procedimientos. En tal caso, indícales que el desafío es simplificar las tareas,
como se hizo en Lightbolt, de modo que adquieran una destreza que les permitirá resolver pro-
blemas más difíciles. Luego, orienta a cada alumno por separado acerca de qué procedimientos
conviene crear.
Actividad 2
El recolector de estrellas
http://scratch.mit.edu/projects/42294488/#editor
El planteamiento en esta actividad de Scratch es similar al de “El marciano en el desierto”. Aquí Actividad 3
hay un extraterreste que en este caso tiene que recolectar estrellas. El objetivo es que el extra-
terrestre tome todas las estrellas del tablero. María, la come sandías
http://scratch.mit.edu/projects/42294654/#editor
Otras posibilidades, a partir de los mismos procedimientos, son las que a continuación presentamos.
En este juego, el personaje de María deberá morder todas las sandías del tablero.
Como puedes apreciar, no hay instrucciones para que el extraterrestre se mueva hacia abajo o
hacia la izquierda. El bloque volver al borde izquierdo simplemente ordena al extraterrestre que
regrese desde la fila en la que se encuentra a la primera celda de la izquierda.
90 Pensamiento computacional 91
Actividad 4
Se sugiere conversar con los alumnos acerca de cómo resolverían el juego antes de que intenten Alimentar a los peces
hacerlo y orientarlos al respecto. Las soluciones posibles son varias. Una consiste en ordenar al
personaje que muerda las sandías de las tres filas, a partir de la segunda columna, y que luego http://scratch.mit.edu/projects/42292362/#editor
muerda las de la primera columna. También puede morder primero las sandías de la primera
columna y luego las de las tres filas. El orden es indistinto. En cualquier caso, se necesitan al En este caso, el buzo debe buscar la comida y luego acercarse a cada pez para alimentarlo.
menos dos procedimientos, uno para cada tarea. Además de éstos, puede agregarse otro que
permita que el personaje vuelva al principio de la fila (es decir, el borde izquierdo del tablero).
En la actividad anterior esto era un comando primitivo, pero ahora habría que definirlo.
Una vez planteados los términos generales de la solución, deja que los alumnos intenten formu-
larla con todos sus detalles. Si les resulta complicado, guíalos en los pasos a seguir. Al respecto,
indícales que lo más conveniente será definir los procedimientos en el siguiente orden: en primer
lugar, el procedimiento necesario para que María muerda las sandías de una fila (excepto las
que forman la primera columna); luego, el que corresponde a la acción de volver al inicio de la
fila. A continuación, un procedimiento que le ordene morder las sandías de las tres filas (donde
se integren los procedimientos anteriores) y, finalmente, uno para que muerda las sandías de la
columna de la izquierda. A partir de estos procedimientos, una solución posible es la siguiente:
Como en el caso anterior, los alumnos podrán discutir acerca de los procedimientos más adecuados para resolver
el problema; por ejemplo, podría crearse un procedimiento para ir a buscar el alimento y otro para alimentar a
los peces.
En esta actividad de Scratch, el personaje tiene que instalar un videojuego en las tres computadoras de la bibliote-
ca. Para ello debe encender cada computadora, ingresar la contraseña, que en este caso es ABC, cargar el juego
y finalmente apagar la máquina. Por ser un proceso repetitivo, lo más conveniente es automatizarlo.
Para que el héroe pueda superar las pruebas, hay que tener en cuenta lo
siguiente:
Una vez más, será conveniente dejar que los alumnos resuelvan la activi-
dad como se les ocurra, pero recordándoles que, si no identifican y definen
distintos procedimientos, la tarea puede volverse bastante ardua y com-
pleja. Tal vez convenga escribir en el pizarrón los pasos a seguir para que
todos puedan verlos cómodamente y no se pierdan. Una solución posible
es la siguiente:
Actividad 6
Con esta actividad de Scratch se pretende que los alumnos exploten al máximo la técnica de división en tareas
secundarias. El objetivo es que el héroe (ubicado en el casillero del extremo inferior izquierdo) logre escapar en el
unicornio con la princesa. Para ello, debe superar una serie de pruebas en el siguiente orden:
1. Buscar la llave.
2. Con la llave, abrir el cofre y tomar un sombrero mágico que se encuentra adentro.
3. Entregarle el sombrero al mago para que éste le dé una espada.
94 Pensamiento computacional 95
Reparar la nave
http://scratch.mit.edu/projects/42296150/#editor
El último juego de esta sección presenta a un marciano que debe aprovisionarse de carbón y hie-
rro para reparar su nave y así poder ponerla en funcionamiento. El marciano tendrá que realizar Abstracción: Encontrar diferencias específicas para hacer que una solución pueda resolver va-
tres viajes para obtener cada material que necesita. Una vez que lo haga, la nave se desplazará. rios problemas.
Algoritmo: Lista de pasos ordenados y especificos que permiten resolver una tarea. Es una lista
de los pasos que es posible hacer, o no, con una computadora.
Bug (o error): Error en el programa que no deja funcionar algo como se espera que funcione.
Ciudadano digital: Las personas que actúan de forma segura y respetuosa en el internet.
Hay varias soluciones igualmente válidas para el problema planteado.
Una de ellas es la siguiente: Comando: Una instrucción a realizar; la unión de comandos forman un programa o algoritmo.
Condicionales: Declaraciones que hacen que un comando se realice o no bajo ciertas circunstancias.
Controlador de un evento: Una evaluación que se lleva a cabo de acuerdo con una acción que se
realiza dentro o fuera de nuestro programa.
Dato: Información, cantidad, caracteres y símbolos que se asigna, pueden ser entrada de un
programa o que el programa ofrece.
Descomponer: Romper un problema en piezas (problemas) más pequeños para crear solucio-
nes pequeñas y para que sea más fácil encontrar la solución a éste .
Dirección IP: Un número asignado a cualquier dispositivo que esté conectado al internet.
División de subtareas: Habilidad de dividir un problema en partes pequeñas para poder resol-
verlo mejor.
DNS (nombre de servicio de dominio): Servicio que traduce las direcciones URL en direcciones IP.
Espacio de trabajo: Lugar para colocar nuestros bloques o códigos de programación que se eje-
cutarán con el programa designado.
Guías de descargas:
Evento: Orden recibida en el programa que hace que algo suceda. Guía de descarga de la aplicación ScratchJr para su uso en tabletas
Fibra óptica (cable): Conexión que utiliza luz para transmitir información. En esta guía se presentan los pasos para descargar la aplicación ScratchJr en las tabletas Android.
Huella digital: Información de alguien que se queda en el Internet. 1. Ingresar a la aplicación “Play Store” ubicada en las aplicaciones con el siguiente ícono:
Internet: Red internacional que agrupa computadoras y dispositivos conectados en todo el mundo.
Usar (llamar) una función: Pieza de código o instrucción que indica que debe de ejecutarse una
función.
Nombre de usuario: Nombre que se inventa para ingresar a un programa que sirve como identificador. 2. Dentro de la aplicación buscar la aplicación “ScratchJr”:
Paquete: Pequeños conjuntos de información que se realizan a partir de conjuntos más grandes
información.
Parámetro: Pieza de información extra que se transfiere a la función para personalizar una ne-
cesidad específica.
Programa: Algoritmo que ha sido codificado para que pueda funcionar en una computadora. 3. Seleccionar la aplicación que tiene el icono con fondo azul y un gato naranja como el siguiente:
Secuencia de comandos: Son series de acciones que se realizan una a continuación de la otra en
un momento determinado.
Servidores: Computadoras que existen únicamente para proveer servicio a otros dispositivos.
Los instaladores para todas las versiones de Scratch y Adobe AIR se obtienen en la siguiente
dirección: https://scratch.mit.edu/scratch2download/
Scratch es un entorno de aprendizaje del lenguaje de programación que permite a los principian-
tes investigar, conocer y jugar con la programación utilizando una interfaz gráfica muy sencilla.
El editor en línea
Scratch está disponible como una aplicación web. Ésta es la forma más sencilla de empezar a El escenario
trabajar con él. Sólo hace falta tener un navegador con el complemento de flash instalado y ac-
ceder a la siguiente dirección: El área blanca ubicada a la izquierda de la ventana de Scratch es el escenario. En esta área es
donde se observan la mayoría de las salidas de nuestros scripts o programas. En el escenario se
https://scratch.mit.edu/projects/editor/?tip_bar=getStarted. muestran ciertas imágenes llamadas sprites, por defecto tenemos cargado un sprite de la mas-
cota de Scratch. Los scripts que se realizan en Scratch interactúan directamente con los sprites.
Una vez cargado el editor, la apariencia de la página debería ser similar a la de la siguiente
imagen: El escenario:
100 Pensamiento computacional 101
El editor de scripts o programas Ahora arrastraremos el primer bloque que aparece en la lista hacia la zona de colocación, es decir, el bloque que
tiene escrito .
A la derecha del escenario tenemos el editor de scripts. En él se encuentran los bloques que serán los comandos
o instrucciones que integrarán nuestros scripts o programas. También tenemos la zona en la que se colocarán los Si esto se realiza con éxito, entonces tendremos el bloque en su lugar, como se muestra en la siguiente imagen:
bloques para programar los scripts.
A continuación resaltamos el editor de scripts o programas con el área de bloques y la zona de colocación:
Si ahora hacemos doble clic en el bloque, veremos como la mascota se moverá hacia la derecha. Podemos cam-
biar la distancia en que se moverá la mascota alterando el valor numérico de éste; también podemos lograr que
Los bloques la mascota se mueva hacia el otro lado colocando el signo de menos antes del valor numérico.
Los bloques son la estructura fundamental que permite realizar scripts en Scratch. Éstos permiten controlar el Ahora veremos cómo cambiar la orientación hacia la que mira la mascota. Para lograr esto, arrastremos el si-
flujo del programa, ejecutar las instrucciones, entre otras funciones. guiente bloque de la lista, es decir, el que dice “turn 15 degrees”. Después haremos doble clic en este bloque.
Para utilizar un bloque solo hace falta arrastrarlo desde su área hasta la zona de colocación de bloques. Una vez Tal y como puede observarse en la imagen, el gato ha girado.
que el bloque se encuentra en esta zona, podemos hacer doble clic en él para ejecutarlo.
Como un ejemplo básico, aprenderemos a usar el bloque “move” para indicar que la mascota de Scratch se
mueva. Con el editor abierto comprobamos que el sprite de la mascota se encuentre seleccionado. Podemos
asegurarnos de esto si en la esquina superior derecha de la zona de colocación de bloques vemos el sprite de la
mascota con los datos de su posición en X y en Y, tal y como se muestra en la siguiente imagen:
Nuevamente podemos cambiar la magnitud del efecto del bloque si alteramos su valor numérico; también es po-
sible cambiar el signo a negativo para realizar el cambio en la dirección opuesta.
102 Pensamiento computacional 103
Conclusión general
Alumnos y maestros tuvieron un acercamiento a lo que es el pensamiento computacional el
cual les brinda las herramientas esenciales para poder identificar problemas y darles solucio-
nes por medio de la tecnología.
Sin duda, las niñas y los niños aprendieron a programar y han adquirido un pensamiento infor-
mático desde su corta edad.
• Algoritmos
• Variables
• Funciones
• Condicionales
• Iteracciones
Además de la parte técnica, adquirieron conocimientos para desarrollar las siguientes habilida-
des y competencias:
• Creatividad
• Colaboración y aprendizaje para el trabajo en equipo
• Comunicación
• Perseverancia
• Solución de problemas
• Pensamiento crítico
• Emprendimiento
Es indispensable que los niños tengan este acercamiento al pensamiento computacional ya que
las habilidades desarrolladas y los conocimientos adquiridos son herramientas para que sean
líderes en temas de ciencia y tecnología y enfrenten los retos que vendrán en el siglo XXI con la
revolución digital.
Hay que promover estas habilidades en más comunidades, para que más padres de familia
y maestros se den cuenta del potencial que este tipo de educación tiene en las niñas y niños
de México.
Sugerimos a todos que continúen participando en este tipo de proyectos mediante clubs de
programación y robótica, y que sigan aprendiendo en línea distintos lenguajes de programa-
ción. Lo más importante es el apoyo que tú, como maestro y padre de familia, le brindas a las
niñas y a los niños.
106 Pensamiento computacional 107
La presente evaluación tiene como objetivo realizar un diagnóstico de tus conocimientos de pensamiento ¿Del 1 al 10, qué tan interesado estás en aprender a programar una computadora?
computacional y programación. Si nunca has adquirido conocimientos de estos temas no te preocupes, este
diagnóstico servirá para que tu profesor sepa en que hacer un mayor enfoque y durante las siguientes dos Nada interesado Muy interesado
evaluaciones podamos saber los conocimientos adquiridos. Recuerda leer claramente las instrucciones y hacer 1 2 3 4 5 6 7 8 9 10
un análisis profundo de tu respuesta. Cualquier duda que tengas con toda confianza hazla a tu profesor.
Selecciona tu estado:
Aguascalientes Michoacán En el siguiente ejercicio tienes que seleccionar las instrucciones (comandos) para que nuestro robot avance
desde la posición actual hasta el cuadro más obscuro y una vez que esté en ese cuadro, tiene que encender
Baja California Morelos un foco.
Campeche Puebla
¿Qué instrucciones le darías al robot?
Chihuahua Querétaro
No
¿En su gran mayoría, cuando estamos programando una computadora consideras que
En el siguiente ejercicio tenemos que darle los comandos al robot para que llegue al cuadro azul y encienda un
foco. Escoge el algoritmo correcto para que nuestro robot llegue al objetivo.
Ahora sabemos que cuando estamos programando hay distintos procedimientos para llegar al objetivo, ahora es
tu turno ordenar los siguientes 3 bloques de comando para hacer otro procedimiento al reto anterior ¿Cuál sería la
combinación numérica correcta?
1,3,2
1,3,2
1,3,2
1,3,2
110 Pensamiento computacional 111
Determina la imagen que corresponde a las siguientes instrucciones con el tablero inicial dado:
Determina la imagen que corresponde a las siguientes instrucciones con el tablero inicial dado:
A B C D
Supón que tienes 10 focos y todos están apagados. Tu empiezas en el primer foco. El switch verde prende
el foco en el que estas actualmente, y el rojo lo apaga. La flecha de la derecha lo que hace es moverte al
foco de la derecha:Supón que tienes la siguiente configuración:
A
Y ejecutas lo siguiente:
D
Determina la imagen que corresponde a las siguientes instrucciones con el tablero inicial dado:
Evento.
Iteración (loop)
Condicional (decisión)