Vous êtes sur la page 1sur 5

Informe laboratorio

Integrantes:
Fecha: 06/10/17

Estructura de datos utilizada


Se defini un tipo de dato Struct con el fin de agrupar las variables
principales que contiene una estructura polinomial. Dada la siguiente
organizacin:

El Struct se basa en el principio matemtico del polinomio, en donde el


grado de un polinomio es de tipo Int (Entero) y el coeficiente es de tipo
Long (entero largo) pudiendo este ltimo tomar valores de un rango
ms alto.
Se decidi usar Struct para guardar el Coeficiente(coef) en un arreglo,
de esta forma se puede tener un mejor acceso a la estructura del
polinomio. Adems, como el Array trabaja siempre con memoria, este
hace que la ejecucin sea ms rpida.

Multiplicacin Clsica
Variables Struct:

Variables Int:

Algoritmo:
Se consideran dos polinomios P(x) y P(y). El primer proceso consiste
en analizar ambos polinomios para ver cul de los dos tiene el grado
mayor. Se toman en cuenta dos casos:
- P(x) P(y): Se copia P(y) y se guarda en la variable may(mayor)
Se copia P(x) y se guarda en la variable min(menor)

- P(x) P(y): Se copia P(x) y se guarda en la variable may(mayor)


Se copia P(y) y se guarda en la variable min(menor)

Luego:
Se suman los grados de P(x) y P(y) para guardarlos en la variable
mult.grado que indicar el resultado del grado para el polinomio
multiplicado.
En cuanto al coeficiente se utiliza la funcin calloc() para inicializar el
contenido del array desde 0. Hecho esto se guardara el resultado del
coeficiente multiplicado en mult.coef.
Hecho esto se entra a un ciclo for que contiene un i contador que
inicializa el Array del polinomio desde 0 hasta el grado mayor. Al
finalizar entra en un nuevo ciclo del mismo for, esta vez el contador
har el mismo proceso con el grado menor. De esta forma se ira
multiplicando el coeficiente de grado mayor con el coeficiente de grado
menor.
Al terminar retorna mult que contiene un polinomio multiplicado como
resultado final.

Multiplicacion con Decrease and Conquer

Multiplicacin con Dividir y Conquistar


Se consideran dos polinomios principales de tipo Struct: P(p) y P(q).
En donde se toma un primer caso el cual consta que el grado de
P(q) = 0. Cumpliendo esta sentencia se multiplicarn los coeficientes
de ambos coeficientes. Devolviendo un polinomio multiplicado como
resultado.
Luego, siguiendo el principio del teorema se recorre con un contador
i hasta las mitades de los polinomios P(p) y P(q) . En donde se
igualarn las mitades de P(q) y P(q) a p1. coef y q1. coef
respectivamente. Finalizado el ciclo, el contador entrara a un nuevo for
realizando el mismo proceso, pero esta vez para la mitad restante. Por
lo que tambin se guardaran las mitades restantes de P(p) y P(q) en
ph.coef y qh.coef respectivamente.

Recursividad:

Vous aimerez peut-être aussi