Blackjack simples para estudo de iniciantes em Python
Publicado por David Wilian Oliveira de Sousa (última atualização em 23/09/2011)
[ Hits: 14.025 ]
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")
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Open Suse não abre wi-fi automaticamente (1)
Criar entrada no GRUB para uma ISO Linux (5)
Ruído no Microfone (ALC287 - AMD Ryzen 5 7535HS) no Debian 12.9 (15)