Pulsando en el enlace TEMA SCRATCH podéis descargaros los apuntes en pdf de todo el tema. A continuación se organiza el tema tal y como lo vamos a desarrollar en clase.
Durante los cursos de primero y segundo de la eso hemos tratado ya como trabajar con Scratch. Durante este curso vamos a entrar más en profundidad en la realización de programas algo más avanzados a lo que hemos visto durante otros cursos. En este bloque de trabajo se evaluarán los criterios de evaluación que le correspondan y se indicará en classroom cada actividad que criterio de evaluación evalúa.
Scratch es un entorno de programación gráfico y gratuito desarrollado por un grupo de investigadores del Instituto Tecnológico de Massachusetts (MIT) bajo la dirección del Dr. Mitchel Resnick.
Fue diseñado como medio de expresión para ayudar a los niños a expresar sus ideas de forma creativa, al mismo tiempo que desarrollan habilidades de pensamiento lógico, creando juegos y animaciones que pueden compartirse.
Podemos trabajar con una versión descargada e instalada en nuestro ordenador o bien con la versión on-line de la web http://scratch.mit.edu, que si nos registramos, nos permitirá guardar en nuestro espacio virtual los proyectos que desarrollemos.
Como el propio menú superior de la web indica, Scratch está pensado para crear, explorar, comentar, ayudar y buscar proyectos compartidos.
La sintaxis de Scratch se basa en un conjunto de bloques gráficos de programación que se ensamblan para crear programas.
Al entrar por primera vez en la web de Scratch tenemos dos opciones: Empezar a crear, que nos permite entrar en Scratch sin registrarnos y Únete.
Nosotros vamos a elegir la opción Únete, para poder guardar nuestros trabajos.
En cursos anteriores estuvimos trabajanco con un lenguaje de programación por bloque como Scratch. Este curso comenzaremos dando un repaso a los principales con los que se ha trabajado en cursos anteriores. Tras este repaso intentaremos avanzar en la programación para dar solución a determinados problemas. Terminaremos la unidad realizando un proyecto de temática libre siempre que el profesor apruebe el proyecto.
En los lenguajes de programación por bloques se suelen clasificar las distintas instrucciones en categorías y suelen utilizar un color distinto para cada una de ellas tal y como podemos ver en la siguiente imagen:
Como ya sabemos, dentro de cada categoría existe una gran cantidad de bloques que combinándolos entre si nos permiten construir muchísimos programas distintos, tantos como nuestra imaginación nos permita.
A continuación vamos a repasar las principales instrucciones de Scratch con la que ya hemos trabajado.
Hay que recordar siempre que:
Todo programa siempre tiene un INICIO y un FINAL.
El ordenador ejecuta o interpreta cada bloque desde arriba hacia abajo.
Existen bloques que pueden modificar el flujo o camino del programa (¿Cuál o cuales eran estos bloques?). Scratch es un lenguaje preparado para controlar los evenot, pero....¿Qué era un evento?.
Estos bloques son los que nos permitirán que nuestros programas comiencen a funcionar. Por ejemplo:
Los programas suelen interactuar con los usuarios normalmente solicitándoles información (Entrada) y mostrándoles información (Salida). El bloque que se encarga de representar las operaciones de Entrada y Salida en Scratch es el siguiente:
Cuando lanzamos una pregunta con Scratch, el programa se parará hasta que el usuario introduzca una respuesta. Una vez el usuario inserta el valor, este guardará el varlo en la variable respuesta.
En este apartado recordaremos la finalidad de las variables. Las variables nos permiten almacenar datos dentro del ordenador mientras el programa está funcionando. El valor de dichos datos puede variar durante la ejecución del programa. Las variables se caracterizan por una etiqueta (nombre que le damos a dicha variable, por ejemplo: puntos) y por un valor (por ejemplo, los puntos que vamos sumando en el juego). Es habitual que las variables puedan ser de varios tipos:
Numéricas: el valor que contiene es un número.
Texto: el valor que contiene es un carácter o cadena de caracteres.
Boolean: el valor que contiene es "verdadero" (1) o "falso" (0).
En Scratch las variables son solo de tipo numérico. Existen también listas, que almacenan varias cadenas de caracteres.
En ocasiones necesitamos que nuestros programas evalúen determinadas condiciones para que en el caso de cumplirse la condición se ejecuten un conjunto de instrucciones distintas a las instrucciones que ejecutaríamos si la condición no se cumple. La condición nos daría respuesta a "....Si esto se cumple, entonces haz esto otro.....".
Por ejemplo: "Si Manolo estudia y realiza las prácticas de Scratch entonces aprobará la asignatura y sus padres estarán muy contentos pero Si Manolo NO estudio o NO realizar las prácticas de Scratch entonces NO aprobará la asignatura y sus padres estarán tristes."
En Scratch ejemplos de bloques de decisión serían los siguientes:
Estos bloques nos permiten establecer operaciones matemáticas, elegir un número al azar, realizar uniones y divisiones; además se puede unir texto y calcular la longitud de los mismos. Estos son algunos de los bloques de operación más usados, aunque hay muchos más:
Los bloques HEXÁGONALES se corresponden con OPERACIONES y los bloques REDONDOS con DATOS.
Este programa consiste en hacer que el personaje que tu quieras le pregunte al usuario la edad que tiene y cúal es su nombre. Una vez que el usuario nos da su edad y nombre debemos responderle con el siguiente mensaje:
'Hola NOMBRE_USUARIO bienvenido a nuestro primer programa de 3º ESO. Hemos podido averiguar que tu año de nacimiento es AÑO_DE_NACIMIENTO del usuario'
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Estos bloques nos permiten establecer operaciones matemáticas, elegir un número al azar, realizar uniones y divisiones; además se puede unir texto y calcular la longitud de los mismos. Estos son algunos de los bloques de operación más usados, aunque hay muchos más:
Las estructuras o bloques repetitivos también conocidos como estructuras o bloques de repetición nos permiten repetir un conjunto de operaciones o instrucciones un determinado número de veces. Al igual que las estructuras de decisión, estas estructuras son muy útiles en cualquier lenguaje de programación. En Scratch 3.0 tenemos las siguientes estructuras repetitivas:
Este programa consiste en hacer que el personaje que tu quieras se desplace sin parar siguiendo una serie de direcciones (las que tu quieras) y se pare cuando pulsemos la tecla 'a'.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Este programa consiste en hacer que el personaje que tu quieras se desplace hacia la derecha o hacia la izquierda cuando se pulse la tecla de la flecha derecha o tecla de la flecha izquierda y para cuando pulse la tecla 'a.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Una de las funciones más importantes en todos los lenguajes de programación es la modularidad. La modularidad consiste en construir “instrucciones” nuevas que contengan otras instrucciones en su interior. Estas nuevas instrucciones en algunos lenguajes de programación se llaman funciones o procedimientos, en Scratch se les llama bloques. Estos bloques, funciones o procedimientos pueden utilizar unos parámetros de entrada, es decir, unos datos de entrada que se utilizan dentro de las instrucciones del bloque.
En muchas ocasiones los programas que desarrollamos son tremendamente largos. Hacer un seguimiento del programa es complicado incluso para el programador que lo desarrolló. Es por ello, que lo que solemos hacer es aplicar una de las bases principales del pensamiento computacional, se trata de abordar la solución por partes. Es decir, si tenemos un programa grande, podemos descomponer la solución en partes más pequeñas e ir construyendo la solución final combinando las soluciones de cada una de estas partes más pequeñas. Estas partes se suelen llamar subalgoritmos, funciones y/o procedimientos.
También usamos las funciones para evitar reescribir el mismo código una y otra vez. Lo veremos haciendo la siguiente actividad.
En el enlace siguiente tenéis un vídeo de que son y como funcionan las funciones en SCRATCH:
Realiza un programa SIN UTILIZAR BLOQUES NUEVOS donde un personaje de Scratch haga lo siguiente:
Se desplace una distancia de 50 en coordenadas hacia la izquierda y mirando a la izquierda.
Se desplace una distancia de 50 en coordenadas hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Se desplace una distancia de 50 en coordenadas hacia la izquierda y mirando a la izquierda.
Se desplace una distancia de 50 en coordenadas hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Se desplace una distancia de 50 en coordenadas hacia la izquierda y mirando a la izquierda.
Se desplace una distancia de 50 en coordenadas hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Finalizamos dando un salto de alegría¡¡¡. Para ello podéis usar el bloque deslizar para subir hacía arriba y volver a bajar pero de manera rápidamente.
NOTA: En los desplazamientos usar el bloque deslizarse en un tiempo determinado para que se vea como se está realizando el desplazamiento. Ponedle un tiempo de 1 segundo para el desplazamiento.
NOTA: Cuando empiece el programa el personaje tiene que estar en las coordenadas (0,0) así que tendréis que tener una orden en la que inicialmente al empezar el programa se desplace a dicha posición.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Realiza el mismo programa que en la Actividad anterior pero ahora es obligatorio que utilices BLOQUES NUEVOS creados por ti mismo en Scratch.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Realiza un programa donde el personaje de Scratch (El gato) aprenda a contar:
El gato debé de pedir al usuario un número entre 1 y 30 hasta el que debe contar. Si el usuario introduce un número que no este entre 1 y 30 el gato deberá de decir que es erróneo y finalizar el programa. Y si esta entre 1 y 30 ejecutar el programa.
El programa debe llamar a una función con el nombre CONTAR, que se encargará de contar desde el 1 hasta el número introducido dejando 0,5 segundos entre número y número. Esta cuenta tiene que hacerla el gato en un mensaje.
Además, deberá hacer una animación divertida cada 5 números y decir un mensaje especial cuando llegue al número final. Por ejemplo:
Cambiar de disfraz.
Decir: "¡Número especial!" o algo divertido.
Cambiar el fondo.
Al llegar al número final:
Decir: "¡He terminado de contar hasta [número]!.
Tocar un sonido o mostrar una animación.
Extras opcionales (para hacerlo más creativo):
Usar sonidos diferentes para distintos tipos de números (pares/impares, múltiplos de 3, etc.).
Una vez termine de contar, el gato deberá de preguntar al usuario si quiere realizar la cuenta de otro número. Si la respuesta es SI, deberá de volver a solicitar el número y realizar la cuenta. Si la respuesta es NO, deberá de mostrar un mensaje despidiéndose y finalizando. el programa.
En este programa es obligatorio usar un bloque nuevo o función en el que se le pasará al gato el número introducido para que realice la cuenta.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Realiza un programa en Scratch capaz de calcular el Área Geométrica de las siguientes figuras:
Rectángulo.
Círculo.
Trapecio.
Rombo
La pantalla inicial tendrá que indicar lo que hace el programa y un botón iniciar para comenzar. Al pulsar el botón iniciar se abrirá otra pantalla donde se mostrarán 4 botones, uno para cada una de las figuras de las que queremos calcular el área.
Al pulsar sobre una figura aparecerá una pantalla específica de esa figura explicando como se calcula el área y cuales son los datos necesarios para ello. Así como una imagen de dicha figura con la fórmula del área. Tendrán que aparecer 2 BOTONES. Un botón para comenzar a calcular el área y otro para volver a la pantalla de inicio. Al pulsar el botón "calcular área" el gato o la figura elegida tendrá que pedir los datos necesarios para calcular el área de esa figura y una vez recibido mostrar el resultado final durante 2 segundos. Investiga o busca que datos necesitas para calcular dicha área y pídelos de manera adecuada y dejando tiempo para leer los mensajes.
Una vez calcular el área el gato deberá de dar la solución. Después de dar la solución deberán de aparecer dos botones que nos den a elegir entre calcular el área de otra figura (que nos llevará a la pantalla donde se pueda elegir que figura) o entre finalizar que nos llevará a la pantalla inicial.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Seguro que estas muy acostumbrado a realizar listas en el día a día, pero ¿Qué son las listas de Scratch?. Las listas son un tipo de variables que nos permiten almacenar una lista de elementos. Las encontramos en la categoría de Variables tal y como podemos ver en la siguiente imagen:
Las listas nos permiten almacenar datos, tanto en texto como en número, que en Scratch se denominan “elementos”, y a los que podrán acceder uno o todos los objetos de nuestro proyecto.
Como vemos, una vez hemos creada una lista, tendremos las siguientes opciones:
añadir tantos elementos como queramos.
eliminar todos o bien un elemento concreto (para lo que debemos conocer su posición dentro de la lista).
insertar nuevos elementos en una posición concreta de la lista.
reemplazar, modificando el contenido de un elemento ya existente en la lista.
mostrar o esconder los elementos en la lista de la pantalla.
Además, como vemos en la imagen anterior, se generan una serie de bloques que nos permiten obtener parámetros de las listas, estos son:
elementos, es decir, cada dato que hayamos introducido en nuestra lista y que cuenta con una posición determinada.
longitud, se refiere al número de elementos totales que hemos introducido en la lista.
…está en.., permitiéndonos comprobar si la lista contiene un elemento determinado.
Y como no hay mejor manera de aprender que haciendo, vamos a realizar una pequeña actividad para que aprendamos a utilizar las listas perfectamente¡¡¡
En el enlace siguiente tenéis un vídeo de que son y como funcionan las listas en SCRATCH:
Últimamente las entradas para ir a ver un concierto de Bad Bunny se agotan con muchísima facilidad. Es más, en el momento en que se abre la venta de entradas todos los usuarios se conectan al mismo tiempo para adquirir la mejor entrada posible. En el último concierto de Bad Bunny muchos usuarios se quejaron debido a que le habían asignado los mismos asientos a personas distintas. Se lío una buena con las reclamaciones que tuvo el concierto.
Cuando el equipo técnico reviso lo ocurrido detectaron que el programa que asignaba las entradas no estaba funcionando correctamente ya que no estaban haciendo uso de ninguna lista de datos en su interior. Ahora vamos a ver como nosotros hubiésemos resuelto este gran problema.
Haz un programa en Scratch que nos permita comprar entradas para ir a ver un Concierto de Bad Bunny. El programa debe cumplir con los siguientes requisitos:
Debe tener una imagen de fondo chula de algún concierto de Bad Bunny.
Debe tener un botón que el usuario pulse para comprar su entrada. Al pulsar el botón debemos pedirle al usuario su nombre y apellidos y guardar sus datos en una lista.
Debe tener un botón para obtener el listado de todas las entradas vendidas y por orden de llegada. Es decir, cuando el usuario pulse este botón el programa debe ir mostrando los nombres de los usuarios que han obtenido su entrada y por orden de llegada, es decir, primero deben aparecer los usuarios que primero compraron su entrada.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.
Inspirado en el famoso personaje Sheldon Cooper de la serie The Big Bang Theory, te proponemos crear el juego "Piedra, Papel, Tijera, Lagarto, Spock" en Scratch. Esta versión ampliada del clásico juego de "Piedra, Papel, Tijera" añade dos opciones más: lagarto y Spock. La combinación de cinco opciones permite un sistema de reglas más complejo y divertido.
Desarrolla un juego en Scratch donde el jugador pueda competir contra la computadora eligiendo entre las cinco opciones. Aplicando lógica y programación condicional, crearás un sistema que determine quién gana cada ronda y mantenga un marcador hasta llegar a un ganado. El programa debe cumplir con los siguientes requisitos:
Pantalla de Inicio y Botón de "Jugar"
Crea una pantalla inicial con el título del juego ("Piedra, Papel, Tijera, Lagarto, Spock") y un botón que diga "Jugar".
Al hacer clic en "Jugar", debe comenzar la primera ronda del juego.
Interfaz de Selección
Diseña cinco botones o iconos en pantalla representando cada una de las opciones: piedra, papel, tijera, lagarto y Spock.
Programa cada botón para que, al hacer clic, guarde la elección del jugador.
Reglas del Juego (SON LAS MÁS IMPORTANTES DEL PROGRAMA QUE VAS A REALIZAR)
Usa las siguientes reglas para programar el juego:
La piedra aplasta la tijera y aplasta al lagarto.
El papel cubre la piedra y refuta a Spock.
La tijera corta el papel y decapita al lagarto.
El lagarto envenena a Spock y devora el papel.
Spock rompe la tijera y vaporiza la piedra.
Si el jugador y la máquina eligen la misma opción, es un empate.
Opción Aleatoria de la máquina
Crea una función para que la computadora elija al azar una de las cinco opciones cada ronda.
Para esto, usa el bloque de Scratch de "elegir número al azar entre 1 y 5" y asocia cada número con una opción (1=piedra, 2=papel, etc.).
Sistema de Puntuación
Crea una variable llamada “Puntos del Jugador” y otra llamada “Puntos de la máquina”.
Suma un punto al jugador si gana la ronda y suma un punto a la computadora si gana ella.
Si es un empate, no se suman puntos.
Resultados de cada Ronda
Después de cada elección, muestra un mensaje con el resultado (por ejemplo, "La piedra aplasta la tijera, ganaste la ronda").
Actualiza los puntos en pantalla después de cada ronda.
Fin del Juego
Establece una meta de puntos (por ejemplo, 5 puntos) para terminar el juego.
Cuando alguno de los jugadores (jugador o computadora) llegue a esa cantidad, muestra una pantalla de "Fin del Juego" que indique quién ha ganado.
Botón de Reinicio
Añade un botón de "Reiniciar" en la pantalla final que permita volver a jugar desde cero.
Cuando finalices tu programa tienes que añadir esta actividad a tu CUADERNO DIGITAL del tema. Recuerda que para cada actividad debe aparecer en tu cuaderno digital la siguiente información.
El título de la actividad.
Breve descripción de lo que hace tu programa.
Una imagen de tu programa.
Un enlace al programa de Scratch (recuerda haber compartido antes el programa para que se pueda ver).
No olvides actualizar el índice de tu cuaderno digital para que aparezca la nueva actividad que has incluido.
IMPORTANTE: También tienes que subir a la tarea de classroom correspondiente el enlace al programa.