-
Aquí hay una función que probablemente no conozcas: "random".
-
Necesita dos parámetros: un límite inferior y un límite superior y devuelve un número aleatorio entre esos dos límites.
-
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".
-
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.
-
Entonces si presiono el botón "Restart" un par de veces puedes ver que se generan números aleatorios.
-
Y puedes ver que la precisión de esos números es de tres decimales.
-
Y aquí tengo una pregunta: ¿qué pasa si sólo quiero generar cero o uno?
-
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.
-
Voy a seguir adelante y hacer una nueva variable llamada "integer"
-
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".
-
Entonces "text(integer..." lo pondremos tal vez en 160 y 350. Bien. Así que nos muestra 0.2314 redondeado a cero.
-
Y si pongo algo como 4.6 lo redondea en 5. Listo.
-
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".
-
Justo así: Agarro este "number" y lo pongo aquí.
-
Ahora puedes ver que cuando se genera un número que es menor que 0.5 lo redondea a 0.
-
Y cuando se genera un número igual o mayor que 0.5 lo redondea a 1.
-
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.
-
Y si sacas un 1 tu amigo te da diez dólares. Gran juego, ¿cierto?
-
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.
-
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.
-
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.
-
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.
-
Y por suerte, con nuestro impresionante conocimiento de las sentencias "if" esto es super fácil.
-
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.
-
Y luego "if integer" es igual a uno, tenemos una función "fill" diferente y rellenaremos con amarillo.
-
Genial. ¡Funciona! ¡Yu ju! Pero pensemos en esto por un segundo. "Integer" sólo será 0 o 1, ¿cierto?, así la diseñamos.
-
Entonces eso significa que o esta sentencia será verdadera,
-
o ésta será verdadera.
-
Siempre.
-
Aquí hemos cubierto todas las posibilidades, lo que significa que podemos empezar a pensar sobre nuestra decisión haciendo algo diferente.
-
Es decir, si "integer" es igual a cero, rellenaremos de morado, de otra manera, rellenaremos de amarillo.
-
Así que ¿viste que no tuvimos que decir nada de que si "integer" vale 1 en este segundo caso?
-
Todo lo que tenemos que decir es si "integer" es igual a cero, haz esto; de otra manera, haz esto otro.
-
Y la manera de decir "de otra manera" en programación es "else".
-
Así que observa esto: voy a reemplazar esta segunda condición "if" con la palabra "else"
-
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.
-
De otra manera, ejecuta el código que está en estas llaves.
-
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.
-
No puedes tener un bloque "else" a menos que tengas un bloque "if". ¿Entiendes?
-
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.
-
Genial. Ahora sabemos sobre "if-else" que es muy útil cuando estamos decidiendo entre dos posibles cosas que hacer.
-
Pero ¿qué pasa si tenemos más?
-
¿Qué pasa si genero un entero entre cero y dos y tengo tres posibilidades: cero, uno y dos? ¿Qué hago entonces?
-
¡Tan tan tan! Continuará...