From 227ce7f3207e963c6580ac39f8286ca47a787195 Mon Sep 17 00:00:00 2001 From: Matthew Strapp Date: Wed, 11 Sep 2019 16:07:13 -0500 Subject: Almost done --- csci1913/lab1/lab1_strap012.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'csci1913/lab1') diff --git a/csci1913/lab1/lab1_strap012.py b/csci1913/lab1/lab1_strap012.py index 0e89112..e04cf82 100644 --- a/csci1913/lab1/lab1_strap012.py +++ b/csci1913/lab1/lab1_strap012.py @@ -25,7 +25,7 @@ def solve(v, e): def solving(v,q): if left(q)==v: return q - elif type(left(q)): + elif type(left(left(q))) is not tuple: if op(left(q))=='+': return solvingAdd(v, q) elif op(left(q))=='-': @@ -34,30 +34,33 @@ def solving(v,q): return solvingMultiply(v, q) elif op(left(q))=='/': return solvingDivide(v, q) + else: + solving(v,left(q)) def solvingAdd(v,q): if isInside(v, left(left(q))): - return (left(left(q)), '=', (right(q), '-', right(left(q)))) + return left(left(q)), '=', (right(q), '-', right(left(q))) else: - return (right(left(q)), '=', (right(q), '-', left(right(q)))) + return right(left(q)), '=', (right(q), '-', left(left(q))) def solvingSubtract(v,q): if isInside(v, left(left(q))): - return left(left(q)) + return left(left(q)), '=', (right(q), '+', right(left(q))) else: - return right(left(q)) + return right(left(q)), '=', (left(left(q)), '-', right(q)) def solvingMultiply(v,q): if isInside(v, left(left(q))): - return left(left(q)) + return left(left(q)), '=', (right(q), '/', right(left(q))) else: - return right(left(q)) + return right(left(q)), '=', (right(q), '/', left(left(q))) def solvingDivide(v,q): if isInside(v, left(left(q))): - return left(left(q)) + return left(left(q)), '=', (right(q), '*', right(left(q))) else: - return right(left(q)) + return right(left(q)), '=', (left(left(q)), '/', right(q)) + # # TESTS. Test the equation solver for CSci 1913 Lab 1. -- cgit v1.2.3