6
respostas

While no código advinhação

Uma coisa que percebí no código abaixo é que se já na primeira tentativa entrarmos com o numero secreto correto, ou seja 42, o laço não finaliza, ele segue até atingir o total de tentativas. Nessa situação como poderia finalizar sem ter que testar as demais tentativas??

meu codigo:

print("*******************************")
print("Bem vindo ao jogo de Advinhação")
print("*******************************")

numero_secreto = 42
total_de_tentativas = 3
rodada = 1

while(rodada <= total_de_tentativas):
    print("Tentativa {} de {}".format(rodada, total_de_tentativas))
    chute_str = input("Digite seu número: ")
    print("Você digitou: ", chute_str)
    chute = int(chute_str)

    acertou = chute == numero_secreto
    maior = chute > numero_secreto
    menor = chute < numero_secreto

    if(acertou):
        print("Parabéns, você acertou!!")
    else:
        if(maior):
            print("Que pena, você errou! Seu chute foi maior que o número secreto")
        elif(menor):
            print("Que pena, você errou! Seu chute foi menor que o número secreto")
    rodada = rodada + 1
print("Fim de Jogo")
6 respostas

Olá,

vc poderia testar no while as duas condições: acertou e tentativas (ou perdeu).

ou, inserir um break dentro do if do acertou.

[]'s

Valeu Luciano,

inseri o break dentro do if acerto. Agora ficou legal!

Giovanni

Com a mesma idéia do while, dá pra fazer uma programinha para tabuadas:

print("********************")
print("  Programa Tabuada  ")
print("********************")

tabuada = input("Escolha a tabuada: ")
n = int(tabuada)
x = 1

while(x <= 10):
    print("{} x {} = ".format(n, x), n * x)
    x = x + 1
print("********************")

Olá,

hehe, dá pra fazer muita coisa. Mas verá que o for é melhor...

[]'s

Inseri um break dentro do if relacionado ao acerto

valeu pela dica do for Luciano

Abraços,