 |
|
Hoje é Ter Mai 22, 2012 10:27 am
|
Ver mensagens sem resposta | Ver tópicos ativos
| Autor |
Mensagem |
|
Rosberg
Data de registro: Qui Dez 25, 2008 4:49 pm Mensagens: 1
|
 Re: Exercício
Primeira vez respondendo ... minhas soluções ... O segundo exercício bem direto.... ja o primeiro, com uma função desnecessária, mas apenas para aprendizado ... Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # Desenvolvido por Rosberg # Arquivo exercício Aula 9 Python - rosbergmb@gmail.com
########### Exercício (1
#Importando módulo random import random
#Criando lista com o nome de dez pessoas lista = ["Barney","Homer","Goku","Raito","Jerry","Pernalonga","Bob Esponja","Nemo","Benji","Dornizildo"]
#definindo uma função para embaralhar a lista def sorte(): random.shuffle(lista)
sorte() #Chamando a função sorte() sorteado1 = lista[0] # O sorteado sempre será o primeiro da lista
while lista[0] == sorteado1: # Laço, embaralha enquanto iguais sorte()
sorteado2 = lista[0] print("O primeiro sorteado é: %s\nO segundo sorteado é: %s" %(sorteado1, sorteado2))
#PS: Não há a necessidade de se usar esta função sorte(), poderiamos colocar direto a função random.shuffle(), apenas fiz por aprendizado msm ! =D
############ Exercício (2
lista1 = ["0","1","2","3","4","5","6","7","8","9"] lista2 = ["0","1","2","3","4","5","6","7","8","9"]
print("As 5 dezenas sorteadas são:")
for dezenas in range(1,6): # Laço de repetição para criar as cinco dezenas random.shuffle(lista1) random.shuffle(lista2) while ((lista1[0]+lista2[0]) == ("00")): # caso ocorra a dezena "00" o sorteio será refeito random.shuffle(lista1) random.shuffle(lista2) print(lista1[0]+lista2[0])
|
| Dom Jan 18, 2009 10:28 pm |
|
 |
|
hahuho
Data de registro: Ter Dez 09, 2008 2:09 pm Mensagens: 11
|
 Re: Exercício
Aí vão os meus resultados, desculpem por eu não estar colocando comentários no código Aula09_1-InFog.py Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # Python 2.6
''' 1 - Sorteio - Crie uma lista com o nome de 10 pessoas, embaralhe esta lista e sorteie uma pessoa, depois embaralhe novamente e sorteie outra pessoa, lembrando que não poderá ser a mesma pessoa a ser sorteada. '''
import random
pessoas = ['João', 'Joana', 'Manoel', 'Manoela', 'Angela', 'Angelo', 'Gabriel', 'Gabriela', 'Gilmar', 'Gilmara']
lista_sorteada = []
while len(pessoas)> 0:
random.shuffle(pessoas) sorteado = pessoas.pop() print(sorteado)
lista_sorteada.append(sorteado)
Obs. a lista lista_sorteada era só um teste que eu estava fazendo, caso quisesse retornar os valores depois... ----------------------------------- Aula09_2-InFog.py Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # Python 2.6
''' 2 - Mega Sena - Crie duas listas com números de 0 a 9, embaralhe as listas e sorteie um número de cada uma para formar uma dezena, repita a operação 5 vezes para sortear 5 dezenas, assim como na mega sena. Caso a dezena caia como 00 (zero, zero) faça o sorteio dela novamente até sair outra combinação. Depois disso exiba as dezenas sorteadas. '''
import random
dezena = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] unidade = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] lista_sorteada = [] cont = 0 while cont <= 4: random.shuffle(dezena) random.shuffle(unidade) r1 = dezena[0] + unidade[0] if r1 in lista_sorteada: continue elif r1 == '00': continue else: lista_sorteada.append(r1) cont += 1 # print ('e sai a bola de número', r1) print 'e sai a bola de número', r1
Obs. É, ainda ñ acostumei a usar parenteses no print... Se eu usar: print ('e sai a bola de número ', r1)Sai: ('e sai a bola de n\xc3\xbamero ', '97') ('e sai a bola de n\xc3\xbamero ', '22') ('e sai a bola de n\xc3\xbamero ', '86') ('e sai a bola de n\xc3\xbamero ', '13') ('e sai a bola de n\xc3\xbamero ', '31')e se eu usar o jeito "normal": print 'e sai a bola de número', r1Sai da maneira certa: e sai a bola de número 66 e sai a bola de número 42 e sai a bola de número 84 e sai a bola de número 60 e sai a bola de número 69Pronto, agora eu achei, é só colocar um + ao invés da virgula: ex: print ('e sai a bola de número '+ r1)E agora vou olhar as respostas de vocês 
|
| Sex Jan 23, 2009 6:33 pm |
|
 |
|
bemcapaz
Data de registro: Ter Mai 26, 2009 4:20 am Mensagens: 2
|
 Re: Exercício
Apenas deixando registrado um código solução para o problema da mega sena que ninguem tinha abordado antes, bom como referência, complementando principalmente aquela história da versatilidade do python. Código: [random.randint(1,60) for x in range(5)] só isso =D
|
| Ter Mai 26, 2009 4:23 am |
|
 |
|
ROBISON-MARATAIZES
Data de registro: Qua Ago 05, 2009 4:56 pm Mensagens: 8
|
 Re: Exercício
Esse foi o exercício mais difícil que eu vi até agora, eu demorei uns 10 dias para resolver, e detalhe, só consegui acabar com os erros hoje, no último dia, e mesmo assim acredito que possa sair números repetidos. Contudo foi um aprendizado. Eu olhei as respostas dos outros companheiros, porém, tem "comandos" que eu não aprendi ainda. Aí está a "obra de arte"  : Código: #!/usr/bin/env python # -*- coding: UTF-8 -*- # Exercicio da aula 9 do curso online de python da Infog
print ''' Exercicio da aula 9 do curso online de python da Infog
1 – Sorteio – Crie uma lista com o nome de 10 pessoas, embaralhe esta lista e sorteie uma pessoa, depois embaralhe novamente e sorteie outra pessoa, lembrando que não poderá ser a mesma pessoa a ser sorteada.
2 – Mega Sena – Crie duas listas com números de 0 a 9, embaralhe as listas e sorteie um número de cada uma para formar uma dezena, repita a operação 5 vezes para sortear 5 dezenas, assim como na mega sena. Caso a dezena caia como 00 (zero, zero) faça o sorteio dela novamente até sair outra combinação. Depois disso exiba as dezenas sorteadas.
''',"-"*70,"\n\nRESPOSTAS:"
# CRIANDO UMA LISTA LISTA=["ANA","PEDRO","JOÃO","MARIA","MATEUS","MARCOS","GABRIEL","DAVI", "PAULO","JOSIAS"]
# EMBARALHANDO A LISTA import random random.shuffle(LISTA)
# MOSTRANDO A LISTA print '''A lista foi criada e embaralhada como foi pedido, eis a lista:
''', LISTA,"\n","-"*70,"\n\n\n"
## SORTEIOS # SORTEIO DO EXERCÍCIO 1 LISTA01=LISTA
n=1 print "Resultado do Exercício 1\n" while n<=2: SORTEADO = LISTA01.pop() print ("O %iº sorteado foi: " % n), SORTEADO,"\n" n=n+1 print "\n","-"*70,"\n" # SORTEIO DO EXERCÍCIO 2
# OBTENÇÃO DOS RESULTADOS e APRESENTAÇÃO DOS RESULTADOS n=1 print "Resultados do Exercício 2\n" ######## MEGA=["1","2","3","4","5","6","7","8","9"] SENA=["1","2","3","4","5","6","7","8","9"] RESULTADOS=[] N=1
while len(RESULTADOS) < 5 and N<6: random.shuffle(MEGA) random.shuffle(SENA) N=N+1 S1=MEGA.pop() if S1==0: random.shuffle(MEGA) if S1==0: SENA.remove("0") S1=MEGA.pop() S2=SENA.pop() S3=S1+S2 RESULTADOS.append(S3) print ("Sorteio %s. Resultado: %s" % ((N-1), RESULTADOS)) else: S2=SENA.pop() S3=S1+S2 RESULTADOS.append(S3) if (N-1) == 1: print ("\nSorteio %s. Resultado Inicial: %s" % ((N-1), RESULTADOS)) SENA.append("0") elif (N-1)>=1 and (N-1)<=4: print ("\nSorteio %s. Resultado Parcial: %s" % ((N-1), RESULTADOS)) SENA.append("0") elif (N-1)==5: print ("\nSorteio %s. Resultado Final: %s" % ((N-1), RESULTADOS)) SENA.append("0")
|
| Dom Ago 23, 2009 2:51 pm |
|
 |
|
dkrug73
Data de registro: Ter Ago 25, 2009 1:02 pm Mensagens: 3
|
 Re: Exercício
Código: exercício 1:
import random
pessoas = ['Daniel', 'Juliana', 'Nilva', 'Nininha', 'Flavio', 'Marta', 'Rogerio', 'Biluka', 'Catita', 'Nene']
for i in range (2): random.shuffle (pessoas) print '%dª pessoa sorteada: %s' % (i+1, pessoas[0]) pessoas.pop (0) Código: exercício 2:
import random
lista1 = ['0', '1', '2', '3', '4', '5', '6'] lista2 = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] lista3 = [ ]
# loop para efetuar os seis sorteios for i in range (6): teste = True while teste: random.shuffle (lista1) random.shuffle (lista2) # atribui à variável sorteio o 1º número da lista 1 e o 1º númeoro da lista 2 sorteio = lista1[0] + lista2[0] # se for o primeiro lançamento, irá adicionar o 1º número do sorteio if i == 0 and sorteio > '0' and sorteio < '61': lista3.append (sorteio) teste = False # a partir do 2º lançamento, é verificado se a variável sorteio já existe na lista. # se existir, será feito um novo sorteio, caso contrário, será adicionado. elif sorteio > '0' and sorteio < '61': for j in lista3: achou = False if sorteio != j: achou = True if achou == True: lista3.append (sorteio) teste = False
# coloca a lista em ordem alfabética lista3.sort () print '\n\nSORTEIO DA MEGA SENA\n' for i in lista3: print i,
|
| Ter Ago 25, 2009 1:16 pm |
|
 |
|
victor.p
Data de registro: Ter Nov 23, 2010 3:37 pm Mensagens: 1
|
 Re: Exercício
Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # Exericicio 1:
import random
lista = ["Victor", "Gabriela", "Thomas", "Guilherme", "Karlos", "Murilo", "Felipe", "Diego", "Thais", "Nicole"] for i in range(2): random.shuffle(lista) ultimo = lista.pop() print(ultimo)
# Exercicio 2:
n1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] n2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
for i in range(5): random.shuffle(n1) random.shuffle(n2) a = n1[0] b = n2[0] if (n1[0] == 0) and (n2[0] == 0): random.shuffle(n1) random.shuffle(n2) else: print("%d%d" %(a, b)) Bem simples, se tiver alguma coisa errado me avisa 
|
| Ter Nov 23, 2010 3:42 pm |
|
 |
|
calkines
Data de registro: Qua Mar 09, 2011 12:43 pm Mensagens: 2 ---------
|
 Re: Exercício
EXERCICIO - 1:
n=1 while n<2: random.shuffle(lista) win[0]=lista[0] print("Vencedor 1:",win[0].upper()) random.shuffle(lista) win[1]=lista[0] if win[0] == win[1]: print("Opa ganhar 2x n pode! Sr(a):",win[1].title()) ## ADCIONADO FRASE CASO GANHADOR SEJA SORTEADO 2X) random.shuffle(lista) win[1]=lista[0] print("Vencedor 2:",win[1].upper()) n=n+1
EXERCICIO - 2: n=0 while n<5: random.shuffle(seq1) win[0]=seq1[0] random.shuffle(seq2) win[1]=seq2[0] if (win[0] == "0") and (win[1] == "0"): print("****zero***") ##ADICIONADO FRASE CASO O ZERO APAREÇA random.shuffle(seq1) win[1]=seq1[0] print(win) n=n+1
Faz um tempo que o pessoal não posta mas como começei os estudos com python agora estou enviando as soluções que desenvolvi para os problemas, sei que a area não é a melhor mais gostaria de parabenizar a iniciativa e dizer que adimiro pessoas com a mesma pro-atividade que a de quem criou estes canais de aprendizado, obrigado.
|
| Qua Mar 09, 2011 12:55 pm |
|
|
Quem está online |
Usuários vendo este fórum: Nenhum usuário registrado online e 0 visitantes |
|
Você não pode criar novos tópicos neste fórum Você não pode responder tópicos neste fórum Você não pode editar suas mensagens neste fórum Você não pode excluir suas mensagens neste fórum Você não pode enviar anexos neste fórum
|
|
 |