ISGC (Interactive Scientific and Graphing Calculator) is a robust application combining scientific computation with graphing functionality. Built using the SFML (Simple and Fast Multimedia Library) for interactive graphics and the exprtk library for mathematical expression parsing, ISGC enables users to perform advanced calculations and visualize equations in real time.
This project aims to simplify complex mathematical tasks with an intuitive interface for both computation and graphing.
- Screenshots
- Features
- Usage/Examples
- Dependencies
- Troubleshooting
- Supported Operators
- Contributors
- To-Do List
- Scientific Calculations:
- Common operations: sine (
sin
), cosine (cos
), tangent (tan
), square root (sqrt
), logarithms (log
), etc. - Support for constants like
π
(Pi
). - Expression evaluation using
exprtk
. - Graphing Capabilities:
- Plot functions like
sin(x)
,cos(x)
,x^2
, and more. - Dynamic and interactive graph rendering.
- Plot functions like
- User-Friendly Interface:
- Two distinct modes: Scientific Calculator and Graphing.
- Intuitive input via buttons and visual feedback.
- Cross-Platform: Runs on systems supported by
SFML
.
- Launch the application from your terminal or file explorer.
- Switch between Scientific Calculator and Graphing modes via the UI.
- For scientific calculations:
- Input expressions using the provided buttons.
- Press = to calculate results.
- For graphing:
- Enter functions in the graphing interface (e.g., y = sin(x)).
- View the plotted graph dynamically on the graphing panel.
- SFML: Used for graphics rendering, window management, and event handling.
- exprtk: Provides fast and reliable parsing and evaluation of mathematical expressions.
Ensure these dependencies are properly installed and configured before compiling the project.
- No Display Output: Verify SFML is correctly installed and linked during compilation.
- Function Not Plotted: Ensure the input follows valid mathematical syntax as per exprtk.
- Application Crash: Check for missing library dependencies and ensure paths are set correctly.
The calculator supports the following operators with parentheses:
Operator | Definition | Type |
---|---|---|
+ | Addition | Binary |
- | Subtraction | Binary |
* | Multiplication | Binary |
/ | Division | Binary |
x^2 | Squared | Binary |
x^y | Exponential | Binary |
ln() | Natural Logarithm | Unary |
log() | Logarithm (Base 10) | Unary |
sqrt() | Square Root | Unary |
sin() | Sine | Unary |
cos() | Cosine | Unary |
tan() | Tangent | Unary |
- Panning Functionality
- Zoom Out, Zoom In buttons
- Performance Optimization
- Dinisha Uprety
- Safal Narshing Shrestha
Last updated by Safal Narshing Shrestha on Nov 23, 2024, 18:54.
Copyright © 2024 Safal Narshing Shrestha, Dinisha Uprety. All rights reserved.