Pascal/Turbo Pascal - Producto de polinomios

 
Vista:

Producto de polinomios

Publicado por Pascual (94 intervenciones) el 30/03/2005 17:28:49
PROCEDURE prod_pol (a,b: tApArray; VAR c: tApArray; dima, dimb: tdimp; VAR dimt: tdimp);
VAR
i, j, indice: integer;
aux: tApArray;
BEGIN
New (c);
New (aux);
dimt:=dima+dimb;
FOR i:=0 TO dima DO
Writeln (a^[i]);
Writeln;
FOR j:=0 TO dimb DO
Writeln (b^[j]);
Writeln;
FOR i:=0 TO dima DO
FOR j:=0 TO dimb DO
BEGIN
indice:=i+j;
c^[indice]:=a^[i]*b^[j]+aux^[indice];
Writeln (a^[i],'*',b^[j],'=',c^[indice],'*X^',indice);
END;
Writeln;
END;

He hecho esto para multiplicar polinomios pero no me los multiplica bien, no se bien que fórmula meterle. Ayuda please.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ya casi lo tengo

Publicado por Pascual (94 intervenciones) el 30/03/2005 20:33:44
PROCEDURE prod_pol (a,b: tApArray; VAR c: tApArray; dima, dimb: tdimp; VAR dimt: tdimp);
VAR
i, j, indice: integer;
aux: tApArray;
BEGIN
New (c);
New (aux);
dimt:=dima+dimb;
FOR i:=0 TO dima DO
Writeln (a^[i]);
Writeln;
FOR j:=0 TO dimb DO
Writeln (b^[j]);
Writeln;
FOR i:=0 TO dima DO
FOR j:=0 TO dimb DO
BEGIN
indice:=i+j;
c^[indice]:=a^[i]*b^[j]+aux^[indice];
aux^[indice]:=a^[i]*b^[j]
Writeln (a^[i],'*',b^[j],'=',c^[indice],'*X^',indice);
END;
Writeln;
END;

Funciona mejor pero sigue sin funcionar del todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¡¡¡Lo tengo!!!

Publicado por Pascual (94 intervenciones) el 30/03/2005 20:43:43
PROCEDURE prod_pol (a,b: tApArray; VAR c: tApArray; dima, dimb: tdimp; VAR dimt: tdimp);
VAR
i, j, indice: integer;
aux: tApArray;
BEGIN
New (c);
New (aux);
dimt:=dima+dimb;
FOR i:=0 TO dima DO
Writeln (a^[i]);
Writeln;
FOR j:=0 TO dimb DO
Writeln (b^[j]);
Writeln;
FOR i:=0 TO dima DO
FOR j:=0 TO dimb DO
BEGIN
indice:=i+j;
c^[indice]:=a^[i]*b^[j]+aux^[indice];
aux^[indice]:=c^[indice];
Writeln (a^[i],'*',b^[j],'=',c^[indice],'*X^',indice);
END;
Writeln;
END;

Funciona del todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cómo lo haría para hacerlo con una lista enlazada?

Publicado por Pascual (94 intervenciones) el 30/03/2005 20:49:10
Si quisiera implementar esto mismo usando una lista enlazada ordenada ¿cómo lo haría?.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¡¡¡Lo tengo!!!

Publicado por howard (1 intervención) el 13/07/2011 20:14:48
hola que tal .... cuendo intento correr el programa que dice que no identifica la variable taparray .. se separa o que ??? me gustaria que me ayudaces con un programa que tengo que hacer ... el programa tiene que sumar , restar , dividir , multiplicar polinomios .. y estos polinimios sean enteros y los exponentes tambien
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar