A tu manera: Computación y Robótica 2 ESO (muestra)

Page 1

omputación 2 obóticaRy

Introducción a la programación

Desarrollo móvil

Inteligencia artificial

Sistemas de computación

Internet de las cosas

Desarrollo web

Datos masivos

Ciberseguridad

Retos y tareas para idear, planificar y crear sistemas de computación y robóticos que den solución a problemas en conexión con el mundo real. y, además,

muestra

PROGRAMACIÓN, DESARROLLO MÓVIL

E INTELIGENCIA ARTIFICIAL

Cada vez más inteligentes

Cuando se inventaron las máquinas, estas siempre necesitaban que una persona controlara su funcionamiento. Con la llegada de la programación y la automatización, conseguimos decirles a dichas máquinas qué hacer y, de esta forma, que lleven a cabo muchas tareas en nuestro lugar.

Además, el poder utilizar dispositivos tecnológicos cada vez más pequeños, que podemos llevar a todos lados, ha supuesto un gran avance facilitando la vida de las personas, llevándonos a programar aplicaciones móviles con las que realizar multitud de funciones.

El afán de ser más eficaces controlando nuestras máquinas nos ha llevado a desarrollar una nueva disciplina de la programación: la inteligencia artificial.

Sigue leyendo y descubre los muchos usos que tiene la programación y la inteligencia artificial actualmente.

DESCUBRE…

1 PROGRAMACIÓN

1.1. Introducción a la programación

1.2. Introducción a MakeCode Arcade

1.3. Diagramas de flujo

1.4. Interacción con el usuario

2

DESARROLLO MÓVIL

2.1. Definición y software para crear aplicaciones móviles

2.2. Introducción a App Inventor

2.3. Introducción a Bitbloq Apps

3

INTELIGENCIA ARTIFICIAL

3.1. Introducción e historia de la inteligencia artificial

3.2. Tipos de agentes inteligentes

3.3. Aprendizaje automático

3.4. Ética y responsabilidad social

APLICA...

¿QUÉ HAS APRENDIDO?

PROYECTO ODS

Y además, en anayaeducacion.es…

• HERRAMIENTAS PARA LA CREACIÓN DE DIAGRAMAS DE FLUJO

• VIDEOTUTORIAL PRIMEROS PASOS CON MAKECODE ARCADE

• VIDEOJUEGO MAKECODE ARCADE CONSIGUE EL COFRE

• VIDEOTUTORIAL PRIMEROS PASOS CON APP INVENTOR

• ENLACES A PÁGINAS WEB CON BANCOS DE IMÁGENES, SONIDOS Y VÍDEOS GRATUITOS

• VIDEOTUTORIAL PRIMEROS PASOS CON BITBLOQ APPS

• ENLACE A DOCUMENTO DIRECTRICES ÉTICAS PARA UNA IA FIABLE

• ENLACE A MORAL MACHINE Recursos para realizar el proyecto ODS:

• ENLACES A PÁGINAS WEB DE REFERENCIA

• ENLACES A HERRAMIENTAS PARA ORGANIZAR LLUVIAS DE IDEAS

• ENLACES A HERRAMIENTAS PARA CREAR CÓDIGOS QR

• EJEMPLOS DE BITBLOQ APPS Y MAKECODE ARCADE

• ENLACES A HERRAMIENTAS PARA CREAR PRESENTACIONES

9

SITUACIÓN DE APRENDIZAJE

RECICLAR TIENE PREMIO

INTRODUCCIÓN

A día de hoy, la mitad de las personas de la Tierra viven en ciudades y la tendencia es creciente, cada día más personas trasladan su residencia o, al menos, su centro de trabajo a una ciudad.

Con el incremento del número de personas en estos entornos urbanos, a veces acompañado del aumento de tamaño de las ciudades, es imprescindible invertir en sistemas y servicios que cubran sus necesidades, entre ellos el correcto tratamiento de residuos y desechos municipales.

Una deficiente gestión de residuos supone un importante impacto para el medio ambiente y la salud de las personas. Por este motivo, esta problemática se incluye en la definición y desarrollo de los Objetivos de Desarrollo Sostenible.

Algunos ejemplos de actuaciones que algunas administraciones y empresas han puesto en marcha para conseguir mejorar este aspecto son: la implementación de planes de gestión de residuos más modernos, la puesta en marcha de campañas de concienciación y sensibilización para cambiar los hábitos del reciclaje y consumo, mejoras en cuanto a la eficacia de los servicios de recogida y tratamiento de residuos, etc.

Teniendo en cuenta toda esta información, la empresa de gestión de residuos de nuestra ciudad nos ha pedido ayuda para motivar y animar a las personas a reutilizar objetos y reciclar usando los puntos de recogida de basura.

10

Los requisitos que piden para dicha campaña son:

· Que requiera interactividad para motivar a las personas a que la usen y reutilicen o reciclen (puede ser una aplicación, un videojuego, etc.).

· Que muestre información relevante acerca de, al menos, el objetivo de desarrollo sostenible número 12, Producción y consumo responsables.

· Que incluya ejemplos de acciones que contribuyan a fomentar el reciclaje o la reutilización de objetos.

· Que incluya un juego que sirva como recompensa para motivar el uso de la aplicación y el reciclaje.

Gracias al contenido y las herramientas que verás a continuación, podrás resolver este y otros muchos problemas.

ODS

Los Objetivos de Desarrollo Sostenible (ODS) son 17 objetivos establecidos en 2015 por la Organización de Naciones Unidas, diseñados para conseguir un futuro sostenible para todas las personas.

Una de las metas del objetivo de desarrollo sostenible Producción y consumo responsables consiste en gestionar adecuadamente los desechos y reducir su generación mediante la reutilización y el reciclado para minimizar sus efectos en la salud humana y el medio ambiente.

11

El primer algoritmo de la historia se le atribuye a Ada Lovelace, y servía para calcular los números de Bernoulli, una secuencia de números que se utiliza en matemáticas avanzadas.

PROGRAMACIÓN 1 1.1. INTRODUCCIÓN A LA PROGRAMACIÓN

DEFINICIÓN DE PROGRAMACIÓN

Se utiliza el término programación en acciones del día a día, por ejemplo, cuando hay que hacer una secuencia de eventos o acciones como al planificar el orden de las canciones de un concierto o las pruebas de un concurso.

Cuando hablamos sobre este término en el contexto de la computación, nos referimos a dar la secuencia de instrucciones necesarias para conseguir que un dispositivo realice una tarea determinada.

A este conjunto de instrucciones concretas y ordenadas que hay que seguir para llevar a cabo una tarea o resolver un problema se le llama algoritmo.

Sus características principales son las siguientes:

FINITO

DEFINIDO

PRECISO

Un algoritmo siempre debe tener un fin, es decir, terminar después de ejecutar un número finito de pasos

terminar después de realizar un número finito de pasos

Cada paso de un algoritmo debe ser claro, las acciones a realizar deben ser específicas y sin ambigüedades

Debe indicar claramente los pasos y el orden en que se deben ejecutar.

COMPRENDE, PIENSA, INVESTIGA…

1. Describe el algoritmo básico en el que se basan las siguientes acciones:

a) Hacer una pizza.

b) Ciclo de lavado de una lavadora.

2. Identifica a qué corresponde el siguiente algoritmo:

• Trocear 1 kg de tomates, un pimiento, un pepino y echar todo en un cuenco grande.

• Añadir 50 g de pan de hogaza duro, 2 dientes de ajo, 50 ml de aceite de oliva, 250 ml de agua, 30 ml de vinagre y 5 g de sal.

• Triturar con una batidora.

• Pasar por un colador fino.

3. Identifica el error en el siguiente algoritmo:

a) Aparca el coche en un lugar plano y alejado del tráfico.

b) Afloja los tornillos de la rueda con la llave.

c) Retira los tornillos de la rueda y quita la rueda.

d) Coloca la rueda nueva en el coche.

e) Baja el coche con el gato.

f) Aprieta los tornillos de la rueda con la llave.

12

LENGUAJES DE PROGRAMACIÓN

Para que los ordenadores sean capaces de entender los algoritmos necesarios para realizar la tarea que queremos, es necesario darles las instrucciones en un código que ellos entiendan. Para ello utilizamos los lenguajes de programación. Al conjunto de órdenes escritas mediante un lenguaje de programación se le denomina programa informático.

Los más utilizados son los lenguajes textuales, que están formados por un grupo de signos y reglas que en su conjunto nos permiten decirle a la computadora qué hacer con los datos, cómo guardarlos y cómo actuar en diferentes situaciones. Algunos ejemplos de este tipo de lenguajes son C++ y Python.

Pero también existen los lenguajes visuales, que en vez de texto utilizan gráficos o formas que se conectan de alguna forma para formar los algoritmos. Un ejemplo muy común son los lenguajes basados en bloques que encajan entre sí permitiendo crear los algoritmos. Algunos ejemplos son Scratch, Make Code Arcade o Bitbloq Robotics.

Este tipo de lenguajes se emplean mucho en educación, ya que permiten reducir las dificultades a las que se enfrentan quienes empiezan a programar, pero también tiene sus inconvenientes con respecto a los textuales.

Ventajas

· Las instrucciones ya están definidas y son descriptivas, por lo que no es necesario aprender una sintaxis.

· Los bloques vienen categorizados por utilidad.

· Se programa arrastrando o seleccionando una serie de bloques de diferentes colores y formas por lo que no hay errores en la escritura.

· Los propios bloques determinan el orden o el lugar en que pueden acoplarse.

Inconvenientes

· Las instrucciones posibles están acotadas a las opciones que ofrecen los bloques.

· La complejidad de los proyectos es limitada.

· Puede presentar problemas de rendimiento en programaciones muy extensas o con muchos recursos gráficos.

Los lenguajes de programación visuales por bloques han ido evolucionando a lo largo del tiempo añadiendo nuevas funciones y mejorando su aspecto para hacerlos más atractivos y fáciles de usar.

Algunos programas permiten elegir si se quiere programar usando bloques visuales o escribiendo directamente el texto, e incluso ofrecen la posibilidad de comprobar cómo se traduce la programación generada con bloques a texto y viceversa.

COMPRENDE, PIENSA, INVESTIGA…

4. ¿Se te ocurren más ventajas o desventajas de los lenguajes de programación visual?

13

PRÁCTICA GUIADA

Pseudocódigo de un cálculo matemático

El pseudocódigo de un programa que te permita calcular el cuadrado de un número (su valor cuando se multiplica por sí mismo) se puede expresar, por ejemplo, de la siguiente forma:

INICIO

• ESCRIBIR («Dime un número para calcular su cuadrado:»);

• LEER (número);

• Resultado → número x número;

• ESCRIBIR «La respuesta es:», Resultado; FIN

Utilizar este pseudocódigo puede ayudarte a crear la programación en cualquier lenguaje, por ejemplo, en Scratch o Python.

COMPRENDE, PIENSA, INVESTIGA…

5. Transforma en pseudocódigo los algoritmos que pensaste en la actividad 1.

6. ¿Crees que es posible representar alguno de esos pseudocódigos en una secuencia de imágenes o iconos?

7. Compara tu pseudocódigo con el de otras personas de clase. ¿Eres capaz de entender el pseudocódigo del resto?

PSEUDOCÓDIGO

El pseudocódigo es una forma de expresar los distintos pasos que va a ejecutar un programa de la forma más parecida al lenguaje de las personas, por ejemplo, utilizando directamente palabras o frases descriptivas en nuestro propio idioma.

No se trata de un lenguaje de programación y por tanto no está estandarizado. Cada persona puede crear el pseudocódigo de forma distinta.

A pesar de que el pseudocódigo puede expresarse parecido a algún lenguaje de programación, no puede ejecutarse en un ordenador debido a que su finalidad es que sea comprensible para las personas.

Es útil cuando se programa, ya que al representar el algoritmo en pseudocódigo antes de desarrollar el programa, es más fácil programar y permite detectar posibles errores o elementos que pueden mejorarse.

Para facilitar la comprensión de este concepto, se puede pensar en el pseudocódigo como si fuera el boceto de un dibujo, mientras que el programa correspondería con el cuadro ya pintado.

PONTE A PRUEBA

Se celebran en tu instituto las jornadas de puertas abiertas, unos días en los que familias y nuevos estudiantes vienen a conocer las instalaciones. A la dirección le gustaría que colabores y escribas, en forma de algoritmo, los pasos para llegar de un sitio a otro del instituto, por ejemplo, desde la entrada al patio, desde las aulas al gimnasio, desde el salón de actos al despacho de dirección, etc.

Para crear el algoritmo, debes:

· Pensar el lugar de inicio y de fin, es decir, el sitio en el que se va a empezar el recorrido y el lugar al que se quiere llegar.

· Escribir en un papel los pasos de la manera más detallada posible.

· Entregar las instrucciones a otro compañero o compañera para que las siga y compruebe si son correctas o pueden dar pie a confusión.

· Mejorar el algoritmo en caso de que sea necesario.

14
Scratch Python

Los videojuegos creados con MakeCode Arcade, además de en el ordenador, se pueden jugar en miniconsolas como Meowbit, Adafruit PyBadge, Arcade Table, etc.

1.2. INTRODUCCIÓN A MAKECODE ARCADE

PRIMEROS PASOS CON MAKECODE ARCADE

MakeCode Arcade es un entorno de programación por bloques creado por Microsoft que permite diseñar juegos de tipo arcade.

Los juegos arcade son un tipo de videojuegos diseñados en 2D principalmente para máquinas recreativas, aunque hoy en día se juegan también desde ordenadores o videoconsolas.

Para acceder a la herramienta tienes que abrir su página web https://arcade. makecode.com. Puedes trabajar con este programa registrándote para guardar todos tus proyectos y poder volver a ellos cuándo y desde dónde quieras, o bien, como invitado, pero solo se guardarán en el navegador del ordenador desde el que estés accediendo.

INTERFAZ

Para empezar a crear un programa hay que hacer clic en Nuevo proyecto, escribir un nombre y pulsar en Crear.

Aparece una pantalla que tiene las siguientes áreas:

1. Modos de programación: permite seleccionar con qué lenguaje de programación crear el proyecto. Hay tres formas de programación disponibles: bloques, JavaScript o Python.

2. Recursos: biblioteca en la que se pueden visualizar todos los recursos gráficos del programa y crear recursos propios.

3. Barra de herramientas: para ir a la página principal, compartir o publicar el proyecto, visualizar tutoriales de la herramienta y cambiar ajustes del proyecto (eliminar, cambiar el idioma, añadir extensiones, etc.).

4. Área de previsualización: zona donde se prueba el programa creado. En la parte inferior de la pantalla de visualización, se encuentran distintos botones que permiten comenzar el programa, resetearlo, ajustar el volumen, ponerlo en pantalla completa, etc.

COMPRENDE, PIENSA, INVESTIGA…

8. En anayaeducacion.es , busca y abre el juego Consigue el cofre para explorar la interfaz del programa, su funcionamiento y su código. ¿Sabrías decir para qué sirven cada uno de los bloques de programación?

5. Zona de programación: espacio donde se arrastran los bloques o se escribe el código para crear la programación del juego.

6. Espacio de descarga: tiene el botón Descargar que permite guardar el proyecto en el ordenador, y tres puntos a su derecha para seleccionar, en caso de que se disponga de ella, la consola en la que se va a jugar.

7. Nombre y opciones de guardado: para modificar el nombre del proyecto y guardarlo en el navegador o en Github.

8. Opciones de la zona de programación: para deshacer o rehacer acciones y aumentar o disminuir el zoom de este espacio.

15

CATEGORÍA DE BLOQUES

MakeCode Arcade tiene los bloques organizados en las siguientes categorías:

· Objetos: bloques que contienen las órdenes para crear y controlar los personajes u objetos del juego.

· Mando: los bloques de esta categoría permiten programar cómo se controla el movimiento de los personajes u objetos del juego.

· Juego: sirven para programar diálogos, mensajes, actualizar el juego, etc.

· Música: bloques para controlar la reproducción de música o sonidos del juego.

· Escena: bloques que contienen las órdenes de cómo debe ser y cómo debe comportarse el fondo o escenario del juego.

· Información: sirven para crear contadores de vida, de puntos, etc.

· Bucles: se usan para repetir acciones, detener el programa, etc.

· Lógica: permiten programar condicionales, es decir, condiciones que indican cuándo deben ejecutarse distintas acciones.

· Variables: bloques para crear y controlar variables.

· Matemática: sirven para generar números aleatorios, hacer operaciones matemáticas, etc.

· Extensiones: se usan para añadir funcionalidades extra. Al seleccionar una de las opciones, se añade una nueva categoría.

· Avanzado: desplegable que muestra una serie de categorías más complejas que permiten crear animaciones, funciones, imágenes, unir textos, etc.

16 1 2 3 4 5 6 7 8

Los objetos y fondos en MakeCode Arcade están diseñados mediante píxeles.

OBJETOS

Para crear un programa en MakeCode Arcade, es recomendable que primero añadamos los objetos o elementos que va a contener el juego.

Estos se pueden incluir de dos formas:

· Desde la biblioteca del programa. Para visualizar todos los recursos gráficos que tiene la herramienta ve a Recursos → Galería.

· Dibujando uno propio. Para dibujar un elemento gráfico, pulsa en el + de la pestaña Recursos. En esta pestaña, selecciona qué recurso quieres dibujar (imagen, tesela, mapa de teselas o animación).

Tras seleccionar una de las opciones, aparece el editor de objetos en el que se puede dibujar un objeto (Editor) o seleccionar y editar uno de la biblioteca (Galería).

El editor de dibujo de este programa varía un poco en función del recurso que se seleccione, pero en general, tiene las siguientes áreas:

1. Lienzo: espacio en el que dibujar.

2. Tamaño del cursor: para seleccionar el tamaño en píxeles (px) del cursor para dibujar o colorear (1x1, 3x3, 5x5).

3. Opciones de imagen: permiten rotar o espejar el dibujo.

4. Herramientas de dibujo: con las que crear el dibujo (lápiz, rectángulo, goma de borrar, círculo, línea, etc.). En la parte inferior se puede seleccionar el color.

17
1 6 7 2 3 4 5

PRÁCTICA GUIADA

Diseña tus propios objetos

Desde Make Code Arcade puedes crear un objeto dibujándolo o modificando uno de la biblioteca.

Una seta es, probablemente, uno de los objetos más icónicos de los videojuegos. Dibuja una siguiendo estos pasos:

1 Seleccionar el rectángulo o el lápiz y el color marrón.

2 Dibujar un rectángulo en la parte inferior del lienzo.

3 Elegir el color rojo y dibujar la parte superior de la seta.

4 Seleccionar el color blanco para pintar algunos puntos dentro.

Para modificar un objeto, por ejemplo, el color del pez de la biblioteca de MakeCode Arcade, debes:

1 Buscar el pez en la pestaña Galería.

2 Pulsar en Duplicar y a continuación en Editar.

3 Seleccionar la herramienta lápiz y el color que quieras.

4 Colorear los píxeles que quieras cambiar. Es recomendable que le pongas un nombre descriptivo a los dibujos para que a la hora de programarlos puedas reconocerlos fácilmente.

5. Tamaño del lienzo: sirve para modificar la cantidad de píxeles del lienzo. Si se cierra el candado el cambio del ancho y el alto se aplica de manera proporcional.

6. Nombre: sirve para visualizar o modificar el nombre del dibujo.

7. Opciones del lienzo: permite deshacer o rehacer acciones, modificar el zoom (ampliar o reducir) y guardar el dibujo.

En MakeCode Arcade hay que especificar de qué tipo es cada uno de los objetos que queramos incluir en el juego. Para ello, hay que seleccionar el bloque fijar mySprite a objeto del tipo Player de la categoría Objetos.

Para establecer el objeto, hay que pulsar sobre el cuadrado gris del bloque y dibujar el que se quiera, seleccionar uno de la galería o elegir uno de los dibujos ya creados previamente.

Para cambiar el tipo de objeto tenemos que pulsar en el desplegable de la palabra Player y seleccionar otro. Se pueden añadir cuatro tipos de objetos: jugador, enemigo, proyectil o comida, o crear uno propio.

COMPRENDE, PIENSA, INVESTIGA…

9. Modifica el objeto pizza y dibújale tus ingredientes favoritos.

10. Practica con el editor de objetos diseñando un personaje que se parezca a ti.

11. Diseña un personaje u objeto de tu videojuego favorito.

18

PRÁCTICA GUIADA

Mueve los objetos

¡Llegó el momento de la acción! Consigue que se mueva un objeto por la pantalla con los bloques de las categorías Objetos y Mando.

Para programar que un objeto se mueva con las flechas del teclado, tienes que:

1 Colocar dentro del bloque al iniciar, el bloque fijar mySprite a objeto del tipo Player de la categoría Objetos.

2 Seleccionar en el cuadrado gris, el objeto que quieras programar.

3 Arrastrar debajo el bloque mover mySprite con botones de la categoría Mando.

Pulsando en las flechas de este bloque, se puede editar el movimiento en el eje X e Y, y conseguir que un objeto avance más o menos o que solo se pueda mover en vertical u horizontal.

4 Pulsar el botón Iniciar el simulador en la pantalla de previsualización y comprobar que el objeto se mueve.

También puedes programar que el objeto anterior salte al pulsar la tecla espacio o el botón A siguiendo estos pasos:

COMPRENDE, PIENSA, INVESTIGA…

12. Añade dos objetos de tipo Player al juego y prográmalos para que se puedan mover en todas direcciones. ¿Se mueven con las mismas teclas los dos jugadores?, ¿con qué teclas del teclado se mueve cada objeto?

13. Programa un objeto que solo se mueva en dirección horizontal, es decir, hacia la derecha y hacia la izquierda.

1 Arrastrar el evento al A botón presionado de la categoría Mando al espacio de programación.

2 Colocar dentro, el bloque fijar mySprite x a 0 de la categoría Objetos. Modificar en el desplegable la x por la opción ay (acceleration y), y el número 0 por un -200 para hacer que el objeto se mueva hacia arriba.

3 Arrastrar debajo el bloque pause … ms de la categoría Bucles y seleccionar en el desplegable 500.

4 Colocar debajo otro bloque fijar mySprite ay (acceleration y) a 0, y en esta ocasión poner el número 200 en positivo para que se mueva hacia abajo.

5 Pulsar el botón Iniciar el simulador en la pantalla de previsualización, presionar la tecla espacio o el botón A y comprobar que el objeto salta.

Debido a que la última acción programada al pulsar el botón A es que el objeto caiga, este caerá continuamente a no ser que se programe cuándo debe parar.

.

19
VIDEOTUTORIAL DE MAKECODE ARCADE
anayaeducacion.es
ENCUENTRA EL
EN

ESCENARIOS

Al igual que los objetos, los escenarios pueden añadirse desde la biblioteca del programa o dibujarlos.

En función del juego que quieras programar, el escenario puede estar compuesto por un fondo (con una imagen o un color determinado), un mapa de baldosas o teselas, o ambas cosas.

Generalmente, los juegos de plataformas o laberintos necesitan un mapa de teselas, ya que es necesario definir por dónde debe pasar el personaje y por dónde no. Sin embargo, si queremos programar un juego en el que un personaje se mueva libremente por el escenario para recoger objetos, solo se necesita un fondo.

Para acceder al editor de fondos, pulsa en el + de la pestaña Recursos y a continuación, selecciona el tipo de mapa que quieres dibujar (tesela o mapa de teselas). Al igual que en el caso de los objetos, tras seleccionar una de las opciones, aparece el editor de objetos en el que se puede dibujar (Editor) o seleccionar y editar uno de la biblioteca (Galería)

El editor de fondos para crear baldosas es muy similar al de objetos, sin embargo, para diseñar mapas de teselas, el editor cambia ligeramente y se añaden nuevas herramientas:

1. Pantalla de previsualización: muestra el mapa de teselas completo.

2. Herramientas de dibujo: con las que crear el mapa (lápiz, rectángulo, goma de borrar, círculo, línea, etc.). En este caso, en lugar del color, hay que seleccionar el tipo de tesela en la parte inferior con la que dibujar.

3. Propiedades: permiten configurar que una o varias baldosas sean muros, es decir, elementos que no puede atravesar el personaje.

4. Teselas: se puede elegir el tipo de baldosa de entre las que se han creado anteriormente o las que se encuentran en la biblioteca del programa. Las de la biblioteca están organizadas en distintas categorías o temáticas que se pueden cambiar utilizando el desplegable.

Para dibujar un fondo o mapa de baldosas que ocupe toda la pantalla de visualización, es necesario que tenga una medida de 160 x 120 px.

Al igual que con los objetos, para añadir un fondo a un juego, hay que programarlo. Para ello disponemos de los siguientes bloques de la categoría Escena:

· fijar color de fondo a: para establecer un color de fondo del juego.

· fijar imagen de fondo a: para añadir una imagen.

· fijar mapa de teselas a: para incluir un mapa de teselas personalizado. 1 2 3 4

20

Cuando una baldosa se define como muro, se resalta de color rojo.

PRÁCTICA GUIADA

Tu primer juego de plataformas

Para crear un juego tienes que decidir previamente dos aspectos importantes:

• Cómo va a ser la interfaz, es decir, qué elementos va a tener, cómo van a ser, etc.

• Cómo va a ser la programación, es decir, cómo va a funcionar.

Puedes crear un juego de plataformas añadiendo primero en la interfaz un fondo, un mapa de teselas y un personaje. En el mapa, las teselas tienen que estar configuradas como muros (pulsar la opción Muro en el editor de fondos y seleccionar las teselas).

En cuanto a la programación, debes al menos programar que aparezcan los elementos anteriores y además, conseguir que el personaje se mantenga en las teselas y se caiga cuando no esté sobre ellas. Para programar el juego, tienes que:

1 Establecer el escenario y el personaje.

2 Programar que el personaje se mueva de derecha a izquierda y que, al pulsar el botón A, salte.

3 Programar que la cámara siga al objeto para conseguir que el objeto no desaparezca del escenario.

4 Establecer la posición de inicio del objeto. En el mapa de teselas puedes consultar la columna y la fila, posicionando el ratón encima de la celda en la que quieres que empiece el objeto principal.

5 Previsualizar el juego y comprobar que el personaje puede llegar saltando a cada una de las plataformas.

También, puedes programar que cuando el personaje caiga en un tipo de baldosa determinado, se pierda la partida. Para ello, debes añadir al mapa de teselas una baldosa diferente a la anterior y programarla para que, cuando el personaje esté encima de ella, se ejecute la acción de perder.

Para programar esta acción tienes que usar los bloques de la categoría Escena y de la categoría Juego.

21
1 2 2 3 4
Para hacer que una baldosa resaltada de rojo no sea muro, hay que utilizar el borrador, tener seleccionada la opción Muro y hacer clic sobre ella en el lienzo.

SONIDOS

MakeCode Arcade también permite añadir sonidos desde su biblioteca e incluso crear nuevos con su editor. Se puede añadir un sonido o melodía a un juego con los bloques de la categoría Música. En esta categoría, los bloques están divididos según la duración del sonido en:

· Songs: para reproducir sonidos largos o melodías. El bloque play melody también permite componer melodías propias o bien seleccionar una de la biblioteca del programa.

· Sounds: bloques que permiten reproducir sonidos cortos. El bloque reproducir sonido, contiene un editor para crear sonidos propios o añadir sonidos de la galería.

El resto de subcategorías, Tono, Volumen y Tempo, permiten utilizar notas musicales concretas, controlar el volumen y el tempo o velocidad a la que debe ejecutarse una pieza musical.

PONTE A PRUEBA

Este año, el instituto celebra un concurso de videojuegos retro.

Para poder participar es necesario crear un juego que cumpla con los siguientes requisitos:

· Basarse en un videojuego clásico.

· Representar al menos una pantalla o nivel de este.

· Tener un texto que explique el objetivo del juego.

· Tener un inicio y un fin.

· Poder jugar desde el ordenador.

Ahora que sabes cómo usar MakeCode Arcade, elabora un videojuego que cumpla con estos requisitos, siguiendo estos pasos:

1. Define previamente cómo va a ser el juego (qué elementos va a tener, cómo va a funcionar, tipo de juego, etc.).

2. Diseña la interfaz del juego (fondo, personajes, objetos, etc.).

3. Realiza la programación del juego.

4. Pruébalo y comprueba que funciona correctamente.

COMPRENDE, PIENSA, INVESTIGA…

14. Crea un juego de plataformas que tenga: a) Un personaje que se mueva y salte. b) Un mapa de teselas que tenga baldosas que hagan perder la partida y otras en las que se gane el juego.

15. Modifica el proyecto de la actividad anterior añadiendo un segundo personaje para hacerlo colaborativo.

16. Programa que muestre una animación o efecto al ganar o perder el juego.

17. Experimenta con el bloque mostrar texto largo de la categoría Juego para conseguir programar un cartel de inicio que explique cuál es el objetivo del juego.

18. Añade sonidos al juego que has creado anteriormente con los bloques de la categoría Música.

19. Busca una partitura de una melodía sencilla e intenta programarla usando los bloques de Tono.

20. Intercambia las partituras con otras personas de la clase y prográmalas.

22

DEFINICIÓN Y TIPOS DE BUCLES

Un bucle es una secuencia de instrucciones o parte de un programa que se ejecuta varias veces.

En MakeCode Arcade, puedes programarlos con los bloques de la categoría Bucles:

· para siempre: para hacer que una acción se repita continuamente.

· repetir … veces: para lograr que una secuencia se repita el número de veces indicado.

· mientras … ejecutar: para que se repita mientras se cumple una condición, por ejemplo, mientras que un objeto toque a otro, esté en una determinada posición, etc.

DEFINICIÓN Y TIPOS DE CONDICIONALES

Un condicional es una instrucción que permite ejecutar distintas acciones en función del valor de una condición.

Por ejemplo, si la condición es si está lloviendo en función de la respuesta se ejecutarán las siguientes acciones:

· Respuesta afirmativa → abrir el paraguas.

· Respuesta negativa → cerrar el paraguas.

Hay varios tipos de sentencias condicionales:

1. Simple: estructura que ejecuta las acciones programadas si se cumple una determinada condición.

2. Doble: estructura que permite elegir entre dos opciones o alternativas, es decir, se ejecuta una acción u otra en función de si la condición es verdadera o falsa.

3. Múltiple: estructura que permite elegir entre más de dos opciones o alternativas.

Puedes programar condicionales en MakeCode Arcade con los bloques de la categoría Lógica:

· si … entonces: para crear un condicional simple.

· si … entonces, si no: para programar un condicional doble, es decir, que tenga dos opciones.

Para crear sentencias condicionales múltiples, es necesario pulsar el botón con el símbolo + y añadir tantos si … entonces, si no como se necesiten.

COMPRENDE, PIENSA, INVESTIGA…

21. Si se construye esta programación, ¿en qué coordenada quedará el personaje al pulsar por primera vez el botón A?

¿Se cumple la condición?

Ejecutar acciones

¿Se cumple la condición?

Ejecutar acciones

Ejecutar acciones

¿Se cumple la condición 1?

Ejecutar acciones

No No

¿Se cumple la condición 2?

Ejecutar acciones

¿Se cumple la condición 3?

Ejecutar acciones

23
1
Sí 2
Sí No 3

MakeCode Arcade está específicamente diseñado para crear videojuegos, por lo que para facilitarnos las cosas nos ofrece algunos condicionales ya creados que nos pueden resultar muy útiles, como por ejemplo, el que se encuentra en la categoría Objetos: cuando el … de tipo … se superpone … del tipo …, que sirve para programar lo que sucede cuando un objeto choca o colisiona con otro.

COMPRENDE, PIENSA, INVESTIGA…

22. Programa un videojuego con MakeCode Arcade en el que haya que escapar de un objeto que te persigue. Crea un fin de juego usando el temporizador y el contador de vidas.

PRÁCTICA GUIADA

Condicionales con MakeCode Arcade

Este mono tiene mucha hambre. ¿Habrá comido suficientes plátanos cuando la cuenta atrás termine? Para saber si has ganado o perdido en este juego, usa los condicionales de la siguiente forma:

1 Programar que al inicio del juego aparezca una imagen de fondo y un objeto de tipo Player que se pueda controlar con las teclas de dirección y al que le siga la cámara.

2 Añadir un contador de tiempo y fijar los puntos a 0.

3 Programar que cada vez que se actualice el juego, por ejemplo, cada 1000 ms, aparezca un objeto de tipo comida de forma aleatoria por el escenario.

4 Arrastrar los bloques necesarios para que, cuando el personaje toque el objeto, se sume un punto y se destruya el objeto que ha tocado.

5 Programar un fin de juego en el que, cuando termine el contador, si se ha recogido un número de objetos se gane el juego y si no se pierda.

24
1 5 2 3 4

Se puede comparar una variable con una caja donde almacenar información.

DEFINICIÓN Y TIPOS DE VARIABLES

Las variables permiten almacenar información importante para el programa mientras se está ejecutando y así poder usarla después en otras partes del código. Al programar una variable es posible guardar en ella un valor por defecto y actualizarlo durante la ejecución del programa.

Las variables se utilizan en prácticamente todos los programas ya que la mayoría de ellos tratan y manipulan datos para resolver un problema. Un ejemplo muy típico pueden ser los contadores de puntos o de vidas, o el nombre del jugador.

En MakeCode Arcade, algunas variables ya vienen creadas por defecto, como es el caso de la variable mySprite que aparece cuando se define un personaje, el contador de tiempo, de vidas, de puntos, etc.

También se pueden crear en la categoría Variables, y programarlas con los bloques de las categorías Información y Variables.

Las variables pueden almacenar distintos tipos de datos. Algunos de ellos son:

· Enteros: se trata de números que solo tienen parte entera, carecen de parte decimal. Por ejemplo, 10.

· Flotantes: son números que contienen parte entera y parte decimal. Por ejemplo, 3.1415.

· Cadenas de caracteres: es una sucesión de caracteres, es decir, letras, números y símbolos. Por ejemplo, «Hola, mundo».

· Booleanos: es un tipo de variable que admite dos valores posibles, verdadero o falso.

PONTE A PRUEBA

En unas semanas tendrá lugar un evento sobre diseño de videojuegos cooperativos en centros educativos. El profesorado que organiza el evento te pide que colabores creando un juego en MakeCode Arcade que tenga las siguientes características:

· Tienen que poder jugar dos personas a la vez.

· El objetivo debe ser saltar obstáculos.

· Un marcador debe controlar la puntuación de las dos personas que juegan.

25

PRÁCTICA GUIADA

Combate enemigos con MakeCode Arcade

¡Houston, tenemos un problema! Estamos cruzando un campo de asteroides. ¡Solicitamos permiso para usar el cañón laser!

Puedes programar un juego en el que haya que evitar y destruir distintos enemigos que van cayendo por la parte superior de la pantalla, siguiendo estos pasos:

1 Programar que, al iniciar el juego, aparezca una nave en una determinada posición, que se pueda mover con las flechas de dirección de izquierda a derecha y que rebote en las paredes.

2 Renombrar la variable mySprite y ponerle un nombre identificativo, por ejemplo, nave.

COMPRENDE, PIENSA, INVESTIGA…

23. Añade un contador de tiempo al juego de la práctica guiada. Programa la acción de ganar, al conseguir destruir una serie de obstáculos.

24. Programa, en el juego anterior, que los asteroides caigan a una velocidad aleatoria para conseguir que unos se desplacen más lento y otros más rápido.

25. ¿Qué otras variables se te ocurre que puedes añadir a tus videojuegos?

3 Crear un contador de vidas y otro de puntos, para programar que se reste una vida cuando un asteroide impacte contra la nave y se sume un punto cuando se destruya un asteroide.

4 Programar el botón A para lanzar un proyectil que se mueva desde la nave hacia la parte superior de la pantalla.

5 Programar que aparezcan cada cierto tiempo, asteroides desde la parte superior de la pantalla. Fijar los asteroides como enemigos.

6 Programar que, cuando los asteroides impacten contra la nave, se reste una vida y desaparezcan.

7 Por último, hacer que cuando los proyectiles alcancen un asteroide, ambos desaparezcan y se sume 1 punto al contador.

26
1 3 4 5 6 7 2

1.3. DIAGRAMAS DE FLUJO

DEFINICIÓN Y SÍMBOLOS DE DIAGRAMAS DE FLUJO

Los diagramas de flujo son representaciones gráficas de algoritmos. Se utilizan para plasmar el comportamiento de un programa y los procesos que lo conforman con mucha precisión y sin necesidad de usar elementos del lenguaje en el que se va a desarrollar el programa.

Para que cualquier persona pueda interpretar un diagrama de flujo, estos se rigen por unas normas estandarizadas. Las normas más importantes son:

· Se deben emplear siempre los símbolos estándares.

· Todo diagrama debe tener un comienzo y un final claro indicado con un símbolo con forma de elipse.

Algunos de los símbolos más empleados son los siguientes:

SÍMBOLOS

Elipse: representa el inicio o fin del programa.

Rombo: representa una decisión. La respuesta solo puede ser sí o no, por lo que de este símbolo, solo pueden salir dos flechas.

Romboide: sirve para representar la entrada de datos (como por ejemplo, escribir datos para contestar a una pregunta) o salida de datos (por ejemplo, mostrar un texto o un resultado en la pantalla).

Inicio / Fin ¿tiempo = 0?

Preguntar por nombre

Inicio / Fin

A lo largo de la historia han existido distintos organismos que han tratado de estandarizar los diagramas de flujo o adaptarlos a su área de trabajo. Es por esto que es posible encontrar diagramas que usan símbolos distintos para representar lo mismo. El rectángulo redondeado es otra forma para indicar el símbolo de inicio y fin.

Rectángulo: representa todos los procesos que no tengan un símbolo específico.

Rectángulo con esquina: se usa para comentar el resto de los símbolos del diagrama de flujo. Se une al símbolo que comenta mediante una línea recta.

Flecha: une el resto de símbolos entre sí e indica el flujo del programa, es decir, el orden en el que se lee el programa. La punta de flecha solo puede aparecer en uno de los extremos de la línea.

Personaje salta

Este proceso cambia el estado del personaje

27

EJEMPLO RESUELTO

Diagrama de flujo

Antes de comenzar a dibujar el diagrama de flujo tienes que conocer el algoritmo que quieres representar, aunque si no conoces todos los pasos o procesos necesarios, los irás descubriendo al crear el diagrama.

Para hacer una foto con un smartphone, habitualmente desbloqueas el dispositivo, pulsas el icono de la aplicación de cámara, encuadras lo que quieres fotografiar, pulsas el botón para tomar la foto, verificas si ha salido correctamente desde la galería y si no es así, repites algunos pasos.

Este es un diagrama de flujo que representa este proceso.

COMPRENDE, PIENSA, INVESTIGA…

26. Crea el diagrama de flujo del proceso para preparar por ejemplo, un salmorejo. Puedes escribirlo en pseudocódigo antes si lo necesitas.

27. Diseña el diagrama de flujo del programa que controla un personaje de un videojuego. El personaje se comporta de la siguiente forma:

a) Si se presiona el botón A, el personaje salta.

b) Si se presiona el botón B, el personaje avanza.

c) Si el personaje toca una moneda, gana un punto.

d) Si el personaje toca un cactus, pierde una vida.

e) Si el personaje se queda sin vidas, se acaba el juego.

. Puedes escribir el programa en pseudocódigo antes si lo necesitas.

28. Durante el diseño del diagrama: ¿has descubierto pasos o procesos que no se te habían ocurrido antes?

29. Escribe tu versión de pseudocódigo que explique el algoritmo del siguiente diagrama de flujo.

El icono es de color blanco

Inicio

Desbloquear dispositivo

Pulsar icono con forma de cámara

Pulsar el botón de volver atrás

Encuadrar la foto

Pulsar el botón de disparo

Pulsar el botón de la aplicación de galería

¿Foto correcta?

Cerrar aplicación

Fin

El pseudocódigo y los diagramas de flujo permiten representar un algoritmo sin emplear un lenguaje de programación concreto. La principal diferencia entre ellos es que mientras que el pseudocódigo es libre, se puede crear como mejor convenga, los diagramas de flujo deben seguir unas normas.

Inicio

Poner tiempo = 60"

Poner contador puntos = 0

¿Flecha derecha pulsada?

Mover nave a la derecha

¿tiempo = 0?

Fin

¿Flecha izquierda pulsada?

Mover nave a la izquierda

¿Tecla espacio pulsada?

Disparar láser

¿Asteroide destruido?

Restar 1 segundo a tiempo Sumar 1 punto

28
Sí Sí No No No No No No Sí
Sí Sí

Existen algunos lenguajes de programación visual cuyos bloques son muy similares a los de los diagramas de flujo. Gracias a esto se puede comenzar a programar muy rápidamente. Es el caso de lenguajes de SFC o Bitbloq Robotics Diagramas.

PROGRAMACIÓN Y DIAGRAMAS DE FLUJO

Los diagramas de flujo se emplean en multitud de campos de conocimiento con distintas normas y objetivos.

En programación se usan para representar cómo ha de ser un programa o cuál es el comportamiento esperado por parte de la persona que interactúa con el mismo.

ENCUENTRA ENLACES A HERRAMIENTAS PARA CREAR DIAGRAMAS DE FLUJO EN anayaeducacion.es

La Unión Europea está promoviendo una actividad entre institutos de todos los países miembros para crear un paso a paso interactivo de una serie de recetas de cocina típicas de cada zona.

A tu centro le toca elegir la receta y diseñar el diagrama de flujo del programa que guiará a quienes lo utilicen. Más adelante, otro centro se encargará de programarlo a partir del diagrama.

En las bases de la actividad se indica que:

· Tiene que aparecer en pantalla una cuenta atrás cada vez que sea necesario esperar o tener en cuenta el tiempo transcurrido en un paso de la receta. Por ejemplo, el tiempo de cocción.

· Debe haber un botón que permita pasar al siguiente paso de la receta.

· Las instrucciones para la persona que cocina han de aparecer en pantalla en forma de texto y sonar en forma de locución grabada.

Elige un plato típico y crea el diagrama de flujo. Puedes apoyarte en un pseudocódigo, describir la receta o incluso describir el plato finalizado.

29
PONTE A PRUEBA

Hoy en día, existen ramas como la del diseño de interacción (IxD), que se dedican a estudiar y planificar cómo va a ser la interactividad entre el usuario y el producto.

1.4. INTERACCIÓN CON EL USUARIO

DEFINICIÓN

La interacción con el usuario en informática, es el resultado del diálogo que se lleva a cabo entre el dispositivo o programa y las personas que lo usan. Esta interacción se da muchas veces a través de una pantalla, por ejemplo: cada vez que rellenas un formulario, buscas algo en un navegador o seleccionas un juego.

BLOQUES QUE PERMITEN INTERACCIONES

MakeCode Arcade dispone de bloques que permiten distintas interacciones con las personas, una de ellas se lleva a cabo a través del diálogo.

Los diálogos pueden ser mensajes que muestran los objetos, o bien, preguntas que requieren una respuesta por parte del usuario.

MakeCode Arcade permite mostrar mensajes en la pantalla de inicio del juego, cuadros de diálogo para explicaciones en cualquier momento del juego o incluso realizar preguntas al usuario. Para programar estas interacciones se usan bloques de las categorías Juego y Texto.

PRÁCTICA GUIADA

Programa un acertijo de fin de juego

Con los bloques de diálogo de MakeCode Arcade, puedes crear unas instrucciones iniciales de juego y un acertijo final que haya que adivinar para superar el juego.

Para ello, debes:

1 Crear un juego o reutilizar uno que hayas hecho anteriormente, por ejemplo, el juego de plataformas.

2 Programar que, al inicio, se muestre un mensaje de texto que informe del objetivo del juego con el bloque mostrar texto largo de la categoría Juego.

3 Programar un condicional para controlar que, al tocar el cofre, se formule una pregunta. Si se adivina, se gana el juego, si no, se pierde. Arrastrar los bloques de la categoría Lógica, Juego y Texto.

4 Si quieres que la pregunta se conteste con un número, añade el bloque preguntar por número y elimina el bloque de la categoría Texto.

30

Desde el Ministerio de Educación, se quiere crear un juego que ayude a los niños y niñas de cualquier lugar del mundo a desarrollar sus habilidades de pensamiento, lógica y deducción.

Los requisitos para el juego son los siguientes:

· Tiene que explicarse el objetivo del juego en la pantalla de inicio del programa.

· Debe haber al menos tres adivinanzas de distintos niveles de complejidad.

· Para superar el juego se debe contestar correctamente a todas las adivinanzas.

Emplea tus conocimientos sobre MakeCode Arcade para elaborar un juego que cumpla con estos requisitos.

A la hora de escribir y evaluar la respuesta en MakeCode Arcade, es recomendable indicar que se haga en minúsculas y sin acentos, ya que en el teclado que se activa en pantalla, aparecen las letras en minúscula.

COMPRENDE, PIENSA, INVESTIGA…

30. Añade más preguntas al programa de ejemplo de MakeCode. Incluye varios objetos, de manera que vayan apareciendo cuando se contesta correctamente a la pregunta del objeto anterior.

31
PONTE A PRUEBA

¿QUÉ HAS APRENDIDO?

INICIACIÓN A LA PROGRAMACIÓN

1 ¿Cuáles son las principales ventajas de los lenguajes de programación por bloques?

2 Identifica a qué pertenece el siguiente pseudocódigo:

INICIO

Escribir («Dime el primer número»).

Leer el número1.

Escribir («Dime el segundo número»).

Leer número2.

Resultado: número1 x número2.

Escribir («El resultado es:» Resultado).

FIN

3 Escribe el pseudocódigo de una de estas acciones:

a) Preparar una ensalada.

b) Estudiar para un examen.

c) Poner en marcha tu videojuego favorito.

d) Leer y contestar un correo electrónico.

PROGRAMA CON MAKECODE ARCADE

4 Diseña un laberinto con un mapa de teselas.

5 Utiliza el mapa anterior para crear un juego de tipo laberinto en el que un personaje tenga que llegar al final para conseguir un objeto.

6 Añade obstáculos u otros elementos al juego anterior que te hagan perder la partida.

DIAGRAMAS DE FLUJO

7 Copia esta tabla con las características de los símbolos de un diagrama de flujo en tu cuaderno y complétala.

Para procesos que no tienen símbolo específico.

Rectángulo con esquina

Para unir los símbolos entre sí. …

8 ¿Cuál es el funcionamiento de este diagrama?

Inicio ¿Tecla espacio presionada?

Mostrar personaje en pantalla Decir “Salto”

Personaje salta Sí No

¿Tecla flecha derecha presionada?

¿Tecla flecha izquierda presionada?

¿Botón rojo presionado?

49
49
USO REPRESENTACIÓN … …
Rombo
Avanzar sumando 10 a X Retroceder restando 10 a X Decir “Adiós” Sí Sí Sí No No No Fin

9 Este diagrama de flujo tiene errores. ¿Serías capaz de corregirlo? Dibuja en tu cuaderno la versión correcta del diagrama.

Inicio

¿Botón Siguiente presionado?

Mostrar personaje en pantalla

Sí Sal

Decir “Te gustan con extra de sal o azúcar”

Decir “Échale sal”

Decir “Hoy vamos a cocinar palomitas”

¿Qué botón ha seleccionado?

DISEÑA Y PROGRAMA APLICACIONES MÓVILES

12 Crea una aplicación en la que tengas que ir acertando una serie de preguntas de manera que, cuando aciertes, te lleve a un juego a modo de recompensa.

13 Programa un juego de preguntas y respuestas sobre la temática que quieras (cine, música, etc.) que tenga:

a) Distintas formas de responder.

b) Un contador de aciertos y errores.

c) Un texto que informe de las respuestas acertadas y falladas.

Decir “Échale azúcar”

Decir “Sigue las instrucciones del paquete”

10 Completa el siguiente diagrama de flujo para que, si la respuesta es correcta, el personaje muestre un disfraz feliz y diga que es correcto.

Inicio

¿Respuesta = nombrecorrecto?

Sí No

Decir “Pulsa espacio e introduce mi nombre correctamente”

Preguntar "¿Cómo me llamo?" Fin

11 Crea el diagrama de la siguiente programación.

d) Al menos dos pantallas: una en la aparezcan las instrucciones del juego y otra en la que se muestren las preguntas y respuestas.

14 Crea una aplicación que te permita traducir palabras o frases a diferentes idiomas.

INTELIGENCIA ARTIFICIAL

15 Completa la definición de los siguientes tipos de agentes inteligentes:

a) Agente reactivo simple.

b) Agente basado en metas.

c) Agente que aprende.

d) Agente de consulta.

16 ¿Cuál es la diferencia principal entre los sistemas de aprendizaje supervisado y no supervisado?

17 ¿Qué tipo de aprendizaje utilizarías para entrenar una inteligencia artificial que detecte si un lunar debe ser revisado por un especialista o es totalmente normal?

50
Ninguna
Azúcar

ODS

SITUACIÓN DE APRENDIZAJE

Como hemos visto al inicio del bloque, la empresa de gestión de residuos de nuestra ciudad nos ha pedido ayuda para motivar y animar a las personas a reutilizar y reciclar. Puedes revisar los requisitos que nos piden al inicio del bloque.

Nuestro equipo, formado por personas expertas, va a crear su propia propuesta utilizando Bitbloq Apps y MakeCode Arcade, dos de las herramientas que hemos aprendido a usar.

ANÁLISIS DE LA INFORMACIÓN

A continuación te mostramos un ejemplo resuelto de la situación de aprendizaje con la intención de que sirva como guía para entender mejor las diferentes fases que hay que seguir en el proceso. Para resolver la situación de aprendizaje correctamente debes crear una nueva solución siguiendo la estructura planteada sin copiar el ejemplo propuesto.

Antes de comenzar, analizamos los distintos roles que nos explicará nuestro profesor o profesora y elegimos el más adecuado para cada persona del equipo.

Analizamos la información disponible para tener claro el objetivo, las necesidades y/o los requisitos que nos piden.

Buscamos información en Internet para comprender mejor los problemas a los que se enfrentan las ciudades en materia de residuos y su impacto ambiental.

Algunos ejemplos de información que puede ser interesante investigar son:

· De qué trata el objetivo de desarrollo sostenible número 12.

· Qué metas de este ODS están relacionadas con el problema.

· Cuáles son los principales problemas del reciclaje o reutilización.

· Cómo afecta al medio ambiente no reutilizar objetos que puedan tener una segunda vida.

Es importante que, a la hora de buscar información, utilicemos siempre fuentes fiables.

Anotamos toda esta información en una hoja o documento online en el que documentaremos todo el proceso de trabajo.

PLANTEAMIENTO DE SOLUCIÓN

Una vez que tengamos toda la información, la hayamos puesto en común y todo el equipo esté de acuerdo, vamos a pensar ideas originales para desarrollar un sistema que cumpla con los requisitos. Realizamos una lluvia de ideas entre las personas del equipo.

Encuentra algunos enlaces de referencia en anayaeducacion.es

Lluvia de ideas

Encuentra enlaces a herramientas para organizar lluvias de ideas en anayaeducacion.es

51

Algunos ejemplos de ideas que se pueden desarrollar son:

1 Una aplicación en la que introduzcas el nombre de un objeto y te diga en qué cubo reciclarlo.

2 Un videojuego de preguntas y respuestas para que las personas que jueguen evalúen sus conocimientos sobre esta temática a la vez que se les da información.

3 Una aplicación con la que premiar a las personas que reciclen o reutilicen objetos.

4 Un sistema para que las personas puedan ofrecer objetos que ya no necesiten y a los que se les pueda dar una segunda vida.

Anotamos en una hoja o documento online todas las ideas que hayamos planteado.

Analizamos ahora cada una de las ideas planteadas anteriormente para elegir cuál de ellas llevar a cabo y la marcamos en nuestra hoja o documento online.

Es importante comprobar previamente los siguientes puntos:

· Si cumple los requisitos.

· Si se puede desarrollar con las herramientas que conocemos.

· Si somos capaces de diseñar y programar su funcionamiento.

PLANIFICACIÓN

En esta fase es momento de planificar detenidamente cómo va a ser el sistema. Anotamos en una nueva hoja o documento online la siguiente información:

· El programa que vamos a utilizar.

· Qué aspecto va a tener la interfaz (si existe).

· Cómo va a funcionar. Para ello, podemos crear un esquema, un diagrama de flujo o un algoritmo que represente su funcionamiento.

A continuación, se muestra el diagrama de flujo de un ejemplo de una aplicación que da puntos cada vez que se recicla, la persona que lo usa escanea un código QR que hay en los cubos de basura y aumenta sus puntos:

¿Pulsado botón de escaneo?

Escanear código QR

Algunas pautas interesantes a tener en cuenta cuando hacemos lluvias de ideas son:

• El objetivo inicial es proponer el mayor número de ideas posibles.

• Tener en cuenta que todas las ideas son válidas. Aunque no sirvan tal cual, unas ideas pueden ayudar a generar otras.

• Evitar criticar ideas de otras personas (recordemos que todas las ideas son válidas).

• Utilizar un cuaderno, una pizarra o alguna herramienta online que facilite el trabajo

• Si no se nos ocurre nada, buscar previamente en Internet proyectos similares que hayan llevado a cabo otras personas.

¿Pulsado botón consejo?

Mostrar consejo de reciclaje

¿Código QR válido?

Añadir 1 punto al contador

¿Tiene 5 puntos? Mostrar juego de recompensa Sí

52
ODS SITUACIÓN DE APRENDIZAJE
Sí Sí No
Inicio
No
Sí Fin

Programa seleccionado.

Boceto y anotaciones.

Algoritmo o diagrama de flujo.

Recuerda:

• Un algoritmo es un conjunto de instrucciones concretas y ordenadas que hay que seguir para llevar a cabo una tarea o resolver un problema.

• Un diagrama de flujo es una representación gráfica de un algoritmo, que se utiliza para plasmar el comportamiento de un programa y los procesos que lo conforman con mucha precisión y sin necesidad de usar elementos del lenguaje en el que se va a desarrollar el programa.

PROGRAMACIÓN

Cuando tengamos todo preparado, comenzamos con la programación de nuestra aplicación en Bitbloq Apps y el juego de recompensa con MakeCode Arcade. Para ello, seguimos estos pasos:

PASO 1

Añadimos todos los componentes necesarios y los nombramos:

· Un componente Lector de código de barras.

· Un componente Visor web con el enlace del juego de recompensa.

· Tres componentes Botón, uno para iniciar el lector de códigos y otro para activar el notificador con el consejo.

· Un componente Notificador para mostrar un consejo de reciclaje.

· Un componente Texto para mostrar los puntos que tiene.

PASO 2

Creamos, en la pestaña Variables y listas de la sección Bloques, una variable denominada Puntos con valor 0 y una lista con consejos de reciclaje.

53

PASO 3

Volvemos a la pestaña de la pantalla y programamos uno de los botones para que active el lector de códigos:

PASO 4

Además, programamos que si al escanear el QR el resultado del escaneo es 1, se sume un punto a la variable, compruebe si los puntos han llegado a 5, si es así cambie a la pantalla 2 para poder jugar con la recompensa, si no muestra los puntos que tiene.

Una vez ha llegado a 5 puntos y ha mostrado la pantalla 2, se reinicia el contador de puntos para que pueda escanear más productos y conseguir la recompensa.

PASO 5

Programamos el botón de los consejos para que al pulsarlo se active el notificador con uno de los consejos de la lista.

PASO 6

Por último, programamos el botón de la pantalla 2 para volver a la pantalla 1.

PROGRAMACIÓN DEL JUEGO

Ya tenemos la aplicación terminada, ahora creamos el juego de recompensa con MakeCode Arcade.

PASO 1

Establecemos el escenario y el personaje y lo programamos para que se mueva y choque contra las paredes del escenario. Además, iniciamos la puntuación a 0 y la cuenta atrás del tiempo de juego a 30 segundos.

ODS SITUACIÓN DE APRENDIZAJE 54

PASO 2

Programar que cada vez que se actualice el juego, por ejemplo, cada 1000 ms, aparezca un objeto de tipo Enemy en algún lugar del escenario de forma aleatoria. Este objeto es basura que tendrá que recoger el buceador, hacemos más programaciones iguales para crear varios tipos de basura.

PASO 3

Añadimos la programación para que cuando el personaje toque la basura, se sume un punto al contador y desaparezca la basura que ha tocado.

PASO 4

Para terminar programamos qué pasará cuando termine el tiempo que hemos programado, en este caso si la persona que está jugando ha conseguido 20 puntos o más gana, si no, pierde.

Conseguimos el enlace del juego para ponerlo en la aplicación. Para ello usamos la opción Compartir proyecto, arriba a la derecha.

Encuentra estos proyectos en anayaeducacion.es

Ya tenemos la aplicación y el juego de recompensa creados, ya solo nos falta crear el código QR, con el texto 1, que irá pegado en los cubos de basura para poder escanearlo cuando las personas reciclen.

Encuentra el enlace a una herramienta para crear códigos QR online en anayaeducacion.es.

55

TESTEO Y MEJORAS

Comprobamos que el funcionamiento de la aplicación y el juego es correcto y si cumple con todos los requisitos establecidos por la organización.

A continuación, pensamos mejoras entre todos los miembros del equipo, seleccionamos las que más nos gusten y las implementamos.

Anotamos y marcamos las seleccionadas en una nueva hoja o documento online.

PRESENTACIÓN

Finalizamos el proyecto creando una presentación para exponerlo ante el resto de la clase.

Utilizamos todo lo que hemos documentado, creado y experimentado (el análisis de la información, la búsqueda de ideas, la planificación, la programación inicial, los problemas o errores que hemos encontrado, las mejoras seleccionadas y el proyecto final).

Encuentra enlaces a herramientas para crear presentaciones online en anayaeducacion.es

La retroalimentación positiva es una herramienta muy efectiva que permite mejorar el trabajo.

Para dar un buen feedback o valoración:

• Intenta ser lo más objetivo posible. Céntrate en el trabajo y no en la persona.

• Menciona primero lo positivo. Intenta que haya un equilibrio entre las cosas buenas y las malas.

• Sé específico o específica y no generalices. Pon ejemplos concretos de las partes del trabajo a las que te refieres.

Algunas ideas de posibles mejoras para el proyecto de ejemplo son:

· Añadir un fondo en la aplicación.

· Incluir música de fondo u otros efectos de sonido.

· Programar que al escanear otro código QR de reutilización, se sumen más puntos.

· Diferenciar los códigos QR según el cubo en el que se escanean y que la programación te diga qué cubos has usado más.

· Crear más juegos de recompensa y que cada vez muestre uno diferente.

Mejoras

A la hora de recibir un feedback:

• No te lo tomes de forma personal. Solo están valorando tu trabajo, no a ti.

• Escucha o lee detenidamente todo lo que te dicen.

• Pregunta todas las dudas que tengas.

ODS SITUACIÓN DE APRENDIZAJE 56

REFLEXIÓN FINAL

A lo largo de este primer bloque, hemos aprendido sobre programación, desarrollo móvil e inteligencia artificial.

Gracias a ello ahora sabemos cómo hacer diagramas de flujo para diseñar antes de programar. Además hemos aprendido conceptos básicos de programación como los bucles, condicionales y variables y los hemos aplicado creando videojuegos con el editor MakeCode Arcade.

Después, hemos continuado nuestro aprendizaje en programación en un campo diferente, como es el desarrollo de aplicaciones móviles con las herramientas

Bitbloq Apps y App Inventor, creando nuestras propias aplicaciones.

También hemos visto conceptos de inteligencia artificial, como los tipos de agentes inteligentes, cómo es el aprendizaje automático y la responsabilidad social.

Por último, gracias a los conocimientos y destrezas adquiridos sobre programación y desarrollo móvil hemos podido crear una aplicación para animar a las personas a reciclar, incluyendo un juego como recompensa por hacerlo tan bien.

57

© GRUPO ANAYA, S.A., 2024 - C/ Valentín Beato, 21 - 28037 Madrid.

Reservados todos los derechos. El contenido de esta obra está protegido por la Ley, que establece penas de prisión y/o multas, además de las correspondientes indemnizaciones por daños y perjuicios, para quienes reprodujeren, plagiaren, distribuyeren o comunicaren públicamente, en todo o en parte, una obra literaria, artística o científica, o su transformación, interpretación o ejecución artística fijada en cualquier tipo de soporte o comunicada a través de cualquier medio, sin la preceptiva autorización.

Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.