Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

"O problema do zero"

No vídeo o instrutor fala do "problema do zero" e resolve com um "if". Não seria mais correto usar ...

Math.round(Math.random()*9) + 1

em vez de

Math.round(Math.random()*10)

?

No código fornecido entendo que há um erro (matemático) ao multiplicar "random" por 10 e usar round, é isso que gera números de 0 a 10, pois algo como 0.001 vira 0 após multiplicar por 10 e aplicar "round" e algo como 0.98 vira 10. Se multiplicar por 9 e aplicar round teremos números de 0 a 9 e, somando 1, de 1 a dez, não é isso? Ou a ideia do "if" para evitar o zero foi didática?

Grato.

1 resposta
solução!

Oi Ian,

Foi mais por didatica mesmo, pra mostrar um exemplo do if dentro do cenário do problema.

Mas realmente dá para resolver de várias maneiras distintas, inclusive da maneira que você citou, que fica até melhor pelo código ficar menor, já que não será necessário adicionar o if.

Bons estudos!