Multiplicació de dues sèries *(5 punts)* ======================================== .. module:: multseq .. warning:: Per a resoldre aquest exercici **no es poden fer servir iteracions (ni** ``for`` **ni** ``while`` **)**, només les :ref:`funcions predefinides ` de Python i les dels mòduls :py:mod:`itertools`, :py:mod:`functools` i :py:mod:`operator`. **Tampoc no es poden fer servir llistes**, tuples, diccionaris ni cap altra estructura de dades **per a desar els elements d'un iterador**. Tenim dues seqüències de nombres i volem calcular els productes de cadascun dels elements i-èssims de les dues seqüències. Per exemple, els productes de la seqüència :py:const:`2, 3, 5` amb la seqüència :py:const:`10, 20, 30` són els nombres :py:const:`20, 60, 150`. Ara bé, resulta que les dues seqüències no tenen sempre la mateixa llargada; en aquest cas, els productes cal calcular-los per a tots els elements de la més curta però conservar els valors de la seqüència més llarga quan arribem al final de la més curta. Per exemple, els productes de la seqüència :py:const:`2, 3, 5` amb la seqüència :py:const:`10, 20, 30, 70, 20` són els nombres :py:const:`20, 60, 150, 70, 20`. Es demana que, en un fitxer anomenat :file:`multseq.py`, hi deseu la funció especificada a continuació: .. function:: productes_seq(it1, it2) :param it1: iterable sobre una seqüència de nombres enters. :param it2: iterable sobre una altra seqüència de nombres enters. :return: un iterador sobre els productes dels elements de `it1` amb els de `it2`, fins arribar al final de la seqüència més llarga, tal com s'ha descrit. Per exemple: .. literalinclude:: tests-prods.txt :language: python :start-after: --ini-enunciat :end-before: --fi-enunciat Disposeu d'un joc de proves més complet al fitxer :download:`tests-prods.txt` .. note:: Per a resoldre aquest exercici us pot ser útil fer servir la :py:func:`itertools.zip_longest`, entre altres.