randRangeNonZero(-10,10) randRangeNonZero(-10,10)
1 SQUARE*A*B A*B SQUARE*(-A-B) -A-B

פרק לגורמים את הביטוי הבא:

plus(SQUARE+"x^2") + plus(LINEAR+"x") + CONSTANT

^\s*\(\s*[xX]\s*A<0?"\\+":"[-−]"\s*abs(A)\s*\)\s*\(\s*[xX]\s*B<0?"\\+":"[-−]"\s*abs(B)\s*\)\s*$
^\s*\(\s*[xX]\s*B<0?"\\+":"[-−]"\s*abs(B)\s*\)\s*\(\s*[xX]\s*A<0?"\\+":"[-−]"\s*abs(A)\s*\)\s*$
ביטוי מפורק לגורמים, לדוגמא (x+1)(x+2)

כאשר אנו מפרקים פולינום לגורמים, אנו עושים פעולה הופכית לפעולת המכפלה של הגורמים:

\qquad \begin{eqnarray} (x + a)(x + b) \quad&=&\quad xx &+& xb + ax &+& ab \\ \\ &=&\quad x^2 &+& \color{GREEN}{(a + b)}x &+& \color{BLUE}{ab} \end{eqnarray}

\qquad \begin{eqnarray} \hphantom{(x + a)(x + b) \quad}&\hphantom{=}&\hphantom{\quad xx }&\hphantom{+}&\hphantom{ (a + b)x }&\hphantom{+}& \\ &=&\quad x^2 & SIMPLELINEAR>=0?"+":""& plus("\\color{"+GREEN+"}{"+SIMPLELINEAR+"}x")& SIMPLECONSTANT>=0?"+":""& plus("\\color{"+BLUE+"}{"+SIMPLECONSTANT+"}") \end{eqnarray}

המקדם של x הוא SIMPLELINEAR והמקדם החופשי הוא SIMPLECONSTANT, אז כדי לעשות פעולה הופכית למכפלה ולמצוא את הגורמים, עלינו לחפש שני מספרים אשר הסכום שלהם שווה SIMPLELINEAR והמכפלה שלהם שווה SIMPLECONSTANT.

אפשר לנסות ולמצוא שני גורמים של SIMPLECONSTANT המקיימים את שני התנאים. אם לא מצאת גורמים מתאימים, אפשר לכתוב את התנאים כמערכת משוואות ולפתור עבור a ועבור b:

\qquad \color{PINK}{a} + \color{PINK}{b} = \color{GREEN}{SIMPLELINEAR}

\qquad \color{PINK}{a} \times \color{PINK}{b} = \color{BLUE}{SIMPLECONSTANT}

המספרים הבאים -A ו--B מקיימים את שני התנאים:

\qquad \color{PINK}{-A} + \color{PINK}{-B} = \color{GREEN}{SIMPLELINEAR}

\qquad \color{PINK}{-A} \times \color{PINK}{-B} = \color{BLUE}{SIMPLECONSTANT}

כלומר אפשר לפרק את הביטוי לגורמים באופן הבא: (x A<0?"+":"" \color{PINK}{-A}) (x B<0?"+":"" \color{PINK}{-B})

אתם צופים בבעיה. כדי לעבוד על בעיות מסוג זה, התחילו תרגיל זה.
צריכים עזרה? בקשו רמז.