randRangeNonZero( -10, 10 ) randRangeNonZero( -10, 10 ) randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) A1 * X + B1 * Y 1 randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) A2 * X + B2 * Y B1 * C2 > 0 ? "-" : "+" A1 * X > 0 ? "-" : "+"

Solve for x and y using substitution.

\color{BLUE}{expr(["+", ["*", A1, "x"], ["*", B1, "y"]]) = C1}
\color{GREEN}{y = expr(["+", ["*", -A2, "x"], C2])}

x = X

y = Y

Since y has already been solved for, substitute expr(["+", ["*", -A2, "x"], C2]) for y in the first equation.

\color{BLUE}{expr(["*", A1, "x"]) + B1-}\color{GREEN}{(expr(["+", ["*", -A2, "x"], C2]))}\color{BLUE}{= C1}

Simplify and solve for x.

expr(["+", ["*", A1, "x"], ["*", B1 * -A2, "x"]]) + B1 * C2 = C1

expr(["+", ["*", A1 + B1 * -A2, "x"], B1 * C2]) = C1

expr(["+", ["*", A1 + B1 * -A2, "x"], B1 * C2])\color{BLUE}{SIGN_1abs( B1 * C2 )} = C1\color{BLUE}{SIGN_1abs( B1 * C2 )}

expr(["*", A1 + B1 * -A2, "x"]) = C1 - B1 * C2

\dfrac{expr(["*", A1 + B1 * -A2, "x"])}{\color{BLUE}{A1 + B1 * -A2}} = \dfrac{C1 - B1 * C2}{\color{BLUE}{A1 + B1 * -A2}}

\color{red}{x = X}

Now that you know \color{red}{x = X}, plug it back into \thinspace \color{GREEN}{y = expr(["+", ["*", -A2, "x"], C2])}\thinspace to find y.

\color{GREEN}{y = -A2-}\color{red}{(X)}\color{GREEN}{ + C2}

y = -A2 * X + C2

y = Y

You can also plug \color{red}{x = X} into \thinspace \color{BLUE}{expr(["+", ["*", A1, "x"], ["*", B1, "y"]]) = C1}\thinspace and get the same answer for y:

\color{BLUE}{A1-}\color{red}{(X)}\color{BLUE}{ + expr(["*", B1, "y"]) = C1}

\color{ORANGE}{y = Y}

randRangeNonZero( -10, 10 ) randRangeNonZero( -10, 10 ) randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) A1 * X + B1 * Y 1 randRange( 1, 6 ) * randRangeNonZero( -1, 1 ) A2 * X + B2 * Y A1 * C2 > 0 ? "-" : "+" B1 * Y > 0 ? "-" : "+"

Solve for x and y using substitution.

\color{BLUE}{expr(["+", ["*", A1, "x"], ["*", B1, "y"]]) = C1}
\color{GREEN}{x = expr(["+", ["*", -B2, "y"], C2])}

x = X

y = Y

Since x has already been solved for, substitute expr(["+", ["*", -B2, "y"], C2]) for x in the first equation.

\color{BLUE}{A1-}\color{GREEN}{(expr(["+", ["*", -B2, "y"], C2]))}\color{BLUE}{+ expr(["*", B1, "y"]) = C1}

Simplify and solve for y.

expr(["+", ["*", A1 * -B2, "y"], A1 * C2]) + expr(["*", B1, "y"]) = C1

expr(["+", ["*", A1 * -B2 + B1, "y"], A1 * C2]) = C1

expr(["+", ["*", A1 * -B2 + B1, "y"], A1 * C2])\color{BLUE}{SIGN_1abs( A1 * C2 )} = C1\color{BLUE}{SIGN_1abs( A1 * C2 )}

expr(["*", A1 * -B2 + B1, "y"]) = C1 - A1 * C2

\dfrac{expr(["*", A1 * -B2 + B1, "y"])}{\color{BLUE}{A1 * -B2 + B1}} = \dfrac{C1 - A1 * C2}{\color{BLUE}{A1 * -B2 + B1}}

\color{ORANGE}{y = Y}

Now that you know \color{ORANGE}{y = Y}, plug it back into \thinspace \color{GREEN}{x = expr(["+", ["*", -B2, "y"], C2])}\thinspace to find x.

\color{GREEN}{x = -B2-}\color{ORANGE}{(Y)}\color{GREEN}{ + C2}

x = -B2 * Y + C2

\color{red}{x = X}

You can also plug \color{ORANGE}{y = Y} into \thinspace \color{BLUE}{expr(["+", ["*", A1, "x"], ["*", B1, "y"]]) = C1}\thinspace and get the same answer for x:

\color{BLUE}{expr(["*", A1, "x"]) + B1-}\color{ORANGE}{(Y)}\color{BLUE}{= C1}

\color{red}{x = X}