Polinomios X28265


Statement
 

pdf   zip

Un polinomio se puede representar por una lista de coeficientes ordenados por grado (de menor a mayor). Por ejemplo, el polinomio 4x31+2x+2x53x24x^3 -1 + 2x + 2x^5 - 3x^2 se puede representar con la lista [1,2,3,4,0,2][-1, 2, -3 , 4 , 0, 2]. Un monomio es un polinomio de un solo término. Por ejemplo 2x3-2x^3 es un monomio cuya representación como lista es [0,0,0,2][0, 0, 0, -2]. Notad que si el polinomio no es nulo, la lista que lo representa tiene como longitud exactamente el grado del polinomio mas uno. El polinomio nulo se representa con la lista vacía.

Diseñad las funciones que se piden a continuación. En todos los casos supondremos que los polinomios de entrada no son nulos. Aunque no es una hipótesis crucial, supondremos que los coeficientes de los polinomios de entrada son números enteros.

  1. Escribid una función @derivada(p)@ que dada la lista @p@ que codifica a un polinomio retorne la lista de coeficientes que corresponden al polinomio que se obtiene al hacer la derivada del primero.

  2. Diseñad una función @producto_monomio(p, m)@ que dadas dos listas, pp que codifican un polinomio y mm que representa un monomio, retorne la lista de coeficientes que corresponde al polinomio resultante de multiplicar @p@ por @m@.

  3. Diseñad una función @suma(p,q)@ que retorne la suma de los polinomios pp y qq.

  4. Haciendo uso de las dos funciones anteriores, diseñad una función @producto(p, q)@ que compute el producto de los polinomios pp y qq.

Puntuación

Cada apartado vale 25 puntos.

Ejemplo de sessión

Sample session
>>> derivada([-1, 5, -2, 3])
[5, -4, 9]
>>> producto_monomio([1,3,2], [0,0,0,0,3])
[0, 0, 0, 0, 3, 9, 6]
>>> suma([1, 1], [-2, -1 , 0, 3])
[-1, 0, 0, 3]
>>> suma([2, 1, -1, 2], [-1, 1, 1, -2])
[1, 2]
>>> suma([0, 1], [0, -1])
[]
>>> producto([1, 1], [1, -1])
[1, 0, -1]
>>> producto([2, 0, 1], [1, -1, 1, 2])
[2, -2, 3, 3, 1, 2]
>>> producto([1, 2, 3, 4], [-1])
[-1, -2, -3, -4]
Information
Author
InfBesos
Language
Spanish
Official solutions
Python
User solutions
Python