El tipo de las expresiones aritméticas con variables

1. El tipo de las expresiones aritméticas con variables en Haskell

La expresión 2*(a+5) puede representarse por

usando el tipo de las expresiones aritméticas con variables definido como se muestra a continuación.

2. El tipo de las expresiones aritméticas con variables en Python

La expresión 2*(a+5) puede representarse por

usando el tipo de las expresiones aritméticas con variables definido como se muestra a continuación.

Número de variables de una expresión aritmética

Las expresiones aritméticas construidas con una variable (denotada por X), los números enteros y las operaciones de sumar y multiplicar se pueden representar mediante el tipo de datos Expr definido por

Por ejemplo, la expresión X·(13+X) se representa por

Definir la función

tal que numVars e es el número de variables en la expresión e. Por ejemplo,

Soluciones

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


Soluciones en Haskell


Soluciones en Python

Valor de una expresión aritmética con una variable

Las expresiones aritméticas construidas con una variable (denotada por X), los números enteros y las operaciones de sumar y multiplicar se pueden representar mediante el tipo de datos Expr definido por

Por ejemplo, la expresión X·(13+X) se representa por

Definir la función

tal que valor e n es el valor de la expresión e cuando se sustituye su variable por n. Por ejemplo,

Soluciones

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


Soluciones en Haskell


Soluciones en Python

Tipo de expresiones aritméticas con una variable

1. El tipo de las expresiones aritméticas con una variable en Haskell

La expresión X·(13+X) se representa por

usando el tipo de las expresiones aritméticas con una variable (denotada por X) que se define como se muestra a continuación,

2. El tipo de las expresiones aritméticas con una variable en Python

La expresión X*(13+X) se representa por

usando el tipo de las expresiones aritméticas con una variable (denotada por X) que se define como se muestra a continuación,

Aplicación de una función a una expresión aritmética

Usando el tipo de las expresiones aritméticas básicas, definir la función

tal que aplica f e es la expresión obtenida aplicando la función f a cada uno de los números de la expresión e. Por ejemplo,

Soluciones

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


Soluciones en Haskell


Soluciones en Python