Aqui está uma função que talvez
você não conheça: random
Ela recebe dois parâmetros:
um limite inferior e um limite superior e
retorna um número aleatório
entre esses dois limites.
Então aqui essa variável 'number' (número)
terá um valor entre zero e um.
E então vamos desenhar esse número
na tela usando esta função "text".
Aqueles dois últimos parâmetros são
para as coordenadas "x" e "y" do texto
e usamos textSize e fill para escolher o
preenchimento e a cor do texto.
Então, se eu apertar recomeçar
algumas vezes, você pode ver
os números aleatórios sendo gerados.
E você vai ver que a precisão desses
números é de três casas decimais.
Aqui vai uma pergunta: E se eu quisesse
gerar apenas um número que é zero ou um?
Bem, podemos usar essa outra função
chamada 'round', que recebe um número que
pode ter quantas casas decimais quiser e o
arredonda para o inteiro mais próximo.
Então vou em frente e vou fazer uma nova
variável chamada 'integer' (inteiro)
e atribuir a ela o que a função
'round' retornar.
E podemos também desenhar este inteiro na
tela com a nossa função muito útil: text.
Então 'text', 'integer'... Vamos colocar
em talvez 160 e 350. Bom.
Então isso nos mostra que 'round' de
0,2314 arredonda para baixo, pra zero.
E se eu colocar algo como 4,6 isso seria
arredondado para 5.
Bacana.
Então se eu quisesse gerar aleatoriamente
0 ou 1, eu poderia pegar esse decimal
aleatório que estamos gerando que cai
entre 0 e 1 e colocá-lo na função 'round'.
Assim desse modo: eu vou pegar esse
'number' e colocá-lo aqui embaixo.
E agora você pode ver que quando geramos
um número que é menor que 0,5
- ele é arredondado pra zero.
E quando geramos um número que é maior ou
igual a 0,5 - ele é arredondado para um.
Talvez você comece a ver o início de algum
tipo de jogo de arremesso de moeda aqui
onde, se você tirar zero,
seu amigo te dá um real.
E, se você tirar um, seu amigo te dá
dez reais. Excelente jogo, certo?
Na verdade, vamos ilustrar
esse jogo de lançar moedas
com algumas moedas super realísticas que
por acaso parecem com elipses entediantes.
Assim: Eu vou desenhar uma elipse no meio
da nossa tela e isso vai ser nossa moeda.
Ela está cobrindo o texto, vamos mover
ele pra cima um pouco. Excelente.
E eu tenho essa ideia que se eu tirar zero
eu vou mostrar o lado roxo da moeda
então para fazer a moeda roxa, eu posso
apenas preencher com um pouco de roxo.
E se eu tirar um, eu vou mostrar
o lado amarelo da moeda.
Então vai ser uma moeda com
lados roxo e amarelo.
E, por sorte, com nosso conhecimento
de declarações 'if', isso é super fácil.
Então podemos dizer: se 'integer'
é igual a zero, - lembre-se que usamos
três sinais de igual para checar igualdade
- então preenchemos a elipse de roxo.
E então se 'integer' é igual a um, nós
temos um função 'fill' diferente
e vamos fazer essa aqui de amarelo.
Excelente. E funciona!
Mas vamos pensar sobre isso. 'Integer'
aqui sempre será um ou zero, certo?
Nós programamos desse modo.
Então isso significa que
ou esta condição vai ser verdade
ou esta condição aqui vai ser verdade.
Sempre.
Cobrimos cada caso possível aqui, o que
significa que podemos começar a pensar
sobre nossa tomada de decisão
de um jeito diferente.
Isso é se 'integer' é igual a zero,
colorimos de roxo - senão, de amarelo.
Então você vê como não precisamos dizer
sobre 'integer' ser um no segundo caso?
Tudo que temos que dizer é se 'integer' é
zero, faça isso; senão, faça aquilo.
E, em programação, dizemos
"senão" como 'else'.
Então veja isso: eu vou substituir a
segunda condição 'if' com a palavra 'else'
E o que isso significa é que se o que está
dentro destes parênteses for verdade
então rode o código nestas chaves.
Senão, rode o código nestas chaves.
E algumas vezes vamos até mesmo colocar o
else na mesma linha da chave final do if
apenas para nos lembrar que esses dois
blocos de código são muito conectados.
Você não pode ter um bloco 'else' a menos
que você tenha um bloco 'if' logo antes.
Entendeu?
E isso também vai te ajudar a lembrar
a não colocar algo entre esses dois blocos
como 'var y igual a 0' e isso apenas
quebraria tudo! Então não faça isso.
Então agora que sabemos sobre 'if-else',
o que é muito bom quando estamos
decidindo entre duas
coisas possíveis a fazer.
Mas e se tivéssemos mais?
E se eu gerasse um inteiro entre zero e
dois e então eu teria três possibilidades:
zero, um ou dois? E então?
Continua...
Legendado por [Alberto Oliveira].
Revisado por [Fernando dos Reis].