Mandar um café pro programador

Pode me ajudar a transformar cafeína em código?

Como Criar um Jogo em Python - Adivinhe o Número!

Neste tutorial de nossa apostila de Python, vamos te ensinar passo a passo, bem do começo, como desenvolver um jogo simples usando os conhecimentos obtidos de Testes e Laços e Funções.

Leia também:

Como Programar um Jogo em Python


Enunciado do game:

Crie um jogo em Python onde o computador vai sortear um número de 1 até 100.
Em seguida, você vai tentar adivinhar que número foi esse.

A cada tentativa, ele vai te dizer se seu palpite foi alto, baixo ou se você acertou.
Quando acertar, deve mostrar quantas tentativas você fez até acertar.

Pessoal, de coração: tente.
Tente muito, tente novamente, mesmo que fique grande, horroroso, todo remendado...mas tente.

Você vai precisar saber:



Para você não ver a solução, vamos escrever ela somente abaixo dos anúncios.
Tente não olhar o código comentado antes de tentar bastante desenvolver esse game em Python.









Lógica para criar um jogo em Python

Bom, vamos lá.

Primeiro, vamos criar nossa função gera(), que simplesmente vai retornar um inteiro de 1 até 100, através da função randint(), da biblioteca random que você deve importar no início do código.

Agora vamos pra função game(), onde a mágica vai acontecer.
Primeiro geramos o palpite do computador, e armazenamos na variável resposta.

Depois, inicializamos a variável tentativa com valor zero, ela que vai contar quantas tentativas o jogador vai fazer, até acertar.

O chute do usuário vai ser armazenado na variável chute, que vamos inicializar com 0.
Agora entramos no laço, que vai se repetir enquanto o jogador não acerte seu chute: ou seja, enquanto a variável chute seja diferente da variável resposta!

Como ele vai chutar, já incrementamos a variável tentativa em uma unidade.
Em seguida, pedimos o chute dele.

Agora vamos tratar o chute com testes condicionais IF, ELIF e ELSE
Se o chute dele for maior que a resposta, dizemos que o número sorteado é menor.
Se for um chute baixo, dizemos que o sorteado é maior.
Por fim, se acertar, damos uma mensagem de parabéns, mostramos o número sorteado bem como quantas tentativas a pessoa teve até acertar.

Prontinho.
Agora colocamos um laço while pra chamar direto a função game() e pode jogar a vontade!


Código Python do Jogo

import random
def gera():
    return random.randint(1,100)

def game():
    resposta = gera()
    tentativa = 0
    print("\nPalpite gerado!")

    chute=0
    while chute is not resposta:
        tentativa +=1
        chute = int(input("Qual seu chute: "))
        if chute > resposta:
            print("Errou! É um valor menor que ", chute)
        elif chute < resposta:
            print("Errou! É um valor maior que ", chute)
        else:
            print("Parabéns! O número gerado foi ",resposta, \
                  "Acertou em ",tentativa," tentativas!")
    
while True:
    game()


7 comentários:

  1. Interessante,Mas como faço a vida do jogador?

    ResponderExcluir
    Respostas
    1. eu acredito que idai ao em vés de 8sar while vc usa for , e coloca dentro do range, a quantidade de chance que ele tem

      Excluir
  2. import random;

    def numSorte():
    return random.randrange(1,100);

    def menu():
    return int(input('Digite numero da sorte (0 para sair): '));

    def tentativa(x, y):
    if (x > y):
    print('Muito alto...');
    return True;
    elif (x < y):
    print('Muito baixo...');
    return True;
    elif (x == y):
    print("Bingo!");
    return False;

    numero = numSorte();
    ctrl = True;

    while ctrl:
    opt = menu();
    if (opt != 0):
    ctrl = tentativa(opt, numero);
    print("Numero:", numero);

    ResponderExcluir
  3. # -*- coding: cp1252 -*-
    import random
    # JOGO ADIVINHE O NÚMERO

    tentativas = 0
    def gera() :
    return random.randint(1, 100)

    sorteado = gera()
    while True :
    tentativas += 1
    palpite = int(input("DIGITE UM NÚMERO DE 1 À 100 "))
    if palpite > sorteado :
    print("SEU PALPITE FOI ALTO!")
    elif palpite < sorteado :
    print("SEU PALPITE FOI BAIXO!")
    else:
    print("PARABÉNS! VOCÊ ACERTOU COM O NÚMERO ", palpite, " COM ", tentativas, " TENTATIVAS!")
    break

    ResponderExcluir
  4. import random

    def num_aleatorio():
    num= random.randint(1,100)
    return num

    def jogo():
    resposta = num_aleatorio()
    tentativa = 0
    chute = 0
    while resposta != chute:
    tentativa+=1
    chute = int(input('digite seu chute para o numero sorteado'))
    if chute > resposta:
    print('o numero sorteado e menor')
    if chute < resposta:
    print('o numero sorteado e maior')

    return print('o numero aleatorio e :',resposta,'\ne levou',tentativa,'tentativas')

    jogo()

    ResponderExcluir

Bora fazer evoluir o ensino da Programação no Brasil ?

Que tal apoiar e fazer crescer o ensino da programação no Brasil ?

Ajudar nosso país a crescer e se desenvolver cada vez mais, tecnologicamente?

Clica abaixo pra saber mais!

Apoiar o Projeto Progressivo