Pensamiento lógico en Scratch 3: bloques como instrucciones y reglas

Capítulo 1

Tiempo estimado de lectura: 7 minutos

+ Ejercicio

Bloques como “reglas” que la computadora puede ejecutar

En Scratch, un programa (guion) es una lista de bloques conectados. Cada bloque representa una pieza de lógica que la computadora puede ejecutar sin ambigüedad. Para pensar de forma lógica, conviene clasificar lo que ves en tres niveles: instrucciones (hacer), condiciones (decidir) y estructuras (organizar el orden y la repetición).

TipoQué significaCómo se reconoce en ScratchEjemplo de bloque
Instrucción (acción)Orden directa: “haz esto”Bloques que cambian algo (movimiento, apariencia, sonido, variables)mover (10) pasos, decir [Hola] por (2) segundos
Condición (decisión)Pregunta con respuesta Sí/NoBloques con forma hexagonal (booleanos) o comparaciones<tocando [borde]?>, <(x) > (100)>
Estructura (organización)Define el flujo: cuándo, cuántas veces, bajo qué reglaBloques de Control que “envuelven” otros bloquessi <...> entonces, por siempre, repetir (10)

Marco conceptual: acción, decisión y repetición

Acción: un bloque que cambia el estado del proyecto. Por ejemplo, mover un sprite, cambiar un disfraz, sumar a una variable o reproducir un sonido. Si lo ejecutas dos veces, normalmente verás dos cambios.

Decisión: una condición no “hace” algo por sí sola; evalúa si una regla se cumple. En Scratch, las condiciones suelen aparecer dentro de estructuras como si o repetir hasta. La condición es la pregunta; la estructura decide qué hacer con la respuesta.

Repetición: no es una acción aislada, sino una forma de ejecutar acciones muchas veces. La repetición vive en estructuras como por siempre o repetir (n). La lógica aquí es: “mientras se cumpla esta regla, vuelve a ejecutar”.

Diferencia práctica: instrucciones, condiciones y estructuras

Una forma útil de no confundirse es pensar en “qué puede ir dentro de qué”:

Continúa en nuestra aplicación.
  • Escuche el audio con la pantalla apagada.
  • Obtenga un certificado al finalizar.
  • ¡Más de 5000 cursos para que explores!
O continúa leyendo más abajo...
Download App

Descargar la aplicación

  • Una instrucción suele poder colocarse sola en un guion (por ejemplo, debajo de al presionar bandera verde).
  • Una condición casi siempre necesita una estructura que la use (por ejemplo, dentro de si).
  • Una estructura es un contenedor: define el orden y contiene instrucciones (y a veces otras estructuras).

Ejemplo mínimo para ver los roles:

al presionar bandera verde  (estructura de inicio/evento)  si <tocando [mouse-pointer]?> entonces  (estructura de decisión)    decir [¡Hola!] por (1) segundos  (instrucción/acción)

Leer un guion como una frase: sujeto implícito, verbo y conectores

Un guion de Scratch se puede “leer” como una oración. Esto mejora la legibilidad y te ayuda a detectar errores lógicos.

  • Sujeto implícito: el sprite o el escenario donde está el guion. No se escribe, pero siempre existe: “El gato…” o “El escenario…”.
  • Verbo: el bloque de acción principal: mover, decir, cambiar, reproducir, sumar, etc.
  • Conectores: bloques de Control y condiciones que unen ideas: “si… entonces…”, “repetir…”, “por siempre…”, “esperar…”.

Ejemplo de lectura:

[Sprite: Gato] al presionar bandera verde  por siempre    si <tecla [derecha] presionada?> entonces      cambiar x por (5)

Lectura como frase: “El Gato, al iniciar, por siempre, si se presiona la tecla derecha, cambia su x en 5.”

Guía práctica paso a paso: convertir una idea en guion legible

Objetivo: “Cuando toque el borde, rebotar y avisar una vez”.

  1. Define el sujeto: elige el sprite que se moverá (por ejemplo, una pelota). Todo el guion pertenece a ese sujeto.

  2. Elige el evento de inicio: por ejemplo al presionar bandera verde.

  3. Escribe el verbo principal (acción repetida): si la pelota se mueve todo el tiempo, esa acción va dentro de una repetición: por siempre + mover ( ) pasos.

  4. Agrega el conector de decisión: usa si <tocando [borde]?> entonces para detectar el borde.

  5. Dentro del “si”, coloca acciones claras: rebotar si toca un borde y luego el aviso.

  6. Evita avisos infinitos: si el sprite se queda tocando el borde, el “si” se cumple muchas veces. Para avisar una sola vez, añade una regla extra (por ejemplo, una variable de control).

Versión legible con variable yaAvisé (0/1):

al presionar bandera verde  fijar [yaAvisé v] a (0)  por siempre    mover (6) pasos    si <tocando [borde]?> entonces      rebotar si toca un borde      si <(yaAvisé) = (0)> entonces        decir [¡Rebote!] por (1) segundos        fijar [yaAvisé v] a (1)

Lectura como frase: “La Pelota inicia, pone yaAvisé en 0, por siempre se mueve; si toca el borde, rebota; y si todavía no avisó, dice ‘Rebote’ y marca que ya avisó.”

Mismo objetivo, distinta claridad: buenas prácticas de legibilidad

La computadora ejecuta ambas soluciones si están bien construidas, pero una persona entiende mejor la que expresa la intención. La legibilidad es parte del pensamiento lógico: hace visibles las reglas.

Ejemplo 1: “Moverse con flechas” (misma función, distinta claridad)

Menos claro (repite lógica y mezcla ideas):

al presionar bandera verde  por siempre    si <tecla [derecha] presionada?> entonces cambiar x por (5)    si <tecla [izquierda] presionada?> entonces cambiar x por (-5)    si <tecla [arriba] presionada?> entonces cambiar y por (5)    si <tecla [abajo] presionada?> entonces cambiar y por (-5)

Más claro (misma idea, agrupada por intención):

al presionar bandera verde  por siempre    si <tecla [derecha] presionada?> entonces      cambiar x por (5)    si <tecla [izquierda] presionada?> entonces      cambiar x por (-5)    si <tecla [arriba] presionada?> entonces      cambiar y por (5)    si <tecla [abajo] presionada?> entonces      cambiar y por (-5)

La diferencia parece pequeña, pero la indentación (bloques “dentro” de otros) hace visible la estructura: por siempre contiene cuatro decisiones, y cada decisión contiene una acción.

Ejemplo 2: “Contar hasta 10” (estructura primero, acciones después)

Menos claro (no se ve la regla de repetición):

al presionar bandera verde  fijar [i v] a (1)  decir (i) por (0.2) segundos  cambiar [i v] por (1)  decir (i) por (0.2) segundos  cambiar [i v] por (1)  decir (i) por (0.2) segundos  cambiar [i v] por (1)

Más claro (la repetición expresa la regla):

al presionar bandera verde  fijar [i v] a (1)  repetir (10)    decir (i) por (0.2) segundos    cambiar [i v] por (1)

Aquí se lee como frase: “Inicia i en 1; repite 10 veces: di i y luego suma 1”. La estructura repetir (10) hace explícita la regla.

Ejemplo 3: “Si pasa algo, entonces…” (condición separada de la acción)

Menos claro (condición difícil de leer):

al presionar bandera verde  por siempre    si <<(x posición) > (100)> y <tocando [mouse-pointer]?>> entonces      cambiar tamaño por (10)

Más claro (misma lógica, intención más visible con pasos intermedios):

al presionar bandera verde  por siempre    fijar [enZona v] a <(x posición) > (100)>    fijar [tocandoMouse v] a <tocando [mouse-pointer]?>    si <<enZona> y <tocandoMouse>> entonces      cambiar tamaño por (10)

Separar condiciones en variables (o al menos en bloques más simples) ayuda a “leer” la decisión. La computadora no lo necesita, pero tú sí cuando depuras o amplías el proyecto.

Checklist rápido de legibilidad lógica (para revisar tus guiones)

  • ¿Se ve el sujeto? (¿está el guion en el sprite correcto?)
  • ¿Se ve el verbo? (¿la acción principal está clara y no enterrada entre detalles?)
  • ¿Se ven los conectores? (¿las estructuras de control muestran el orden: si, repetir, por siempre?)
  • ¿Cada “si” responde una pregunta simple? (si no, divide la condición)
  • ¿La repetición tiene sentido? (¿lo que está dentro de por siempre realmente debe repetirse?)
  • ¿Evitas duplicar bloques? (si copias y pegas mucho, probablemente falta una estructura)

Ahora responde el ejercicio sobre el contenido:

En un guion de Scratch, ¿cuál afirmación describe mejor la función de una condición frente a una estructura de control?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

La condición solo evalúa (verdadero/falso) y no produce cambios por sí misma. La estructura de control usa esa respuesta para organizar el flujo: ejecutar acciones, repetir o decidir qué bloques correr.

Siguiente capítulo

Eventos en Scratch 3: disparadores, sincronización y comienzo de comportamientos

Arrow Right Icon
Portada de libro electrónico gratuitaScratch 3 para entender la lógica: bloques esenciales y cómo se conectan
9%

Scratch 3 para entender la lógica: bloques esenciales y cómo se conectan

Nuevo curso

11 páginas

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.