randVar() [BLUE, RED, GREEN] 4 tabulate(function(){return randRangeUniqueNonZero(0,MAX_DEGREE,randRange(1,3)).sort().reverse()},2) tabulate(function(e){for(var r=[],t=0;MAX_DEGREE>=t;t++){for(var n=0,a=0;a<NON_ZERO_INDICES[e].length;a++)if(t===NON_ZERO_INDICES[e][a]){n=randRangeNonZero(-7,7);break}r[t]=n}return new Polynomial(0,MAX_DEGREE,r,X)},2) function(){for(var e=[],r=0,t=!1,n=POL_1.minDegree;n<=POL_1.maxDegree;n++)if(0!==POL_1.coefs[n])for(var a=POL_2.minDegree;a<=POL_2.maxDegree;a++)0!==POL_2.coefs[a]&&(void 0===e[n+a]?e[n+a]="":""===e[n+a]&&(e[n+a]=COLORS[r++],t=!0));return t?e:!1}() POL_1.multiply(POL_2)

Simplifica la expresión.

(POL)

SOLUTION.parsableText()

Primero utiliza la propiedad distributiva.

(POL_1.coefs[index1] < 0) ? "-" : (n1 === 0 && n2 === 0) ? "" : "+" abs(POL_1.coefs[index1]) === 1 ? "" : abs(POL_1.coefs[index1]) X^index1 ((POL_2.coefs[index2] === 1) ? "" : (POL_2.coefs[index2] === -1) ? "-" : POL_2.coefs[index2] X^index2)

Simplifica.

(POL_1.coefs[index1] * POL_2.coefs[index2] < 0) ? "-" : (n1 === 0 && n2 === 0) ? "" : "+" abs(POL_1.coefs[index1] * POL_2.coefs[index2])X^{index1 + index2}

SOLUTION

Identifica los términos similares.

\color{LIKE_TERMS[index1 + index2 ]} {(POL_1.coefs[index1] * POL_2.coefs[index2] < 0) ? "-" : (n1 === 0 && n2 === 0) ? "" : "+" abs(POL_1.coefs[index1] * POL_2.coefs[index2])X^{index1 + index2}}

Suma los coeficientes.

\color{LIKE_TERMS[SOLUTION.getCoefAndDegreeForTerm(n).degree]} {(SOLUTION.getCoefAndDegreeForTerm(n).coef < 0 || n === 0) ? "" : "+" expr(SOLUTION.expr()[n + 1])}