• Matéria: Informática
  • Autor: Anônimo
  • Perguntado 3 anos atrás

Alguém pode me ajudar nesta questão de javascript? Desde já agradeço!

Considerando que a função random() retorna um número real aleatório entre 0 e 1 e que a funcão floor(x) retorna o número x arredondado para baixo. Quais seriam os possíveis resultados ao executar o seguinte comando: floor(random() * (10 - 1)) + 1;

A: O resultado pode ser qualquer um dos seguintes números: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
B: O resultado pode ser qualquer um dos seguintes números: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
C: O resultado pode ser qualquer um dos seguintes números: 1, 2, 3, 4, 5, 6, 7, 8, 9
D: O resultado pode ser qualquer um dos seguintes números: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

Respostas

respondido por: kevin0303
6

Resposta:

letra C, O resultado pode ser qualquer um dos seguintes números: 1, 2, 3, 4, 5, 6, 7, 8, 9

Explicação:

a função random() retorna um número entre 0 e 1, mas não inclue o 1, então o floor vai arredondar números de 0 até 8,9. Já que a função random vai gerar números de 0 até 0,9 para ser multiplicado por 9, fazendo assim o floor gerar números de 0 até 8, já que ele arredonda para baixo. Mas já que é somado 1 no final. No final fica números de 1 até 9.


mechatronistone: Ótima explicação.
respondido por: macchina
0

A questão envolve conhecimentos sobre os possíveis valores que uma função pode retornar. Dadas as condições do problema, pode-se concluir que a alternativa correta é a C.

Funções em computação

De acordo com a documentação, a função random() retorna um número decimal entre 0 e 1, porém enquanto o 0 é um valor possível, o 1 não é um valor possível. Matematicamente, o intervalo é fechado em 0 e aberto no 1. E contempla todos os número decimais nesse intervalo.

Assim, o resultado da multiplicação de random()*(10-1) será sempre um número entre 0 e 9, porém sem incluir o 9. O intervalo é fechado em 0 e aberto em 9. E contempla todos os número decimais nesse intervalo.

Aplicando-se a função floor(x) sobre o resultado anterior, concluímos que ela sempre retornará um valor entre 0 e 8, já que 0 é o menor valor inteiro da operação anterior e 8 é o maior valor inteiro da mesma operação. Agora, o intervalo contempla somente os número inteiros.

Ao se somar 1, agora o menor valor passa a ser 1 e o maior o 9, contemplando todo os números inteiros desse intervalo (incluindo 1 e 9).

Analisando as alternativas, temos:

A alternativa A está incorreta, pois o 10 não está no intervalo de resultados possíveis.

A alternativa B está incorreta, pois o 0 não está no intervalo de resultados possíveis

A alternativa C está correta, pois todos os números estão entre os resultados possíveis.

A alternativa D está incorreta, pois 0 e 10 não estão entre os resultados possíveis.

Você pode aprender mais sobre programação em:

- https://brainly.com.br/tarefa/52559271

#SPJ2

Perguntas similares