An open API service indexing awesome lists of open source software.

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.

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.


scientific calculator GIF

## 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