Ed
mês passado
Vamos analisar as alternativas para criar uma função que sorteia um índice válido dentro do array perguntas, usando JavaScript moderno (ES6): - O objetivo é gerar um número inteiro aleatório entre 0 e perguntas.length - 1. - Para isso, usamos Math.random() que gera um número entre 0 (inclusive) e 1 (exclusivo). - Multiplicamos pelo tamanho do array para ajustar o intervalo. - Usamos Math.floor() para arredondar para baixo e obter um índice inteiro válido. Agora, analisando as alternativas: 1) `const numeroAleatorio = () => Math.floor(Math.random() + perguntas.length);` - Aqui está somando Math.random() + perguntas.length, o que vai gerar um número maior que perguntas.length, não correto. 2) `const numeroAleatorio = perguntas => { return Math.random() * perguntas.length; }` - Retorna um número decimal, não inteiro, falta o Math.floor(). 3) `const numeroAleatorio = perguntas => Math.floor(Math.random() * perguntas.length);` - Correto: gera um número inteiro entre 0 e perguntas.length - 1. 4) `function numeroAleatorio() { return perguntas.length / Math.random(); }` - Divisão incorreta, pode gerar números muito grandes, não é adequado. 5) `function numeroAleatorio(perguntas) { return Math.floor(Math.random()) * perguntas.length; }` - Math.floor(Math.random()) sempre retorna 0, pois Math.random() < 1, resultado sempre 0. Portanto, a alternativa correta é a 3. Resposta: Alternativa 3: `const numeroAleatorio = perguntas => Math.floor(Math.random() * perguntas.length);`
Cadastre-se ou realize login