O código que está escrito e a descrição do item não tem nada haver. Acho que a questão está errada
O código que está escrito e a descrição do item não tem nada haver. Acho que a questão está errada
Oi Luiz, não ficou claro. Você pode explicar melhor o que estaria errado para poder te ajudar?
Desculpa ser tão suncito, achei que ao clicar tirar uma dúvida seria referente a aula/atividade no qual o link foi clicado.
Mas vamos lá. Aula 6, atividade 5
O enunciado diz:
Selecione todas as opções abaixo que são uma instrução do Python capaz de gerar um número inteiro aleatório entre 0 e 100 (incluindo 100, ou seja [0,100]):
o último item diz:
random.randrange(1,100)
E o comentário do item é:
Correto! A função random.randrange() quando é passada como apenas um parâmetro assume que o intervalo desejado é de zero até o número passado, sem incluí-lo. Ou seja, neste caso de zero até 100 (exclusivo), que é o que desejamos!
Então vamos por partes: randrange(1,100) gera 1 a 99 e que já torna o item falso e apesar disso está marcado como correto o comentário do item informa que a função foi passada apenas com um parâmetro, algo que não aconteceu, e no final do comentário ainda coloca de zero até 100 (exclusivo), o que torna o 100 fora do range desejado pelo enunciado.
Oi Luiz, você tem razão. Essa alternativa está errada. Acabamos arrumar o exercício. Obrigada pelo feedback e bons estudos!
A opção com o int int(random.random() *100) está como correta mas ela não gera o numero 100
Oi Pedro, esta alternativa está correta já que a função int() vai arredondar o valor da multiplicação random.random() * 100.
Como random.random() gera um número dentro do intervalo [0, 1), pode gerar um decimal muito próximo de 1 que multiplicado por 100 resulta em um número bem próximo de 100 - e que a função int() vai aproximar para 100.
Por exemplo, execute esta linha de código e veja que resulta em 100:
int(0.99999999999999999 * 100)
espero ter ajudado e bons estudos!