Blackjack simples para estudo de iniciantes em Python
Publicado por David Wilian Oliveira de Sousa (última atualização em 23/09/2011)
[ Hits: 14.073 ]
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")
Desenhando uma estrela com Python
Ler dois números e informa o dividendo, divisor, quociente e resto.
Script voltado a resolução da equação de estado dos gases reais
Gerador de grafos no formato .gif
Nenhum comentário foi encontrado.
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
problema para barrar sites/downloas via HTTPS. (3)
Como fzr Downgrade em um pacote específico (2)
Contas online no POP OS 24.04 ? (2)