WEBVTT 00:00:01.837 --> 00:00:04.384 Aquí hay una función que probablemente no conozcas: "random". 00:00:04.384 --> 00:00:10.587 Necesita dos parámetros: un límite inferior y un límite superior y devuelve un número aleatorio entre esos dos límites. 00:00:10.587 --> 00:00:18.582 Así que esta variable "number" tendrá un valor entre cero y uno. Entonces vamos a dibujar esa variable "number" en la pantalla usando esta función "text". 00:00:18.582 --> 00:00:26.048 Esos dos parámetros finales son para las coordenadas "x" y "y" del texto y usaremos "textSize" y "fill" para establecer el tamaño y el color del texto. 00:00:26.048 --> 00:00:30.585 Entonces si presiono el botón "Restart" un par de veces puedes ver que se generan números aleatorios. 00:00:30.585 --> 00:00:34.162 Y puedes ver que la precisión de esos números es de tres decimales. 00:00:34.162 --> 00:00:38.685 Y aquí tengo una pregunta: ¿qué pasa si sólo quiero generar cero o uno? 00:00:38.685 --> 00:00:48.393 Bueno, podemos usar esta otra función llamada "round", esta función toma un número que puede tener todos los decimales que quieras y lo redondea al entero más cercano. 00:00:48.393 --> 00:00:52.158 Voy a seguir adelante y hacer una nueva variable llamada "integer" 00:00:52.158 --> 00:00:58.713 y le voy a asignar el valor que "round" nos regrese. Y también podemos dibujar esta variable "integer" en la pantalla con nuestra práctica función "text". 00:00:58.713 --> 00:01:12.395 Entonces "text(integer..." lo pondremos tal vez en 160 y 350. Bien. Así que nos muestra 0.2314 redondeado a cero. 00:01:12.395 --> 00:01:18.307 Y si pongo algo como 4.6 lo redondea en 5. Listo. 00:01:18.307 --> 00:01:30.866 Entonces, si quiero generar un 0 o un 1 aleatoriamente, puedo tomar este número decimal que generamos con "random" entre 0 y 1 y pegarlo directo en esta función "round". 00:01:30.866 --> 00:01:36.271 Justo así: Agarro este "number" y lo pongo aquí. 00:01:36.271 --> 00:01:41.543 Ahora puedes ver que cuando se genera un número que es menor que 0.5 lo redondea a 0. 00:01:41.543 --> 00:01:47.597 Y cuando se genera un número igual o mayor que 0.5 lo redondea a 1. 00:01:47.597 --> 00:01:55.079 Y tal vez puedes ver el principio de una especie de juego cara o cruz, donde si tú sacas un cero tu amigo te da un dólar. 00:01:55.081 --> 00:01:58.824 Y si sacas un 1 tu amigo te da diez dólares. Gran juego, ¿cierto? 00:01:58.824 --> 00:02:06.608 De hecho, vamos a seguir adelante e ilustraremos este juego de lanzamiento de monedas con unas monedas súper realistas que parecían elipses aburridas. 00:02:06.608 --> 00:02:17.654 Justo así: voy a dibujar una elipse en medio de nuestra pantalla que va a ser nuestra moneda. ¡Oh!, está cubriendo el texto, vamos a deslizar esto un poco hacia arriba. Genial. 00:02:17.654 --> 00:02:28.589 Y tengo esta idea: si saco un cero, voy a mostrar el lado morado de la moneda, así que para hacer la moneda morada sólo tengo que rellenar con morado. 00:02:28.589 --> 00:02:35.888 Y si saco un 1, voy a mostrar el... mmm... lado amarillo de la moneda. Esta será una moneda con un lado morado y uno amarillo. 00:02:35.888 --> 00:02:39.093 Y por suerte, con nuestro impresionante conocimiento de las sentencias "if" esto es super fácil. 00:02:39.093 --> 00:02:53.631 Así que podemos decir "if integer" es igual a cero, recuerden que usamos tres signos de igual para comprobar la igualdad, luego rellenaremos la elipse con morado. 00:02:53.631 --> 00:03:06.302 Y luego "if integer" es igual a uno, tenemos una función "fill" diferente y rellenaremos con amarillo. 00:03:06.302 --> 00:03:16.108 Genial. ¡Funciona! ¡Yu ju! Pero pensemos en esto por un segundo. "Integer" sólo será 0 o 1, ¿cierto?, así la diseñamos. 00:03:16.108 --> 00:03:19.042 Entonces eso significa que o esta sentencia será verdadera, 00:03:19.042 --> 00:03:21.460 o ésta será verdadera. 00:03:21.460 --> 00:03:22.554 Siempre. 00:03:22.554 --> 00:03:27.650 Aquí hemos cubierto todas las posibilidades, lo que significa que podemos empezar a pensar sobre nuestra decisión haciendo algo diferente. 00:03:27.650 --> 00:03:35.928 Es decir, si "integer" es igual a cero, rellenaremos de morado, de otra manera, rellenaremos de amarillo. 00:03:35.928 --> 00:03:40.789 Así que ¿viste que no tuvimos que decir nada de que si "integer" vale 1 en este segundo caso? 00:03:40.789 --> 00:03:45.255 Todo lo que tenemos que decir es si "integer" es igual a cero, haz esto; de otra manera, haz esto otro. 00:03:45.255 --> 00:03:48.263 Y la manera de decir "de otra manera" en programación es "else". 00:03:48.263 --> 00:03:53.521 Así que observa esto: voy a reemplazar esta segunda condición "if" con la palabra "else" 00:03:53.521 --> 00:03:59.872 Y lo que esto significa es que si lo que está entre paréntesis es verdadero, entonces ejecuta el código que está en estas llaves. 00:03:59.872 --> 00:04:03.221 De otra manera, ejecuta el código que está en estas llaves. 00:04:03.237 --> 00:04:10.490 Y algunas veces ponemos la palabra "else" en la misma línea que esta llave de cierre, sólo para recordarnos a nosotros mismos que estos dos bloques de código están muy conectados. 00:04:10.490 --> 00:04:15.551 No puedes tener un bloque "else" a menos que tengas un bloque "if". ¿Entiendes? 00:04:15.551 --> 00:04:27.071 Y también te ayudará a recordar que no puedes poner nada entre estos dos bloques como "var y = 0", ¡eso echaría todo a perder! Así que no lo hagas. 00:04:27.071 --> 00:04:32.900 Genial. Ahora sabemos sobre "if-else" que es muy útil cuando estamos decidiendo entre dos posibles cosas que hacer. 00:04:32.900 --> 00:04:34.738 Pero ¿qué pasa si tenemos más? 00:04:34.738 --> 00:04:41.028 ¿Qué pasa si genero un entero entre cero y dos y tengo tres posibilidades: cero, uno y dos? ¿Qué hago entonces? 00:04:41.029 --> 00:04:44.459 ¡Tan tan tan! Continuará...