Lección 9: Loops Mientras en la Granjera

Bucles mientras | Bucles | Granjera

Descripción

Para el momento en que los/as estudiantes lleguen a esta lección, ya deberían haber practicado lo suficiente usando loops repetir, así que ahora es tiempo de mezclar las cosas. Los loops mientras son loops que continúan repitiendo comandos mientras se cumpla una condición. Los loops mientras se usan cuando el/la programador/a no sabe el número exacto de veces que es necesario repetir los comandos, pero sí sabe qué condición necesita ser cierta para que el loop continúe repitiendo. Por ejemplo, los/as estudiantes trabajarán llenando hoyos y sacando tierra en Granjera. No sabrán el tamaño de los hoyos ni la altura de las montañas de tierra, pero sabrán que necesitan seguir llenando los hoyos y sacando tierra mientras el suelo no esté plano.

Propósito

A medida que sus estudiantes sigan profundizando sus conocimientos acerca de los loops, encontrarán problemas en los que un comando debe repetirse, pero es desconocido cuántas veces necesita repetirse. Aquí es donde vienen loops mientras. En la lección de hoy, los estudiantes desarrollarán la comprensión de los loops basados en las condiciones y también ampliarán su conocimiento de loops en general.

Agenda

Actividad previa (10 min)

Actividad Principal (30 min)

Actividad de Cierre (15 mín)

Aprendizaje Extendido

Ver en Code Studio

Objetivos

Los estudiantes podrán:

  • Distinguir entre bucles que se repiten un número fijo de veces y bucles que se repiten siempre que una condición sea verdadera.
  • Usar un bucle mientras para crear programas que puedan resolver problemas con valores desconocidos.

Preparación

Enlaces

¡Importante! Haz una copia de los documentos que piensas compartir con los estudiantes.

Para los docentes

Para los estudiantes

Vocabulario

  • Condición - una sentencia que un programa verifica si es verdadera o falsa. Si es verdadera, se realiza una acción. De lo contrario, se ignora.
  • Bucle - la acción de hacer algo una y otra vez.
  • Repetir - hacer algo de nuevo.
  • Bucles mientras - un bucle que se sigue repitiendo mientras una condición es verdadera.

Guía docente

Actividad previa (10 min)

Use “mientras” en una oración en frente de la clase. Pregúnteles que significa la palabra “mientras”. Si usted dijera “mientras exista un hoyo, llénalo con tierra” ¿Qué harían? ¿Por cuánto tiempo lo harían?
Cuando usas una palabra como “mientras”, estas confiando en una condición que le diga al computador por cuánto tiempo debería ejecutarse el loop. Una condición es una afirmación que se prueba y se descubre si es verdadera o falsa. En el caso anterior, la condición es si hay un hoyo. Sólo es posible que exista un hoyo o que no exista un hoyo, así la afirmación puede ser sólo verdadera o falsa. Cuéntele a los/as estudiantes que aprenderán acerca de un nuevo tipo de loops. Previamente, los/as estudiantes solo usaron loops para repetir un comando un cierto número de veces. Aquí, no siempre sabrán cuántas veces repetir el comando, sin embargo, sabrán cuando detenerse o cuando continuar. Los loops mientras le permiten al/a programador/a repetir un comando siempre que una condición sea verdadera.
Si hay tiempo, haga que los/as estudiantes discutan otras veces en las que el uso de un “loop mientras” sería útil. Por ejemplo:

  • Correr haca una pelota mientras esté frente a ti.
  • Llenar un vaso mientras exista espacio para más líquido.
  • Avanzar mientras exista un camino adelante.

Actividad Principal (30 min)

Los “loops mientras” no siempre son un concepto difícil de entender para los/as estudiantes, pero si cree que su clase podría tener problemas con estos desafíos, recomendamos el video del/la estudiante – Programación en Parejas. Esto le permitirá a los/as estudiantes compartir las ideas de todos antes de implementar el código. La programación en parejas sirve para incrementar la confianza y la comprensión de los temas como los “loops mientras”.

Actividad de Cierre (15 mín)

Escribir en el Diario

Hacer que los/as estudiantes escriban acerca de lo que aprendieron, por qué es útil y cómo se sienten, puede ayudar a solidificar cualquier conocimiento que hayan obtenido hoy y a construir una hoja de revisión para que la revisen en el futuro.

Sugerencias para el Diario:

  • ¿De qué trató la lección de hoy?
  • ¿Cómo te sentiste durante la lección?
  • ¿Cuál es la diferencia entre un loopmientras y un looprepetir normal?
  • Da un ejemplo de un desafío en el que usarías un loopmientras, pero no un loop repetir. ¿Puedes dar un ejemplo de un desafío en el que usarías un loop de repetir, pero no un loopmientras?

Aprendizaje Extendido

Simón manda “Mientras”

Salga al patio y ponga a los/as estudiantes en fila frente de usted. Asegúrese que cada estudiante pueda verlo/a. Declare un par de “loops mientras”, como: • Mientras mi mano derecha esté arriba, pueden caminar hacia mí. • Mientras cubro mis ojos pueden saltar hacia mí. • Mientras mi cabeza este girada hacia la derecha, tienen que caminar hacia atrás.

El/la primer/a estudiante que llegue a usted, gana. Si hay tiempo, deje que otros/as estudiantes hagan de “Simón” frente a la clase.

Ver en Code Studio

Student Instructions

"Hi, I'm a farmer. I need your help to flatten the field on my farm so it's ready for planting!"

Move to the pile of dirt and use the remove block to remove it.

Ver en Code Studio

Student Instructions

Ver en Code Studio

Student Instructions

"Move to the pile of dirt and tell me how many shovelfuls to remove."

Use as few blocks as possible to solve this puzzle.

Ver en Code Studio

Student Instructions

Look closely at the code below. What will happen after you click "Run"?

Nothing will happen.

The farmer will never stop removing dirt.

The farmer will remove dirt as long as there is a pile, then stop when the pile is gone.

I don't know.

Ver en Code Studio

Student Instructions

"I don't know how much dirt is in this pile!"

Help the farmer remove this entire pile using a while loop.

Ver en Code Studio

Student Instructions

Ver en Code Studio

Student Instructions

Look at all of those holes! Each one needs a different amount of dirt.

You can use the while loop to easily fill them all!

Ver en Code Studio

Student Instructions

Ver en Code Studio

Student Instructions

Challenge: Fill all of these holes using as few blocks as possible.

Ver en Code Studio

Student Instructions

Ver en Code Studio

Student Instructions

Ver en Code Studio

Student Instructions

Take a good look at the code below. What will be left at the end of this puzzle?

Nothing. This code will leave only level ground.

This code will leave the pile completely untouched.

This code will leave the holes completely untouched.

I don't know.

Normas de aprendizaje

Ver las normas del curso

Estándares para ciencias de la computación CSTA K-12 (2017)

AP - Algoritmos y programación
  • 1B-AP-11 - Descompone (desglosa) de los problemas en subproblemas más pequeños y manejables para facilitar el proceso de desarrollo del programa.

Oportunidades multidisciplinarias

Esta lista presenta oportunidades dentro de la lección para acompañar las normas de otras áreas de contenido.

Normas básicas comunes para artes del lenguaje

L - Idioma
  • 3.L.6 - Obtener y utilizar palabras y frases de conversación, académicas generales y de un dominio específico, incluidas aquellas que contienen relaciones espaciales y temporales, de forma precisa y apropiadas para cada grado (por ejemplo, después de cenar esa noche, fuimos a buscarlos).
SL - Hablar y escuchar
  • 3.SL.1 - Participar con efectividad en una variedad de debates en conjunto (individuales, en grupos y dirigidas por el docente) con distintos socios sobre temas y textos de tercer grado, retomando ideas de otros y expresando las suyas de forma clara.
  • 3.SL.3 - Hacer y responder preguntas sobre información de un orador, ofreciendo elaboración y detalle apropiados.
  • 3.SL.6 - Decir oraciones completas cuando sea apropiado para la tarea y la situación con el fin de proporcionar detalles o aclaraciones.

Normas básicas comunes para matemáticas

MP - Prácticas matemáticas
  • MP.1 - Entender problemas y no parar hasta resolverlos
  • MP.2 - Razonar de manera abstracta y cuantitativa
  • MP.4 - Modelar a través de las matemáticas
  • MP.5 - Utilizar las herramientas adecuadas de manera estratégica
  • MP.6 - Estar atento a la precisión
  • MP.7 - Buscar y usar estructuras
  • MP.8 - Buscar y expresar regularidades en patrones de razonamiento
OA - Operaciones y pensamiento algebraico
  • 3.OA.3 - Usar la multiplicación y división en 100 para resolver problemas con palabras que involucran grupos iguales, matrices y cantidades de medición, por ejemplo, mediante dibujos y ecuaciones con un símbolo para el número desconocido para representar el problema.1

Normas de ciencias de la próxima generación

ETS - Ingeniería en las ciencias
ETS1 - Diseño técnico
  • 3-5-ETS1-2 - Generar y comparar diversas soluciones posibles para un problema basado en qué tan probable es que cada una cumpla con los criterios y las restricciones del problema.