A graphical program to solve mathematical equations and visualize their intersections through plotting.
Takes as input two equations of x
, solves them, and plots the equations with their solutions.
- Graphical user interface (GUI) with input validation
- Supports equation solving and intersection point detection
- Interactive matplotlib plots embedded in the GUI
- Error handling with user-friendly messages
- Cross-platform compatibility (Windows/Linux)
Operation | Symbol/Function | Example |
---|---|---|
Addition | + |
x + 3 |
Subtraction | - |
5 - x |
Multiplication | * |
2 * x |
Division | / |
x / 4 |
Exponentiation | ^ |
x^2 |
Square root | sqrt() |
sqrt(x + 1) |
Logarithm base10 | log10() |
log10(2*x) |
- Python 3.10+ (recommended)
- PySide2 (GUI framework)
- Matplotlib (Plotting)
- NumPy (Numerical operations)
- SciPy (Equation solving)
- SymPy (Symbolic mathematics)
- Clone the repository
git clone https://github.com/Apolo151/equation-solver
cd equation-solver
- Setup the virtual environment
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
- Install the required packages
pip install -r requirements.txt
- Run the program
python3 app.py # or python app.py
- Enter the two equations in the input fields
- Click on the "Solve and Plot" button to solve the equations
- The solutions will be displayed in the output plot
To run the tests, use the following command:
pytest tests/* --cov=solver --cov=parser --cov=plotter --cov-report=term-missing