Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Nao entendo que estou fazendo de errado!

Insira aqui a descrição dessa imagem para ajudar na acessibilidade Faço o codigo ingual o do professor e simplesmente nao esta imprimindo a lista de frutas! alguem poderia me ajudar a entender! onde tem os pontos,era para aparecer os nome das frutas

5 respostas

Daiane, eu estou vendo coisas que precisam de alinhamento. Se quiser, posso ver pra você. Envie a versão editável do código e completo.

Oi, o codigo do jogo forca nao esta dando certo! o codigo do print é o que o professor fez no console! vc pode me ajudar?

import random

def carrega_palavra_secreta():

def jogar():

imprima_mensagem_abertura()

carrega_palavra_secreta()

arquivo = open("palavras.txt", "r")
palavras = []

for linha in arquivo:
    linha = linha.strip()
    palavras.append(linha)

arquivo.close()

numero = random.randrange(0,len(palavras))
palavra_secreta = palavras[numero].upper()

letras_acertadas = ["_" for letra in palavra_secreta]

enforcou = False
acertou = False
erros = 0

print(letras_acertadas)

while(not enforcou and not acertou):

    chute = input("Qual letra? ")
    chute = chute.strip().upper()

    if(chute in palavra_secreta):
        index = 0
        for letra in palavra_secreta:
            if(chute == letra):
                letras_acertadas[index] = letra
            index += 1
    else:
        erros += 1

    enforcou = erros == 6
    acertou = "_" not in letras_acertadas
    print(letras_acertadas)


if(acertou):
    print("Você ganhou!!")
else:
    print("Você perdeu!!")
print("Fim do jogo")

if(name == "main"): jogar()

def imprima_mensagem_abertura(): print("*") print("Bem vindo ao jogo da Forca!") print("**")

solução!

Daiane, eu debuguei pra vc e comentei algumas linhas de código. Programação é uma arte de paciência e lidar com as frustrações que deslizes de lógica, sintaxe e etc vão trazer. Isso vai ocorrer bastante, você precisa ter tempo e paciência ao tentar verificar os erros ao longo do caminho (é frustrante, mas dá frutos).

Vamos lá:

import random

def jogar():
    imprime_mensagem_abertura()  #Essa chamada nao funcionaria pois você jogou a def imprime para APOS a condicao do if main la embaixo.
    carrega_palavra_secreta()

def carrega_palavra_secreta(): #Havia um erro nessa linha (compare com o teu codigo)

    arquivo = open("palavras.txt", "r")
    palavras = []

    for linha in arquivo:
        linha = linha.strip()
        palavras.append(linha)

    arquivo.close()

    numero = random.randrange(0, len(palavras))
    palavra_secreta = palavras[numero].upper()
    return palavra_secreta    #vc não retornou no teu codigo


    letras_acertadas = ["_" for letra in palavra_secreta]

    enforcou = False
    acertou = False
    erros = 0

    print(letras_acertadas)

    while (not enforcou and not acertou):

        chute = input("Qual letra? ")
        chute = chute.strip().upper()

        if (chute in palavra_secreta):
            index = 0
            for letra in palavra_secreta:
                if (chute == letra):
                    letras_acertadas[index] = letra
                index += 1
        else:
            erros += 1

        enforcou = erros == 6
        acertou = "_" not in letras_acertadas
        print(letras_acertadas)

    if (acertou):
        print("Você ganhou!!")
    else:
        print("Você perdeu!!")
    print("Fim do jogo")

def imprime_mensagem_abertura():
    print("*********************************")
    print("***Bem vindo ao jogo da Forca!***")
    print("*********************************")

    # Atenção !!! VC COLOCOU ESSE BLOCO DE CODIGO, IMPRIMIR MENSAGEM, APOS A CONDIÇAO
    # if (__name__ == "__main__"):
    #     jogar()

if (__name__ == "__main__"):
    jogar()

Tiveram mais alguns ajustes, tentei comentar ao máximo, mas talvez tenha algo ou outro que tenha esquecido de mencionar. Com os alinhamentos você já ve teu print pronto da inicialização do jogo.

Muito o brigada por sua ajuda! só vendo tua explicaçao vi os erros que comenti!! realmente programar requer paciencia.

Que bom. Daiane, não desanima! Pelo que eu vi da tua forma de lidar com o código eu diria que vc só precisa de alinhamentos e bastante prática. Então, treine, treine e treine ;) Vc vai ficar bem mais afinada ao longo do tempo, menina! :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software