Oii Matheus, como você está?
Ficou excelente a ideia de adicionar um laço de repetição. Mandou super bem!
Apenas uma consideração: também é necessário colocar dentro do laço de repetição os testes de maior
e menor
, pois, da forma como está, após repetir as tentativas não é feito novamente o cálculo para saber se aquele número digitado é maior
ou menor
que o número sorteado
. Veja um problema disso na prática:
Tente adivinhar o numero que estou pensando de 0 á 10...3
número sorteado: 8
Mais...Tente Novamente:9
Mais...Tente Novamente:10
Mais...Tente Novamente:12
Observe que nas três ultimas linhas era para o programa dizer que o número digitado precisaria de ser menor, porém, como o cálculo de maior
e menor
só é feito uma única vez, o programa salva apenas esse primeiro resultado e o repete em todas as iterações.
Abaixo, a correção:
import random
num = int(input('Tente adivinhar o numero que estou pensando de 0 á 10...'))
sorteio = random.randint(0,10)
print(f"Número sorteado {sorteio}")
maior = num < sorteio
menor = num > sorteio
cont=1
while sorteio != num:
if maior:
num = int(input('Mais...Tente Novamente: '))
cont += +1
elif menor:
num = int(input('Menos...Tente Novamente: '))
cont += +1
maior = num < sorteio
menor = num > sorteio
print('Parabéns você acertou, o numero pensado foi {} e foi necessário {} tentativas para você acertar'.format(sorteio,cont))
Resultado:
Tente adivinhar o numero que estou pensando de 0 á 10...3
Número sorteado 8
Mais...Tente Novamente: 10
Menos...Tente Novamente: 12
Menos...Tente Novamente: 6
Mais...Tente Novamente: 14
Menos...Tente Novamente: 7
Mais...Tente Novamente: 8
Parabéns você acertou, o numero pensado foi 8 e foi necessário 7 tentativas para você acertar
Pegou a ideia?
Qualquer dúvida é só falar, tá bom? Estou por aqui.
Abraços e bons estudos.