Mostreja¶
Avís
Per a resoldre aquest exercici no es poden fer servir
iteracions (ni for
ni while
), només
les funcions predefinides de
Python i les dels mòduls itertools
,
functools
i operator
. Tampoc es
poden fer servir llistes, tuples, diccionaris ni cap
altra estructura de dades per a desar tots els elements
dels iteradors.
Volem mostrejar una funció corresponent a un polinomi de segon grau de
la forma x²+bx+c
per un conjunt infinit de valors x
que s’inicien en
un valor donat, xini
, i a intervals també d’un valor donat, pas
.
Dissenya la funció següent:
- mostreja.mostreja(b, c, xini, pas)¶
Donats els valors de b
, c
, xini
i pas
(tots enters),
tal com s’han descrit, retorna un iterador infinit de tuples de la
forma (x, y)
corresponents als punts mostrejats. Exemples:
>>> from mostreja import * >>> it = mostreja(2, 5, 1, 1) >>> for i in range(4): ... print(next(it), end = '/') (1, 8)/(2, 13)/(3, 20)/(4, 29)/ >>> it = mostreja(2, 5, 2, 2) >>> for i in range(4): ... print(next(it), end = '/') (2, 13)/(4, 29)/(6, 53)/(8, 85)/ >>> it = mostreja(0, 0, 0, 1) >>> for i in range(10): ... print(next(it), end = '/') (0, 0)/(1, 1)/(2, 4)/(3, 9)/(4, 16)/(5, 25)/(6, 36)/(7, 49)/(8, 64)/(9, 81)/
Disposeu de jocs de prova en els fitxers test-mostreja.txt
i test-mostreja2.txt
.
Solució
Disposeu d’una solució al fitxer mostreja.py
.