Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/alimranahmed/ci-calculator

CI-Calculator, A scientific calculator, built using JAVA. Front-end has been designed by java swing API.
https://github.com/alimranahmed/ci-calculator

java scientific-calculator swing

Last synced: 3 months ago
JSON representation

CI-Calculator, A scientific calculator, built using JAVA. Front-end has been designed by java swing API.

Awesome Lists containing this project

README

        

# CI- Calculator
A Scientific calculator build on JAVA(J2SE) with swing API to design the interface.

Version: 2.0.0
System requirement: Java Virtual Machine(JVM);
Date of Released: 21st February 2017
Copyright: 2017, CI- Technology


## Screenshots
![CI-Calculator](https://raw.githubusercontent.com/alimranahmed/ci-calculator/master/assets/143_2_0.png)

Arithmetic operation

![CI-Calculator](https://raw.githubusercontent.com/alimranahmed/ci-calculator/master/assets/log_2_0.png)

Logarithm!

![CI-Calculator](https://raw.githubusercontent.com/alimranahmed/ci-calculator/master/assets/sin_2_0.png)

Trigonometry

## Installation
1. Clone the repo using: `git clone https://github.com/alimranahmed/CI-Calculator.git`
2. Compile & run the java file inside /src.

## Usage
1. To perform any double operand operation, users have to enter one operand then the operation then another operand then the equal button.
e.g. 1 + 2 =

2. To perform any single operand operation, user have to enter the operand then the operation button.
e. g. entering "0 sin" is as "sin(0)"

3. To calculate percentage, users have to enter operand(for which, percentage will be calculated) then the multiplication button(x) then enter the amount of percent then press the percent button(%).
e. g. 200 x 5%

4. In the calculator, C => Clear, DE => Delete by one digit, Mod => Reminder of division

## Technical Description
Calculators functionality is defined in the `Engine` class.
`ActionServer` is handling button click event.
`ElementContainer` class bind all calculator visual element together.
`ButtonHolder` create all required buttons those are being used by `ElementContainer`

## Limitation
1. This calculator is not able to evaluate any mathematical expression.
2. Due to, the limitation of value container(e.g. variable) this can't work with very large number(more than 32 bits or 64 bits).
3. Digit limitation is 15 digit.

## Contribution
Contribution to is always welcome. If you want to contribute on this project just create an issue and then make a pull request with your contribution.