2. Recursivitat: Eliminar elements d’una llista (2 Punts)

Avís

Per a resoldre aquest exercici no es poden fer servir iteracions (ni for ni while ), només funcions recursives.

Utilitzant la recursivitat, dissenyeu la funció següent i deseu-la al mòdul eliminacio (fitxer eliminacio.py):

eliminacio.elimina_n(lini, n)
Paràmetres:
  • lini (list) – Llista d’elements.

  • n (int) – enter estrictament positiu.

Retorna:

Retorna una nova llista que conté els mateixos elements, i en el mateix ordre, que lini. exceptuant aquells que estan en una posició qué es un múltiple de n.

Recodeu que la posició del primer element d’una llista val zero.

Per exemple,


>>> elimina_n([0, 1, 2, 3, 4, 5, 6, 7, 8], 2)
[1, 3, 5, 7]
>>> elimina_n([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], 5)
[1, 2, 3, 4, 6, 7, 8, 9, 11, 12]
>>> elimina_n(list('desoxiribonucleic'), 3)
['e', 's', 'x', 'i', 'i', 'b', 'n', 'u', 'l', 'e', 'c']

Disposeu de més jocs de prova en el fitxer tests-elimina.txt.