Blackjack simples para estudo de iniciantes em Python
Publicado por David Wilian Oliveira de Sousa (última atualização em 23/09/2011)
[ Hits: 13.531 ]
Homepage: http://respostasaoateismo.blogspot.com
Esse código é apenas uma adaptação do script que encontrei aqui no site, e estava escrito em C.
http://www.vivaolinux.com.br/script/Blackjack-simples-para-estudo-de-iniciantes-em-C
Não sei se ficou tão bom, quem quiser baixar e testar fique à vontade.
Abraços
#!/usr/bin/python import os #Necessário para limpar a tela import random #Necessário para utilizar a função random import time #Necessário para utilizar a função sleep #Variáveis que armazenam as opções dos jogadores em relação ao jogo. opjogo = 0 jogada = 0 totalj = 0 totalc = 0 #Variáveis da jogada atual e do total de pontos. total1 = 0 total2 = 0 print("Bem Vindo ao BlackJack em Python!! \n") opjogo =input("Quantos jogadores participarão da partida? \n") if opjogo == '1': #Vez do usuário. opjogo='S'; os.system('clear') print("Você tem que fazer 21 pontos para ganhar, porém sem estourar esse limite, podendo parar após cada jogada.\n"); print totalj=0 while opjogo=='s' or opjogo=='S': #Laço que deixa as jogadas a critério do usuário. opjogo = input("Deseja fazer a jogada?[S/N] \n") if opjogo=='n' or opjogo=='N': break jogada= random.randint(1,10) #Gera números aleatórios de 1 até 10. totalj=(totalj+jogada) if totalj >= 21: break print print("Você tirou {0} e até agora marcou {1} pontos.\n".format(jogada,totalj)) print print("Você marcou {0} pontos, vamos ver o computador...\n".format(totalj)) #Vez do Computador print("Agora é minha vez de jogar. Vejo que você fez {0} pontos...\n".format(totalj)) totalc=0 while (totalc < 21): jogada= random.randint(1,10) #Gera números aleatórios de 1 até 10. totalc=(totalc+jogada) if totalj > 21: break print("Tirei {0} pontos e pretendo continuar jogando, pois ainda estou com {1}.\n".format(jogada,totalc)) time.sleep(1.2) print print("O jogador terminou com {0} pontos e o computador com {1} pontos, portanto...".format(totalj,totalc)) if totalj == 21: print("O jogador ganhou, fazendo os gloriosos 21 pontos =D...\n") elif totalc == 21: print("O computador ganhou, fazendo os gloriosos 21 pontos =D...\n") elif totalc > 21 and totalj <= 21: print("O computador tem um número maior de pontos do que é permitido...O jogador vence.\n") elif totalj > 21 and totalc <= 21: print("O jogador tem um número maior de pontos do que é permitido...O computador vence.\n") elif 21 - totalc > 21 - totalj: print("O computador vence por estar mais perto de 21.\n") elif 21 - totalc < 21 - totalj: print("O jogador vence por estar mais perto de 21.\n") print if opjogo=='2': print("O jogo funciona por turnos, cada jogador terá sua vez e decidirá o que fazer...\n") #Vez do jogador número 1. opjogo='S' os.system('clear') print("Você tem que fazer 21 pontos para ganhar, porém sem estourar esse limite, podendo parar após cada jogada.\n") print totalj=0 while opjogo=='s' or opjogo=='S': #Laço que deixa as jogadas a critério do usuério. opjogo = input("Deseja fazer a jogada?[S/N] \n") if opjogo=='n' or opjogo=='N': break jogada= random.randint(1,10) #Gera números aleatórios de 1 até 10. total1=(total1+jogada) if totalj >= 21: break print print("Você tirou {0} e até agora marcou {1} pontos.\n".format(jogada,totalj)) print #Vez do jogador número 2. opjogo='S' os.system('clear') print("Você tem que fazer 21 pontos para ganhar, porém sem estourar esse limite, podendo parar após cada jogada.\n") print("Cuidado, pois o jogador 1 marcou {0} pontos".format(total1)) print totalj=0 while opjogo=='s' or opjogo=='S': #Laço que deixa as jogadas a critério do usuário. opjogo = input("Deseja fazer a jogada?[S/N] \n") if opjogo=='n' or opjogo=='N': break jogada= random.randint(1,10) #Gera números aleatórios de 1 até 10. total2=(total2+jogada) if total2 >= 21: break print print("Você tirou {0} e até agora marcou {1} pontos.\n".format(jogada,total2)) print("O jogador 1 terminou com {0} pontos e o jogador 2 com {1} pontos, portanto...".format(total1,total1)) if total1 == 21: print("O jogador 1 ganhou, fazendo os gloriosos 21 pontos =D...\n") elif total2 == 21: print("O computador ganhou, fazendo os gloriosos 21 pontos =D...\n") elif total2 > 21 and total1 <= 21: print("O computador tem um número maior de pontos do que é permitido...O jogador vence.\n") elif total1 > 21 and total2 <= 21: print("O jogador tem um número maior de pontos do que é permitido...O computador vence.\n") elif total1==total2: print("Houve um empate...") elif 21 - total2 > 21 - total1: print("O jogador 2 vence por estar mais perto de 21.\n") else: print("O jogador 1 vence por estar mais perto de 21.\n") print else: print("O máximo de jogadores permitidos é de 2 \n")
Validador e gerador de CPF em Python
Desenhando um quadrado em python, com funções.
Horá do descanso! Uma peque aplicação que fiz usando pygtk
Nenhum comentário foi encontrado.
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Criando um Pen Drive Bootável no Linux
Instalando Discord no Fedora 40
Instalando Discord no Ubuntu 24.04 LTS
Como instalar o XFCE4-terminal na sua distribuição Linux e integrá-lo ao sistema
Como instalar o Tilix Terminal no Gnome e usá-lo como menu drop-down ao estilo Quake
Alguém do ramo de educação por aqui? [RESOLVIDO] (8)
problemas com artefatos na instalação (20)
Google chrome e opera fechando (1)
Como instalar/atua... o Ubuntu sem formatar o HD? [RESOLVIDO] (3)