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
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.
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