Solució del lliurament 1 G20 d’Ampliació d’Informàtica

Organització:

Secció ETSEIB, Departament de Ciències de la Computació, UPC

Data:

4 de març de 2026

Copyright:

Reconeixement-CompartirIgual 3.0 No adaptada de Creative Commons

Jocs de proves

Els exemples que compten per la nota són només els que van seguits de # doctesttag: +TAG=...

Tests exercici 1

>>> from codificacio import codifica_tuples_paraules
>>> it = iter([('res',[]),('nothing', [])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
>>> it = iter([('pep',['hi', -1, 3]),('anna', [3, '30', -2])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
***,***,peppeppep,annaannaanna,****,****,
>>> it = iter([('hola',[2,1]),('manel', [3,2,1])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
holahola,hola,manelmanelmanel,manelmanel,manel,
>>> it = iter([('hola',[-2,-1,-2]),('manel', [-3,-2])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
****,****,****,*****,*****,
>>> it = iter([('to',['be','or']),('not', ['to','be'])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
**,**,***,***,
>>> it = iter([('to',[1, 2, 'be','or']),('not', [3, 4, 'to','be'])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
to,toto,**,**,notnotnot,notnotnotnot,***,***,
>>> it = iter([('to',[1, -2, 'be','or']),('not', [-3, 4, 'to','be'])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
to,**,**,**,***,notnotnotnot,***,***,
>>> it = iter([('to',[1, -2, 'be', 3, 'or']),('not', [-3, 4, 'to', 5, 'be']), ('that', [2,3, -4, 'is', 2, '5', 'the', 'question'])])
>>> for x in codifica_tuples_paraules(it):
...    print(x, end=',') # doctesttag: +TAG=1_codificacio
to,**,**,tototo,**,***,notnotnotnot,***,notnotnotnotnot,***,thatthat,thatthatthat,****,****,thatthat,****,****,****,

Tests exercici 2

>>> from aparents import calcula_suma_aparents
>>> for x in calcula_suma_aparents(iter([7,7])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
1,
>>> for x in calcula_suma_aparents(iter([1,7])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
>>> for x in calcula_suma_aparents(iter([2,2,1,7])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
1,3,
>>> for x in calcula_suma_aparents(iter([2,2,14,7,1])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
1,3,10,
>>> for x in calcula_suma_aparents(iter([1,2,1,7,1,4,1,5])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
2,9,13,
>>> for x in calcula_suma_aparents(iter([6,1,2,1,7,1,4,1,5,1])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
6,8,15,19,24,
>>> for x in calcula_suma_aparents(iter([1,2,3,2,1,1,10,5,1,2,2])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
2,3,5,10,11,
>>> for x in calcula_suma_aparents(iter([6,2,1,2,5,6,7,3,2,1,1,10,5,1,2,2,1,1,10,2])):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
3,5,7,8,10,15,16,18,19,24,
>>> for x in calcula_suma_aparents(iter(range(1,20))):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
>>> for x in calcula_suma_aparents(iter([2,1,4]*20)):
...    print(x,end=',')  # doctesttag: +TAG=2_aparents
2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,