Números racionales

Los números racionales pueden representarse mediante pares de números enteros. Por ejemplo, el número 2/5 puede representarse mediante el par (2,5).

Definir las funciones

tales que

  • formaReducida x es la forma reducida del número racional x. Por ejemplo,

  • sumaRacional x y es la suma de los números racionales x e y, expresada en forma reducida. Por ejemplo,

  • productoRacional x y es el producto de los números racionales x e y, expresada en forma reducida. Por ejemplo,

  • igualdadRacional x y se verifica si los números racionales x e y son iguales. Por ejemplo,

Comprobar con QuickCheck la propiedad distributiva del producto racional respecto de la suma.

Soluciones

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


Soluciones en Haskell

El código se encuentra en GitHub.


Soluciones en Python

El código se encuentra en GitHub.