Logo Passei Direto
Buscar
Em jogos digitais simples baseados em HTML e JavaScript, é comum vermos a utilização de estruturas organizadas para armazenar dados, bem como a aplicação de funções para modular o comportamento do jogo. Uma prática recorrente é definir perguntas e alternativas em um array de objetos e criar uma função que manipula o DOM para exibir os dados dinamicamente. Com o uso de getElementById e querySelector, esses dados podem ser distribuídos em elementos da interface. O uso de arrow functions pode tornar o código mais enxuto, principalmente quando se lida com comportamentos simples, como gerar números aleatórios ou retornar valores diretos. Durante o desenvolvimento de um jogo de perguntas e respostas com JavaScript, um estudante decidiu criar uma função para sortear uma pergunta do array perguntas. A ideia era gerar um número aleatório para selecionar uma posição válida dentro do array. Fonte: NOEL, A. A. - Programação Front End. Florianópolis, SC: Arqué, 2025. Com base no texto apresentado, considerando as boas práticas e os recursos da linguagem JavaScript moderna (ES6), assinale qual das alternativas abaixo representa a maneira mais apropriada e concisa de criar essa função: Alternativas Alternativa 1: const numeroAleatorio = () => Math.floor(Math.random() + perguntas.length); Alternativa 2: const numeroAleatorio = perguntas => { return Math.random() * perguntas.length; } Alternativa 3: const numeroAleatorio = perguntas => Math.floor(Math.random() * perguntas.length); Alternativa 4: function numeroAleatorio() { return perguntas.length / Math.random(); } Alternativa 5: function numeroAleatorio(perguntas) { return Math.floor(Math.random()) * perguntas.length;
User badge image
ELISA Santos

mês passado

Respostas

User badge image

Ed Verified user icon

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);`

Essa resposta te ajudou?

0
Dislike0

Ainda não achou a resposta?

  • Integrado com os principais modelos de IA do mercado
  • Respostas em segundos
  • IA treinada para estudantes brasileiros.
PasseIA logoEvolua sua forma de estudar

Cadastre-se ou realize login

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina