Skip to content

JESUSC1/Simple-Java-Calculator

 
 

Repository files navigation

Simple Java Calculator with COMP 312 Additions

Logo Simple Java Calculator


Project Metrics

  • In-process GitHub branch checks state GitHub issues GitHub commit activity Test Coverage

  • Complexity GitHub repo size Codacy Badge Maintainability Code Climate technical debt CodeFactor Grade GitHub language count

  • Workflows .github/workflows/.travis.yml codecov

  • Other GitHub

Mission Statement

Our simple Java calculator is designed to help novice developers learn how to create a calculator program with Java. Our easy-to-use code and intuitive user interface make it accessible and approachable for people of all skill levels. With the use of a large subset of tools in Java and the use of Java Swing, we aim to teach users about both the back end process and a little bit about the front end process of software development and give them a solid foundation for building more complex projects in the future.


If you use the executable "SimpleJavaCalculator.jar" file and that doesn't work, you can type this in your terminal:

java -jar /your_calculator_directory/SimpleJavaCalculator.jar`

✨ Example

Before After

💡 Authors

Base Application

COMP 312 Project Modifications, Improvements and Contributions

  • Abilty to show Text Panel on Mac (Jonathan Drysdale-Anderson)

  • Button Placements (Jonathan Drysdale-Anderson)

  • Button Super-Scripts (Jonathan Drysdale-Anderson)

  • Inverse Trigonometric functions (Jonathan Drysdale-Anderson)

  • Decimal functionality (Jonathan Drysdale-Anderson)

  • Theme implementation (light, dark) (Jonathan Drysdale-Anderson)

  • Undefined Feature with division (Jonathan Drysdale-Anderson)

  • Ability to Run Application on Mac (Jesus Cantu)

  • Pi and Euler’s number buttons (Jesus Cantu)

  • Software quality metrics displayed through GitHub Badges (sources: Codacy, CodeClimate, CodeCove, Travis CI) (Jesus Cantu)

  • Addition and implementation of advanced trigonometric functions (Ibrahim Ben Hadj Tahar)

  • Factorials, Permutations and Combinations (Roshan Ali)

  • Here are some potential ideas that were considered but not implemented due to time constraints:

  • Degree-Radian toggle button: A button to switch between degree and radian mode for trigonometric functions, allowing users to work with angles in their preferred unit.

  • Keyboard input support: Enable users to perform calculations using their keyboard, improving the user experience and efficiency

  • Customizable button layout: Allow users to rearrange and customize the button layout to suit their preferences and usage patterns

  • Responsive design: Optimize the calculator's user interface for various screen sizes and devices, ensuring a consistent experience across different platforms

How to Use New Features

  • For any trig identity simply type in a value and press the specific trig identity button
    • Ex: 2tan
  • For the pi button you can use pi by itself by just pressing the button or by doing an operation with another number such as (30 * pi =)
    • Note that you cannot press pi and then a number. You must press pi then an operation then a number
  • For Combinations and Permuations you have to press a number then press the desired funciton and then another button followed by the equals button
    • Ex: 12 nCr 6 =
  • For factorials and Euler's number, you must first press a number and then press the factorial or Euler button
    • Ex: 6n! / 6e
  • To change Theme press the drop down menu at the top to switch from dark to light

⚖️ License

Apache License, Version 2.0 or later; Read license.txt for further details.

About

Contribute to an open source project using best practices and tools for software development.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages