Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

player

Gerador do EuroMilhões

Mensagens Recomendadas

player

Boas

Estava a tentar fazer um programa que gerasse os números do EuroMilhões mas ele após me dar as chaves não me dá as estrelas, é como se "frezasse" o programa. Aqui está o código

def euromilhoes():
    import random
    numeros = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50]
    estrelas = [1,2,3,4,5,6,7,8,9]
    escolha_numeros = []
    escolha_estrelas = []
    def escolha_n():
        loop = True
        while loop == True:
            total = random.choice(numeros)
            if total in escolha_numeros:
                continue
            elif len(escolha_numeros) == 5:
                print (escolha_numeros)
                loop = False
            else:
                escolha_numeros.append(total)
    def escolha_e():
        loop = True
        while loop == True:
            total = random.choice(estrelas)
            if total in escolha_estrelas:
                continue
            elif len(escolha_numeros) == 2:
                print (escolha_estrelas)
                loop = False
            else:
                escolha_estrelas.append(total)
    escolha_n()
    escolha_e()

Obrigado pela ajuda.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
mjamado

Na func escolha_e, dentro do while, a condição do elif está mal, não é len(escolha_numeros), mas sim len(escolha_estrelas).


"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
player

Na func escolha_e, dentro do while, a condição do elif está mal, não é len(escolha_numeros), mas sim len(escolha_estrelas).

Falta de atenção, muito obrigado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
yaba

Só por curiosidade...

sou novo em Python, mas.... na variavel "numeros" não podias simplesmente ter usado uma range(1,50) ???

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Imoogi

sim, mas seria range(1, 51),

pq ele faz do 1 (inclusive) até 51 (exclusive), ou seja, do 1 até 50,

se colocar range(1, 50) ele ira fazer do 1 até 49.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.