2
respostas

Em vez de somar as rodadas e repetir o código, meu terminal fica em loop "tentativa 1 de 7"

print("*") print("Bem-vindo ao Jogo de Adivinhação!") print("*")

secret_number = 13

attempt_str = input("Digite a sua tentativa: ") print("Você digitou", attempt_str) attempt = int(attempt_str)

acertou = attempt == secret_number errou_pra_mais = attempt > 13 errou_pra_menos = attempt < 13 total_tentativas = 7 rodada = 1

while(rodada<=total_tentativas): print("Tentativa {} de {}".format(rodada, total_tentativas)) if(acertou): print("Acertô, miserávi! É Lula 2022.") elif(errou_pra_mais): print("Abaixa tua bola!") elif(errou_pra_menos): print("Cuida, pra não escolher o 17!") rodada = rodada + 1 print("\n") print("O jogo só acaba quando termina, vi? Em 2022, vote consciente, miséra!")

TERMINAL: entativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 de 7 Tentativa 1 d

2 respostas
Acabei de corrigir a ordem dos códigos e continuo obtendo o mesmo resultado!

print("*") print("Bem-vindo ao Jogo de Adivinhação!") print("*")

secret_number = 13 total_de_tentativas = 7 rodada = 1

while(rodada <= total_de_tentativas): print("Tentativa {} de {}".format(rodada, total_de_tentativas))

attempt_str = input("Digite a sua tentativa: ") print("Você digitou", attempt_str) attempt = int(attempt_str)

acertou = attempt == secret_number errou_pra_mais = attempt > 13 errou_pra_menos = attempt < 13

if(acertou): print("Acertô, miserávi! É Lula 2022.") elif(errou_pra_mais): print("Abaixa tua bola!") elif(errou_pra_menos): print("Cuida, pra não escolher o 17!")

rodada = rodada + 1 print("\n") print("O jogo só acaba quando termina, vi? Em 2022, vote consciente, miséra!")

Boa noite Guilherme, tudo bem?

Creio que seu problema não seja a lógica aplicada. Copiando seu código e formatando ele obtive o resultado esperado, o que me leva a crer que o problema seja a identação do seu código. Provavelmente a parte a qual faz a soma da rodada, está abaixo do comando print("Cuida, pra não escolher o 17!"), ou está sem o espaçamento de 4 espaços que faz ficar dentro do comando while.

O código formatado funcional segue abaixo, creio que será melhor de você identificar a diferença entre os códigos e garantir se será uma das possíveis "suposições" ditas anteriormente.

print("*")
print("Bem-vindo ao Jogo de Adivinhação!")
print("*")

secret_number = 13
total_de_tentativas = 7
rodada = 1

while rodada <= total_de_tentativas:
    print("Tentativa {} de {}".format(rodada, total_de_tentativas))
    attempt_str = input("Digite a sua tentativa: ")
    print("Você digitou", attempt_str)
    attempt = int(attempt_str)
    acertou = attempt == secret_number
    errou_pra_mais = attempt > 13
    errou_pra_menos = attempt < 13

    if acertou:
        print("Acertô, miserávi! É Lula 2022.")
    elif errou_pra_mais:
        print("Abaixa tua bola!")
    elif errou_pra_menos:
        print("Cuida, pra não escolher o 17!")

    rodada = rodada + 1
    print("\n")

print("O jogo só acaba quando termina, vi? Em 2022, vote consciente, miséra!")

Espero ter contribuído para a resolução de sua dúvida.