Programación de multiplicación de polinomios tema especial lenguaje c
Al ingresar los coeficientes de dos fórmulas, puedes usar # como símbolo final de la entrada.
¿Ciel? ch = "0";
Y (ch!='#'-'0')
{
scanf(c, ampch); p> p>
ch-="0";
}
El valor real se almacena en ch obtenido a través de cada ciclo del algoritmo anterior.
Encuentra una manera de ponerlo en las matrices p y q
Si los dígitos de p, q y s son pi, qi y si respectivamente.
si = pi qi;? //La potencia de s debe ser la suma de P y q.
pyq se suman a la potencia de x y se almacenan en la posición correspondiente de s.
En cuanto a los coeficientes de entrada.
Si no hay requisitos especiales, la entrada se puede ordenar en orden ascendente mediante x.
De esta manera, p[0] almacena la potencia 0 y p[1] almacena la potencia 1. ...
Las tres matrices se pueden organizar así.
Es conveniente para el cálculo y se puede obtener el número final de términos, es decir (potencia 1), representado por si.
Cálculo del coeficiente s(x)
La potencia cuadrática de x y m corresponde exactamente a s[? ]Subíndice
for(m = 0; m lt= sim)? //Calcular la matriz s[? ]
for(I = 0; i lt= m; i)
s[m]= p[I] q[m-I];
Entonces El rendimiento debería ser suficiente.
¿Probablemente sea eso?
========================
El programa fuente está aquí, ¿Win7 C-Free? Prueba 5.0 superada
Toma una captura de pantalla primero
#¿Incluir? ltstdio.hgt?
#¿Incluir? ltstring.h gt
#¿Definición? Maxlen? 20?//¿Longitud de la matriz?
¿Anulado? aporte();? //Ingrese P/Q?
¿Anulado? múl();? // ¿Multiplicación de polinomios?
¿Anulado? producción();? //Salidas?
int? main(void)
{
¿Flotador? p[MAXLEN], q[MAXLEN],? //p, q elementos de entrada son los coeficientes del polinomio original.
s[MAXLEN lt; lt2]; //Los elementos en S son los polinomios de salida.
int? sn, pn, qn; //¿Cuáles son los grados de los polinomios respectivamente?
sistema("cls");?
printf(" \ n \ n Ingrese el número de veces P(x) (entero positivo)): ";? //¿Entrada P(x)?
scanf("d ", amppn);
printf("\nIngrese el coeficiente de P(x), ordene P(x:\n") en orden descendente;
p>
pn; //Número de elementos = multiplicado por 1
Entrada(p, pn); ;
printf(" \ n \ nIngrese el número de veces Q(x) (entero positivo)): "; //Ingrese Q(x)? d ", ampqn);
printf("\nIngrese los coeficientes de Q(x) y ordene Q(x) en orden descendente:\n ");
qn; / /Número de términos = multiplicado por 1?
input(q, qn);
printf(" \ n "); 2); //S grado del polinomio
int? //S inicialización de la matriz? (I = 0; i ltsn 1; i)
s[I ]= 0; /p>
mul(p, q, s, pn, qn); //¿Hacer multiplicación de polinomios?
Salida (s, sn 1); //Salida s? p>printf(" \ n ");
getch();
Devuelve 1;
}
nulo? float?*p,int?t)
{
int?
¿Para qué? ltt;i)? ]);
}
void? mul(float?*p, float?*q, float?*s ,? int? n)
int ? (I = 0; i ltm; I )//Escanear el coeficiente P(x)
¿Para qué (j = 0; j ltn; J )//Escanear el coeficiente Q(x)?
s[I j] = p[I]* q[j];
}
¿Salida no válida (punto flotante? *s, int) ? t)
{
int? me;
Printf("\nEl coeficiente S(x) es (S(x) en orden descendente):\n ");
¿Por qué ? (I = 0; iltt; i)?
printf(".2f\t ", s[I]);
}
Woohoo ~~Finalmente completado~~