TAD de los polinomios: Construcción de términos

Usando el tipo abstracto de los polinomios, definir la función

tal que (creaTermino n a) es el término a*x^n. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de los polinomios: Transformaciones entre polinomios y listas densas

Utilizando el tipo abstracto de datos de los polinomios definir las funciones

tales que

  • densaApolinomio xs es el polinomio cuya representación densa es xs. Por ejemplo,

  • polinomioAdensa p es la representación densa del polinomio p. Por ejemplo,

Comprobar con QuickCheck que ambas funciones son inversas.

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de los polinomios: Coeficiente del término de grado k

Utilizando el tipo abstracto de datos de los polinomios definir la función

tal que coeficiente k p es el coeficiente del término de grado k del polinomio p. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de los polinomios: Transformaciones entre polinomios y listas dispersas

Utilizando el tipo abstracto de datos de los polinomios definir las funciones

tales que

  • dispersaApolinomio ps es el polinomiocuya representación dispersa es ps. Por ejemplo,

  • polinomioAdispersa p es la representación dispersa del polinomio p. Por ejemplo,

Comprobar con QuickCheck que ambas funciones son inversas.

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python

TAD de los polinomios: Transformaciones entre las representaciones dispersa y densa

Definir las funciones

tales que

  • densaAdispersa xs es la representación dispersa del polinomio cuya representación densa es xs. Por ejemplo,

  • dispersaAdensa ps es la representación densa del polinomio cuya representación dispersa es ps. Por ejemplo,

Comprobar con QuickCheck que las funciones densaAdispersa y dispersaAdensa son inversas.

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python