1
resposta

Pedra, papel e tesoura

import random
import os
import time

opcoes = ["pedra", "papel", "tesoura"]

jogadas_totais = 0
vitorias_jogador = 0
vitorias_computador = 0


def menu():

    print("Bem-vindo ao jogo Pedra, Papel e Tesoura!")
    print("Escolha uma opção:")
    print("1. Jogar")
    print("2. Sair\n")
    opcao_menu()

def jogar():
    global jogadas_totais, vitorias_jogador, vitorias_computador

    jogador = input("Digite sua escolha (pedra, papel ou tesoura): ").lower()
    if jogador == "sair":
        print("Obrigado por jogar! Até a próxima.")
        return
    if jogador not in opcoes:
        print("Opção inválida. Tente novamente.\n")
        jogar()    
        return

    computador = random.choice(opcoes)
    print(f"O computador escolheu: {computador}")
    jogadas_totais += 1


    if jogador == computador:
        print("Empate!\n")
    elif (jogador == "pedra" and computador == "tesoura") or \
         (jogador == "papel" and computador == "pedra") or \
         (jogador == "tesoura" and computador == "papel"):
        print("Você ganhou!\n")
        contador_de_jogadas()
        vitorias_jogador += 1
    else:
        print("Você perdeu!\n")
        vitorias_computador += 1

    jogar_novamente()

def opcao_menu():

    escolha = input("Digite sua escolha (1 ou 2): ")
    if escolha == "1":
        jogar()
    elif escolha == "2":
        print("Obrigado por jogar! Até a próxima.")
    else:
        print("Opção inválida. Tente novamente.\n")
        menu()
    return escolha


def limpar_tela():
    time.sleep(2)
    os.system('cls' if os.name == 'nt' else 'clear')


def jogar_novamente():
    resposta = input("Deseja para ou continuar (s/n): ").lower()
    if resposta == 's':
        limpar_tela()
        jogar()
    elif resposta == 'n':
        print("calculando")
        time.sleep(2)
        print(f"\nPlacar Final: {vitorias_jogador} Vitórias | {vitorias_computador} Derrotas | {jogadas_totais} Jogadas")
        print("Obrigado por jogar! Até a próxima.")
    else:
        print("Opção inválida. Tente novamente.\n")


def contador_de_jogadas():
# Implementação da função contador_de_jogadas para exibir o placar atual
    print("-" * 30)
    print(f"JOGADAS TOTAIS: {jogadas_totais}")
    print(f"PLACAR: Jogador {vitorias_jogador} x {vitorias_computador} Computador")
    print("-" * 30 + "\n")

def ensera_jogo():
    print('voce mederotou boa jogada')
    jogar_novamente()

def main():
    menu()



if __name__ == "__main__":
    main()
1 resposta

Olá, Lucas! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da biblioteca random para gerar escolhas aleatórias, utilizou muito bem condicionais para definir os resultados das partidas e ainda compreendeu a importância de variáveis globais para controlar o placar.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!