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.
Realiza un programa SIN UTILIZAR BLOQUES NUEVOS donde un personaje de Scratch haga lo siguiente:
Se desplace 50 pasos hacia la izquierda y mirando a la izquierda.
Se desplace 50 pasos hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Se desplace 50 pasos hacia la izquierda y mirando a la izquierda.
Se desplace 50 pasos hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Se desplace 50 pasos hacia la izquierda y mirando a la izquierda.
Se desplace 50 pasos hacia la derecha y mirando a la derecha.
Nos salude tras realizar los pasos anteriores.
Finalizamos dando un salto de alegrí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.
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 usuario debe introducir el número hasta el que debe contar el gato cuando el gato lo solicite..
El programa debe llamar a una función con el nombre CONTAR, que se encargará de contar desde el 0 hasta el número introducido dejando un segundo entre número y número. Esta cuenta tiene que hacerla el gato en un mensaje.
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
El gato tendrá que pedir los datos necesarios para calcular el área de cada figura. Investiga o busca que datos necesitas para calcular dicha área y pídela de manera adecuada.
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¡¡¡
Ú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.