Fiquei com dúvida se para qualquer número que eu colocar na variavel numeroMaximo vai servir para gerar todos os números, por exemplo, se colocar 77 será possível aparecer até o 77 no valor do numeroSecreto?
ATÉ 50% OFF
TÁ ACABANDO!
0 dias
0 horas
0 min
0 seg
Fiquei com dúvida se para qualquer número que eu colocar na variavel numeroMaximo vai servir para gerar todos os números, por exemplo, se colocar 77 será possível aparecer até o 77 no valor do numeroSecreto?
Boa noite.
Sim. É isso que vai acontecer. Conforme a página de documentação na Mozilla, qualquer valor que você definir como máximo será o teto exclusivo, isto é, terá como valor máximo o inteiro imediatamente anterior com alguns 99 nos decimais.
Math.random() gera um pseudo aleatório que vai de 0.0 a 0.999999999999. Então é só multiplicar este valor máximo da função pelo número que você quiser que vai encontrar o valor m
Olá,
Fiquei com uma dúvida durante o vídeo sobre a linha 2. É necessário ainda ter o "+ 1", mesmo após criar a variável "numeroMaximo"? Antes eu tinha entendido que a lógica de inserir o "+ 1" seria por causa do fator multiplicador, mas como definimos um número máximo, por que ainda devemos somar + 1?
Eduardo, teria como copiar o código e colocar aqui para acompanharmos. Faz um tempinho que assisti o vídeo, então não estou muito bem lembrado dessa linha em específico.
Porém, até onde me lembro, a questão do +1 é em função do jeito que foi feito o código, pegando somente o inteiro do número. Então, vamos colocar o número 5 como exemplo. Como o math.random() vai gerar um número entre 0.0 e 0.999999 (tem mais 9, mas vamos simular como tendo somente 6), se multiplicarmos estes valores por 5, teremos um valor entre 0.0 e 4.99995. Quando tiramos somente a parte inteira, ficamos com um valor entre 0 e 4. Se eu desejar obter um valor entre 1 e 5, as possibilidades anteriores não vão me servir. Não tem o 5 que preciso, e tem o 0 que é desnecessário para mim. Por isso soma-se 1 à expressão.
Como alternativa, ao invés de usar a função para obter o inteiro, poderia usar a função para arredondar para cima (Floor). Com isso 0.1 seria arredondado para 1, assim como 4.9995 seria arredondado para 5. Essa é uma das muitas possibilidades.
Espero ter ajudado.