Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/danskyvich/basic-calculator

A basic calculator that could compute basic mathematical expressions and functions such as arithmetic, square root, nested equations, PEMDAS, basic trigonometry, etc.
https://github.com/danskyvich/basic-calculator

android android-studio basic-learning calculator java

Last synced: 6 days ago
JSON representation

A basic calculator that could compute basic mathematical expressions and functions such as arithmetic, square root, nested equations, PEMDAS, basic trigonometry, etc.

Awesome Lists containing this project

README

        

# Basic Calculator

A very, very basic android application that can compute the most basic equations in mathematics. This project is a side project of mine, and is aimed for me to be familiarized with the IDE (Android Studio), and to strengthen my technical skills in general.

Below are the following features of this application:

1. Basic arithmetic calculations (addition, subtraction, multiplication, & division)
2. Factorial
3. Square roots
4. Clear entry
5. Basic trigonometric functions such as sine, cosine, and tangent
6. Mathematical constants such as pi (π), and euler's number (e).
7. Negative numbers
8. Basic logarithmic and inverse functions
9. Landscape/portrait mode

## How I worked on this project

Originally a school project of mine, my main goal for this app is to familiarize myself with the inner workings of the Android Studio IDE.

1. **Design**: I did not used any tools for designing the UI like [Figma](https://figma/com) or a task management service like [Trello](https://trello.com/).
2. **Logic**: A basic math parser that uses string manipulation to determine the structure of the inputted equation.
3. As this was a very basic app, I only worked within the domain of the single branch.
4. No external libraries/dependencies, as I didn't need any external libraries at that moment.

## Important parts of this project

1. A single *activity_main.xml* that contains the visual code of the entire app.
2. *MainActivity.java* containing the entirety of application logic.

## If i would choose to continue to work on this project, I would -

1. Improve the textView of the app by allowing users to continue entering additional variables on the answer of the previous equation.
2. Debug existing errors upon existing mathematical functions.
3. Probably a history section that has all of previously entered equations.