Olá, Antônia! Tudo bem?
A diferença que você notou nos dois códigos está na ordem em que a soma é aplicada em relação à função parseInt()
. Vamos analisar cada um deles:
Código da aula:
let numeroSecreto = parseInt(Math.random() * 100 + 1);
Neste caso, a soma de 1 é feita antes da conversão para inteiro. Isso significa que o resultado da multiplicação Math.random() * 100
(que gera um número entre 0 e 99.999...) tem 1 adicionado a ele antes de ser convertido para um número inteiro. Assim, o número final será entre 1 e 100.
Código da questão:
let numeroAleatorio1a3 = parseInt(Math.random() * 3) + 1;
Aqui, o número gerado por Math.random() * 3
é convertido para um inteiro primeiro, resultando em um número entre 0 e 2. Depois disso, 1 é adicionado, o que ajusta o intervalo final para entre 1 e 3.
A diferença na ordem das operações afeta o intervalo dos números gerados. No primeiro exemplo, a soma é feita antes da conversão, enquanto no segundo, a soma é feita depois. Isso é importante para garantir que o número gerado esteja no intervalo desejado.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.