https://github.com/rafaybbx/calcx-scientific-calculator
A feature-rich scientific calculator built in Java.
https://github.com/rafaybbx/calcx-scientific-calculator
Last synced: about 1 year ago
JSON representation
A feature-rich scientific calculator built in Java.
- Host: GitHub
- URL: https://github.com/rafaybbx/calcx-scientific-calculator
- Owner: rafaybbx
- License: mit
- Created: 2025-02-05T13:04:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-05T13:13:00.000Z (over 1 year ago)
- Last Synced: 2025-02-25T18:50:02.756Z (over 1 year ago)
- Language: Java
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Scientific Calculator
A feature-rich scientific calculator built in Java with a modern graphical user interface. This calculator supports various mathematical operations, trigonometric functions, and different number systems.
## Features
### Basic Operations
- Addition, subtraction, multiplication, division
- Percentage calculations
- Remainder operations
- Exponentiation
- Negative number support
- Decimal point operations
### Scientific Functions
- Trigonometric functions (sin, cos, tan)
- Inverse trigonometric functions (sin⁻¹, cos⁻¹, tan⁻¹)
- Hyperbolic functions (sinh, cosh, tanh)
- Logarithmic functions (ln)
- Degree/Radian conversion
### Number Systems
- Decimal
- Binary
- Octal
- Hexadecimal (with A-F support)
### Data Types
- Integer
- Short
- Long
- Float
- Double
## Installation
### Prerequisites
- Java Development Kit (JDK) 8 or higher
- Java Runtime Environment (JRE)
### Steps
1. Clone this repository:
```bash
git clone https://github.com/yourusername/calcX-scientific-calculator.git
```
2. Navigate to the project directory:
```bash
cd calcX-scientific-calculator
```
3. Compile the Java files:
```bash
javac Main.java MyFrame.java
```
4. Run the application:
```bash
java Main
```
## Usage
1. **Mode Selection**
- Choose between Trigonometric, Inverse Trigonometric, or Hyperbolic modes
- Select your preferred number system (Decimal, Binary, Octal, Hexadecimal)
- Pick the desired data type (Integer, Short, Long, Float, Double)
2. **Input**
- Use the number pad for numerical input
- Select operations using the respective buttons
- Clear input using 'C' button
- Delete last character using '<' button
3. **Special Functions**
- Convert between degrees and radians using 'Deg' and 'Rad' buttons
- Use '(-)' for negative numbers
- Access hexadecimal digits (A-F) in hexadecimal mode
## Interface
- Modern dark theme with orange accents
- Clear display with large font
- Organized button layout
- Side panel for mode selection
- Error handling for out-of-range calculations
## Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## License
This project is licensed under the MIT License - see the LICENSE file for details.
## Acknowledgments
- Built using Java Swing for GUI
- Implements standard Java Math library functions
- Designed for educational and practical use