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.
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


0