Jump to content
andrefsm

[Resolvido] Ajuda jogo p/ descobrir o numero

Recommended Posts

andrefsm

Boa tarde, tenho um problema com o meu programa.

Consegui fazer o "jogo" todo, mas agora queria fazer com que ele descobri-se quando o jogador fez batota!.

Aqui esta as condições do programa, já tentei várias condições para descobrir quando é batota mas não consegui por nenhuma a funcionar, escrevi em papel os valores dos limites a cada passo e também não consegui descobrir uma solução para isso.

while n != '=':
if n == '<':
limite_superior = limite_medio
limite_medio = int ((limite_medio + limite_inferior)/2)

i += 1

elif n == '>':
limite_inferior = limite_medio
limite_medio = int ((limite_medio + limite_superior)/2)

i += 1

else:
print "\nPor favor introduza um comando correcto!"

Edited by thoga31
GeSHi

Share this post


Link to post
Share on other sites
Pedro C.

Podes ser mais especifico? Não percebo o que é o jogo, nem o que são as variáveis ou de onde vêm, e consequentemente o que é exactamente fazer batota.

Este teu tópico vem no seguimento de outro anterior?

Tenta meter o teu código bem identado na citação (ou mesmo meter logo à partida a formatação para código Python, fazes code=Python na instrução code que aparece em cima) pois fica mais dificil analisá-lo assim.

Share this post


Link to post
Share on other sites
andrefsm

Não queria por aqui o código todo, mas caso seja necessário posso por.

O objectivo do jogo é:

O utilizador dá um limite inferior e um superior, e o objectivo é descobrir o numero que o utilizador pensou com o método da bisseção, partindo os limites a meio dependendo do input que receber.

Output (deveria dizer que fez batota!):

Introduza o limite inferior: 1
Introduza o limite superior: 100
Pense num numero de 1 ate 100
Tentativa 1: O numero que pensou e o 50 ?
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
<

Tentativa 2 : O numero que pensou e o 25 ?:
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
>

Tentativa 3 : O numero que pensou e o 37 ?:
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
<

Tentativa 4 : O numero que pensou e o 31 ?:
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
<

Tentativa 5 : O numero que pensou e o 28 ?:
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
<

Tentativa 6 : O numero que pensou e o 26 ?:
Caso o numero apresentado seja igual digite = .
Caso o numero apresentado seja maior digite > .
Caso o numero apresentado seja menor digite < .
<
So pode ser: 27
Descobri em 6 tentativas!

Prima qualquer tecla para sair!

peço desculpa introduzir texto assim, mas não sei a melhor maneira de o fazer!

Edit: Este tópico não provem de nenhum anterior

Edited by andrefsm

Share this post


Link to post
Share on other sites
thoga31

Usa uma variável para saber os limites. Por exemplo, ele disse que é maior do que 25 e menor do que 28, por exemplo, e nesse ponto teremos que Min=25 e Max=28. Depois o utilizador diz que pensou num número menor do que 26, mas ele disse que era maior do que 25, que é Min. Aí lanças o aviso de batota.


Knowledge is free!

Share this post


Link to post
Share on other sites
andrefsm

Usa uma variável para saber os limites. Por exemplo, ele disse que é maior do que 25 e menor do que 28, por exemplo, e nesse ponto teremos que Min=25 e Max=28. Depois o utilizador diz que pensou num número menor do que 26, mas ele disse que era maior do que 25, que é Min. Aí lanças o aviso de batota.

Muito obrigado!

Já consegui por a funcionar!

P.S - Posso por este tópico como resolvido ou terá de ser um admin? Se puder como o faço?

Share this post


Link to post
Share on other sites
thoga31

P.S - Posso por este tópico como resolvido ou terá de ser um admin? Se puder como o faço?

Em princípio, no topo da página, tens um botão com "Ferramentas do autor", e lá estará algo como "Marcar tópico como resolvido" ou algo do género. ;)

Se não tiveres a opção, avisa.


Knowledge is free!

Share this post


Link to post
Share on other sites
andrefsm

Em princípio, no topo da página, tens um botão com "Ferramentas do autor", e lá estará algo como "Marcar tópico como resolvido" ou algo do género. ;)

Se não tiveres a opção, avisa.

Não descobri o tal botão.

Peço que marques então o tópico como resolvido.

Muito obrigado novamente!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.