Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Impar ou par

Boa noite,

Segue o jogo programado para o exercício Verificando a paridade de um número

def verificar_par_impar(numero):
    """
    Verifica se um número é par ou ímpar.
    """
    if numero % 2 == 0:
        return "Par"
    else:
        return "Ímpar"


def jogar():
    """
    Joguinho: o usuário digita números e o programa diz se são pares ou ímpares.
    Ao final, mostra quantos números pares e ímpares foram digitados.
    Digite 'sair' para encerrar.
    """
    print("=== Jogo: Par ou Ímpar ===")
    print("Digite um número para descobrir se é par ou ímpar.")
    print("Digite 'sair' para encerrar o jogo.\n")

    pares = 0
    impares = 0
    total = 0

    while True:
        entrada = input("Digite um número (ou 'sair'): ")

        if entrada.lower() == "sair":
            break

        try:
            numero = int(entrada)
            resultado = verificar_par_impar(numero)
            print(f"O número {numero} é {resultado}!\n")

            total += 1
            if resultado == "Par":
                pares += 1
            else:
                impares += 1

        except ValueError:
            print("Valor inválido! Digite um número inteiro ou 'sair'.\n")

    exibir_pontuacao(total, pares, impares)


def exibir_pontuacao(total, pares, impares):
    """
    Exibe o resumo final com a contagem de números pares e ímpares.
    """
    print("Obrigado por jogar! Até a próxima! \n")
    print("===== PONTUAÇÃO FINAL =====")
    print(f"Total de números digitados: {total}")
    print(f"Pares: {pares}")
    print(f"Ímpares: {impares}")


# Programa principal
jogar()
1 resposta

Oi, Laura. Tudo bem com você?

Dei uma conferida no seu jogo de par ou ímpar e o código está redondinho, rodando sem erros de sintaxe ou de lógica, e ainda por cima você trouxe um tratamento de exceção com try/except pra lidar com entradas inválidas, o que não era nem obrigatório no exercício e mostra que você já está pensando em robustez do programa, não só em fazer funcionar no caminho feliz.

Gostei bastante da separação de responsabilidades entre verificar_par_impar, jogar e exibir_pontuacao, cada função com um papel bem definido, isso deixa o código mais fácil de ler e de dar manutenção depois. Se quiser evoluir esse joguinho num próximo passo, dá pra pensar em variações tipo guardar numa lista todos os números pares e ímpares digitados, ou até calcular a soma total deles no final, são caminhos naturais pra você praticar mais um pouco de estrutura de dados em cima do que já construiu aqui.

Você já pensou em algum outro comportamento extra que gostaria de adicionar nesse jogo, tipo um limite de tentativas ou uma pontuação por acerto de alguma adivinhação?

Parabéns pelo exercício, Laura, ficou muito bem feito, e o fórum está à disposição sempre que precisar.

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