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

há 2 meses

Respostas

User badge image

Ed Verified user icon

há 2 meses

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