randRangeNonZero(-5, 5) randRangeNonZero(-5, 5) randRangeNonZero(-5, 5) randRangeNonZero(-5, 5) "\\pink{" + A_REAL + "}" "\\pink{" + coefficient(A_IMAG) + "i}" "\\blue{" + B_REAL + "}" "\\blue{" + coefficient(B_IMAG) + "i}" "\\pink{" + complexNumber(A_REAL, A_IMAG) + "}" "\\blue{" + complexNumber(B_REAL, B_IMAG) + "}" (A_REAL * B_REAL) - (A_IMAG * B_IMAG) (A_REAL * B_IMAG) + (A_IMAG * B_REAL)

Multiply and simplify the following complex numbers:

`(A_REP) \cdot (B_REP)`

ANSWER_REAL + ANSWER_IMAGi

Complex numbers are multiplied like any two binomials.

First use the distributive property:

`\qquad (A_REP) \cdot (B_REP) =`
`\qquad \qquad (A_REAL_COLORED \cdot B_REAL_COLORED) + (A_REAL_COLORED \cdot B_IMAG_COLORED) + (A_IMAG_COLORED \cdot B_REAL_COLORED) + (A_IMAG_COLORED \cdot B_IMAG_COLORED)`

Then simplify the terms:

`\qquad (A_REAL * B_REAL) + (coefficient(A_REAL * B_IMAG)i) + (coefficient(A_IMAG * B_REAL)i) + (coefficient(A_IMAG * B_IMAG)i^2)`

Imaginary unit multiples can be grouped together.

`\qquad A_REAL * B_REAL + (A_REAL * B_IMAG + A_IMAG * B_REAL)i + coefficient(A_IMAG * B_IMAG) i^2`

After we plug in `i^2 = -1`, the result becomes

`A_REAL * B_REAL + (A_REAL * B_IMAG + A_IMAG * B_REAL)i - negParens( A_IMAG * B_IMAG )`

The result is simplified: `(A_REAL * B_REAL - A_IMAG * B_IMAG) + (ANSWER_IMAGi) = complexNumber( ANSWER_REAL, ANSWER_IMAG)`