Problema Pigmind resolvido [Verificador d noves]

11 views
Skip to first unread message

Juan Enrique

unread,
Aug 22, 2014, 7:24:11 AM8/22/14
to garoa-...@googlegroups.com, hugo....@gmail.com
Fernando, Hugo e menino de 16 anos (desculpa, nao lembro teu nome, hehe!),

Acho que agora deu certo esse contador de noves. Teve q fazer um for para converter uma lista grande em uma menor. Acho q a sacada minha foi usar o lista.count(9) para identificar si alguem da lista e '9'.

# D. array_front9
# verifica se pelo menos um dos quatro primeiros é nove
# array_front9([1, 2, 9, 3, 4]) -> True
# array_front9([1, 2, 3, 4, 9]) -> False
# array_front9([1, 2, 3, 4, 5]) -> False

def array_front9(nums):
  l=len(nums)
#listas com numero de elementos mayor q 4# 
  if l>4:
    for i in range(l-4):  ##Eu fez esse for para converter a lista a uma de 4 elementos##
      nums.remove(nums[-i-1])
    if nums.count(9) > 0: ## O nums.count verifica se algum elemento e '9'##
      return True
    else:
      return False
#listas com numero de elementos menor o igual q 4# 
  elif l<=4:
    if nums.count(9) > 0:
      return True
    else:
      return False

 Ainda assim, acho q e meio longo. Qual foi o codigo de voces?

Juan E.

Vitor Fernandes

unread,
Aug 23, 2014, 2:02:51 PM8/23/14
to garoa-...@googlegroups.com, Hugo Lima Borges
Então... não testei seu código, mas esse aqui funciona e é mais simples.
def array_front9(nums):
  max_range = len(nums) if len(nums) < 4 else 4
  for i in range(max_range):
    if nums[i] == 9:
      return True
  return False




--
Você recebeu essa mensagem porque está inscrito no grupo quot;garoa-python" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para garoa-python...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/garoa-python.



--
Vitor Fernandes
Tel: 11-97551-2079
Administração de Empresas

Leonardo Santagada

unread,
Aug 23, 2014, 7:45:04 PM8/23/14
to garoa-...@googlegroups.com, Hugo Lima Borges
Se é pra descobrir se tem um 9 nos primeiros 4 elementos de uma lista ai vai o código mais idiomatico python

def list_front9(nums):
  return 9 in nums[:4]

uma linha só :)


--

Leonardo Santagada

Luciano Ramalho

unread,
Aug 23, 2014, 8:03:18 PM8/23/14
to garoa-...@googlegroups.com, Hugo Lima Borges
Santagada, estou muito a fim de bater um papo com você sobre essa
questão que tem a ver com os exercícios do Masanori no Python para
Zumbis. Mas nesse momento não tenho tempo de elaborar mais. Vamos
tomar uma cerveja um dia desses!

[ ]s
Luciano
> --
> Você recebeu essa mensagem porque está inscrito no grupo quot;garoa-python"
> dos Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para garoa-python...@googlegroups.com.
> Acesse esse grupo em http://groups.google.com/group/garoa-python.



--
Luciano Ramalho
Twitter: @ramalhoorg

Professor em: http://python.pro.br
Twitter: @pythonprobr

gfth...@hotmail.com

unread,
Aug 24, 2014, 10:55:37 PM8/24/14
to garoa-...@googlegroups.com, hugo....@gmail.com
O meu código ficou assim: 

def array_front9(nums):
  for i in range(len(nums)):
    if i == 4:
      break     

Vitor Fernandes

unread,
Aug 25, 2014, 1:06:09 PM8/25/14
to garoa-...@googlegroups.com, Hugo Lima Borges
A questão é que a lista pode ter de 1 elemento até 10 e só interessam se o 9 for detectado em uma das 4 primeiras posições.


--
Você recebeu essa mensagem porque está inscrito no grupo quot;garoa-python" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para garoa-python...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/garoa-python.



--
Reply all
Reply to author
Forward
0 new messages