1 00:00:01,717 --> 00:00:04,384 Aqui está uma função que talvez você não conheça: random 2 00:00:04,384 --> 00:00:05,676 Ela recebe dois parâmetros: 3 00:00:05,676 --> 00:00:08,911 um limite inferior e um limite superior e retorna um número aleatório 4 00:00:08,911 --> 00:00:10,486 entre esses dois limites. 5 00:00:10,486 --> 00:00:14,463 Então aqui essa variável 'number' (número) terá um valor entre zero e um. 6 00:00:14,463 --> 00:00:18,254 E então vamos desenhar esse número na tela usando esta função "text". 7 00:00:18,254 --> 00:00:22,094 Aqueles dois últimos parâmetros são para as coordenadas "x" e "y" do texto 8 00:00:22,094 --> 00:00:25,658 e usamos textSize e fill para escolher o preenchimento e a cor do texto. 9 00:00:25,658 --> 00:00:28,462 Então, se eu apertar recomeçar algumas vezes, você pode ver 10 00:00:28,462 --> 00:00:30,226 os números aleatórios sendo gerados. 11 00:00:30,226 --> 00:00:33,702 E você vai ver que a precisão desses números é de três casas decimais. 12 00:00:33,702 --> 00:00:38,685 Aqui vai uma pergunta: E se eu quisesse gerar apenas um número que é zero ou um? 13 00:00:38,685 --> 00:00:43,796 Bem, podemos usar essa outra função chamada 'round', que recebe um número que 14 00:00:43,796 --> 00:00:47,997 pode ter quantas casas decimais quiser e o arredonda para o inteiro mais próximo. 15 00:00:47,997 --> 00:00:52,058 Então vou em frente e vou fazer uma nova variável chamada 'integer' (inteiro) 16 00:00:52,058 --> 00:00:54,057 e atribuir a ela o que a função 'round' retornar. 17 00:00:54,057 --> 00:00:58,149 E podemos também desenhar este inteiro na tela com a nossa função muito útil: text. 18 00:00:58,149 --> 00:01:06,347 Então 'text', 'integer'... Vamos colocar em talvez 160 e 350. Bom. 19 00:01:06,347 --> 00:01:12,425 Então isso nos mostra que 'round' de 0,2314 arredonda para baixo, pra zero. 20 00:01:12,425 --> 00:01:17,175 E se eu colocar algo como 4,6 isso seria arredondado para 5. 21 00:01:17,175 --> 00:01:18,215 Bacana. 22 00:01:18,215 --> 00:01:22,307 Então se eu quisesse gerar aleatoriamente 0 ou 1, eu poderia pegar esse decimal 23 00:01:22,307 --> 00:01:30,616 aleatório que estamos gerando que cai entre 0 e 1 e colocá-lo na função 'round'. 24 00:01:30,616 --> 00:01:36,271 Assim desse modo: eu vou pegar esse 'number' e colocá-lo aqui embaixo. 25 00:01:36,271 --> 00:01:39,883 E agora você pode ver que quando geramos um número que é menor que 0,5 26 00:01:39,883 --> 00:01:41,274 - ele é arredondado pra zero. 27 00:01:41,274 --> 00:01:46,505 E quando geramos um número que é maior ou igual a 0,5 - ele é arredondado para um. 28 00:01:47,615 --> 00:01:51,631 Talvez você comece a ver o início de algum tipo de jogo de arremesso de moeda aqui 29 00:01:51,631 --> 00:01:55,177 onde, se você tirar zero, seu amigo te dá um real. 30 00:01:55,177 --> 00:01:58,824 E, se você tirar um, seu amigo te dá dez reais. Excelente jogo, certo? 31 00:01:58,824 --> 00:02:01,518 Na verdade, vamos ilustrar esse jogo de lançar moedas 32 00:02:01,518 --> 00:02:06,351 com algumas moedas super realísticas que por acaso parecem com elipses entediantes. 33 00:02:06,351 --> 00:02:12,353 Assim: Eu vou desenhar uma elipse no meio da nossa tela e isso vai ser nossa moeda. 34 00:02:12,593 --> 00:02:17,325 Ela está cobrindo o texto, vamos mover ele pra cima um pouco. Excelente. 35 00:02:17,325 --> 00:02:23,251 E eu tenho essa ideia que se eu tirar zero eu vou mostrar o lado roxo da moeda 36 00:02:23,251 --> 00:02:28,641 então para fazer a moeda roxa, eu posso apenas preencher com um pouco de roxo. 37 00:02:28,641 --> 00:02:33,211 E se eu tirar um, eu vou mostrar o lado amarelo da moeda. 38 00:02:33,211 --> 00:02:35,543 Então vai ser uma moeda com lados roxo e amarelo. 39 00:02:35,543 --> 00:02:39,067 E, por sorte, com nosso conhecimento de declarações 'if', isso é super fácil. 40 00:02:39,067 --> 00:02:45,775 Então podemos dizer: se 'integer' é igual a zero, - lembre-se que usamos 41 00:02:45,775 --> 00:02:53,747 três sinais de igual para checar igualdade - então preenchemos a elipse de roxo. 42 00:02:53,747 --> 00:03:01,129 E então se 'integer' é igual a um, nós temos um função 'fill' diferente 43 00:03:01,129 --> 00:03:04,252 e vamos fazer essa aqui de amarelo. 44 00:03:06,142 --> 00:03:09,895 Excelente. E funciona! 45 00:03:09,895 --> 00:03:14,578 Mas vamos pensar sobre isso. 'Integer' aqui sempre será um ou zero, certo? 46 00:03:14,578 --> 00:03:16,282 Nós programamos desse modo. 47 00:03:16,282 --> 00:03:19,265 Então isso significa que ou esta condição vai ser verdade 48 00:03:19,265 --> 00:03:22,069 ou esta condição aqui vai ser verdade. Sempre. 49 00:03:22,069 --> 00:03:25,730 Cobrimos cada caso possível aqui, o que significa que podemos começar a pensar 50 00:03:25,730 --> 00:03:28,163 sobre nossa tomada de decisão de um jeito diferente. 51 00:03:28,163 --> 00:03:35,388 Isso é se 'integer' é igual a zero, colorimos de roxo - senão, de amarelo. 52 00:03:35,388 --> 00:03:40,833 Então você vê como não precisamos dizer sobre 'integer' ser um no segundo caso? 53 00:03:40,833 --> 00:03:45,099 Tudo que temos que dizer é se 'integer' é zero, faça isso; senão, faça aquilo. 54 00:03:45,099 --> 00:03:48,165 E, em programação, dizemos "senão" como 'else'. 55 00:03:48,165 --> 00:03:53,093 Então veja isso: eu vou substituir a segunda condição 'if' com a palavra 'else' 56 00:03:53,093 --> 00:03:57,661 E o que isso significa é que se o que está dentro destes parênteses for verdade 57 00:03:57,661 --> 00:04:02,512 então rode o código nestas chaves. Senão, rode o código nestas chaves. 58 00:04:02,832 --> 00:04:06,681 E algumas vezes vamos até mesmo colocar o else na mesma linha da chave final do if 59 00:04:06,681 --> 00:04:10,520 apenas para nos lembrar que esses dois blocos de código são muito conectados. 60 00:04:10,520 --> 00:04:14,377 Você não pode ter um bloco 'else' a menos que você tenha um bloco 'if' logo antes. 61 00:04:14,377 --> 00:04:15,524 Entendeu? 62 00:04:15,524 --> 00:04:20,296 E isso também vai te ajudar a lembrar a não colocar algo entre esses dois blocos 63 00:04:20,296 --> 00:04:26,738 como 'var y igual a 0' e isso apenas quebraria tudo! Então não faça isso. 64 00:04:26,738 --> 00:04:30,650 Então agora que sabemos sobre 'if-else', o que é muito bom quando estamos 65 00:04:30,650 --> 00:04:32,798 decidindo entre duas coisas possíveis a fazer. 66 00:04:32,798 --> 00:04:34,268 Mas e se tivéssemos mais? 67 00:04:34,268 --> 00:04:38,556 E se eu gerasse um inteiro entre zero e dois e então eu teria três possibilidades: 68 00:04:38,556 --> 00:04:40,856 zero, um ou dois? E então? 69 00:04:41,810 --> 00:04:42,900 Continua... 70 00:04:43,015 --> 00:04:45,000 Legendado por [Alberto Oliveira]. Revisado por [Fernando dos Reis].