Python - Primer multiplo de 11 en una lista dada

 
Vista:

Primer multiplo de 11 en una lista dada

Publicado por Donnes (5 intervenciones) el 27/09/2018 15:57:24
Hola a todos...

Estoy en el primer año de carrera en la uni y mi profesor de informatica va muy a saco, en mi vida he programado con python y despues de darle vueltas y vueltas y más vueltas, soy incapaz de ni imaginar como se puede hacer este ejercicio... si alguien pudiese ayudarme le estaria muy agradecido ya que con un ejemplo podria conseguir hacer el resto y aprender a usar todo el tema de los bucles...

Muchas gracias.

EJERCICIO
Implementa la función primer_multiplo_11 que recibe como argumento una secuencia de números enteros y devuelve el primer múltiplo de 11 que encuentre. Si no hay ninguno debe devolver None.

Nota: No debería importar de qué tipo de secuencia se trate. Debería funcionar con rangos, listas, tuplas, generadores, ...

PD: ESTOS SON LOS TEST QUE DEBE SUPERAR, teneis que descomentar la ultima parte de los test dependiendo del programa que useis.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from unittest import TestCase, main
 
class Test(TestCase):
   # primer_multiplo_11
   def test_primer_multiplo_11_15_300(self):
       self.assertEqual(primer_multiplo_11(range(15,300)), 22)
 
   def test_primer_multiplo_11_300_15(self):
       self.assertEqual(primer_multiplo_11(reversed(range(15,300))), 297)
 
   def test_primer_multiplo_11_12_22(self):
       self.assertEqual(primer_multiplo_11(range(12,22)), None)
 
   def test_primer_multiplo_11_vacio(self):
       self.assertEqual(primer_multiplo_11(range(1,1)), None)
           None
 
# Si usas Jupyter descomenta la última línea
# Si usas IDLE, Python o PyCharm descomenta la penultima
# main()
# main(argv=['first-arg-is-ignored'], exit=False)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 765
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Primer multiplo de 11 en una lista dada

Publicado por dario (185 intervenciones) el 27/09/2018 16:48:15
Esta es la funcion, pruebala.
Salu2,

1
2
3
4
5
def primer_multiplo_11(lista):
  for i in lista:
    if i % 11 == 0:
      return i
      break
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Primer multiplo de 11 en una lista dada

Publicado por Donnes (5 intervenciones) el 27/09/2018 19:12:52
Muchisimas gracias... fijate que tonteria era pero incapaz de hacerlo ya que estaba poniendo cosas extrañas, gracias!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Primer multiplo de 11 en una lista dada

Publicado por kip (257 intervenciones) el 27/09/2018 19:19:21
Dario no es necesario el break, al colocar el return la ejecución de la función finaliza y por ende la iteracion dentro de la misma.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 765
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Primer multiplo de 11 en una lista dada

Publicado por dario (185 intervenciones) el 28/09/2018 04:45:28
Gracias por la informacion Kip, no lo sabia.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar