Crea una carpeta en tu Drive llamada EVALUACION3 dentro de la carpeta TIC2.
En esta entrada aprenderemos a crear una matriz de datos. Como sabes, las matrices pueden tener un cierto número de filas y un cierto número de columnas.
1. Empezaremos creando una matriz sencilla con una sola fila y 2 columnas, que por tanto contendrá solo 2 elementos.
Guarda este ejercicio con el nombre de matriz1.
2. Crea ahora una matriz de una fila y 5 columnas para almacenar marcas de coches. Introduce las marcas de 5 coches en el programa y haz que las muestre por la pantalla igual que en el ejemplo anterior. Ponle por nombre COCHES.
3. Otra forma de acceder a los valores de una matriz es utilizando el bucle for(). Modifica el programa anterior para que se muestren los resultados por la pantalla pero usando este bucle. Ponle por nombre COCHESFOR.
4. Modifica el programa MATRIZ1 para que se muestren los resultados por la pantalla pero usando el bucle FOR. Ponle por nombre MATRIZ1FOR.
5. Modifica el programa MATRIZ1 de modo que en lugar introducir los valores en la matriz utilizando las líneas 5 y 6, se haga mediante un bucle for(). Los valores además van a ser números enteros aleatorios que oscilarán entre 0 y 100. Tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces.
Precaución 1: Para convertir los números aleatorios (que son números reales, es decir de tipo FLOAT) a un número entero deberás escribir INT(RANDOM(LOW,HIGH), donde LOW y HIGH son el valor mínimo y máximo que puede tener el número aleatorio.
Precaución 2: Debes distinguir entre la creación de los números que se han de guardar en la matriz (solo se hace una vez) y la escritura en la pantalla de esos números (aunque se haga más de una vez no pasa nada porque se escribe siempre lo mismo). Guarda este ejercicio con el nombre de matriz3.
6. Crea un programa nuevo donde declares dos matrices de números enteros (int). Cada una de ellas tendrá una fila y 100 columnas. Cada una de esas variables va a almacenar las coordenadas x e y de unas circunferencias que vas a crear en una ventana de tamaño 800x600. Las coordenadas serán generadas de forma aleatoria en un rango que irá de cero al ancho de la pantalla para la coordenada x y con un rango que irá de cero al alto de la pantalla para la coordenada y. La función que genera números aleatorios es RANDOM(LOW,HIGH) y devuelve un número real. Para convertir el resultado a un número entero deberás escribir INT(RANDOM(LOW,HIGH), donde LOW y HIGH son el valor mínimo y máximo que puede tener el número aleatorio. Representa además esas circunferencias de tamaño 30. Guarda el programa con el nombre de matriz4. Tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces.
7. El siguiente programa hará que partiendo del programa anterior (matriz4), las circunferencias asciendan como si fueran burbujas. Date cuenta que ascenderán por tanto la coordenada x no se modificará, tan solo la coordenada y se irá reduciendo para cada una de las circunferencias. Guarda el programa con el nombre de matriz5. Tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces.
8. El siguiente programa añadirá al anterior que cuando las "burbujas" desaparezcan por arriba (valor de la coordenada y menor que cero), entonces vuelvan a aparecer por abajo. Guarda el programa con el nombre de matriz6. Tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces.
9. Por último vas a poner un color diferente a cada una de las burbujas. Date cuenta de que cada burbuja debe almacenar un valor de la coordenada x, otro de la y y además el color. Guarda el programa con el nombre matriz7. Tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces.
10. Actividades adicionales para hacer en casa (tienes que poner comentarios en cada línea nueva de código que crees, explicando lo que haces):
a) partiendo del apartado 6, cuando tienes creadas las burbujas de diferentes tamaños, intenta que se muevan en direcciones diferentes. Para que se mueva un objeto en una dirección tienes que utilizar una variable llamada por ejemplo velocidadx, que modifique la coordenada x de esa variable y a la vez otra variable, por ejemplo velocidady que modifique la coordenada y de esa variable:
coordenadax=coordenadax+velocidadx;
coordenaday=coordenaday+velocidady;
Si lo tienes claro, ten en cuenta que cada burbuja tiene su propia coordenadax y su propia coordenaday, por lo que tendrás que crear otra matriz para almacenar las coordenadas x, y otra matriz para almacenar las coordenadas y.
Ten en cuenta además que las velocidades deberán ser aleatorias para que todas las burbujas no vayan en la misma dirección.
b) ¿desaparecen las burbujas por los bordes? Conviene entonces poner una condición para que si la coordenada x es menor que 0 o si la coordenada x es mayor que al ancho de la pantalla, entonces cambiar el signo de velocidadx, para que cambie de dirección. De forma análoga con la coordenaday.
Para ver cómo poner la condición "o" en processing (ALT GR+1), puedes consultar esta dirección:
https://processing.org/reference/logicalOR.html
c) Por último consigue que cada burbuja tenga un color diferente.
No hay comentarios:
Publicar un comentario