This is an incredibly powerful calculator that is capable of many useful day-to-day functions.

Overview
Releases Contributors Stars

Description 💻

This is an incredibly powerful calculator that is capable of many useful day-to-day functions. Such functions include solving basic arithmetic, algebraic, chemistry conversions, and much more.

How To Use

Step 1: Make sure you have pip installed on your OS, you can do it by writing the following command on your terminal.

pip help

Step 2: If you don't have pip installed , you can install it using the following command.

python get-pip.py
or
python3 get-pip.py

Step 3: Check the pip version using :

pip -V

Step 4: Clone the repository by using

git clone https://github.com/JordanLeich/Ultimate-Calculator.git

Step 5: Install the requirements

pip install -r requirements.txt

Step 6: Run the project using
python3 main.py

Preview 💻

Preview

TODO List

  • Check out the issues page for this project here

Bug Reporting 🐞

  • Check out the issues page for this project here

Calculator

Comments
  • Add bitwise operations

    Add bitwise operations

    Adds the bitwise operations to calculator.py and updates the relevant menu. I've used f-strings which you seem to be purging. The warning you're getting is because you've enabled code compatability inspection, and f-strings aren't python 2 compatable. If you want to be able to run on python 2 I'll change them to .format but I can't understand why you would, and I expect that other parts of the code aren't compatible.

    opened by PeanutbutterWarrior 1
  • Old UI files

    Old UI files

    Sorry for deleting the files , I thought , they are useless as long as the calculator is getting updated eveyday , I thought made we will create a final GUI from scratch once the project. The first one was kinda Demo.

    opened by BadrBelkadi 1
  • Graphic User Interface

    Graphic User Interface

    Hi! I have created a simple GUI for the calculator using PYQT5 , it's not 100% done , 70% of the work is done , so what is working so far is the following ( Basic Arithmetics, Algebra, Stock Market, Time Converter, Credits (Takes you to the contributors page on github), Converters (Currency Converter so far and still need some work and apparently I have to update it with currency api) ) Please take some time and check it out , you can just run the main.py cd GUI python3 main.py

    opened by BadrBelkadi 1
  • Validated User Inputs.

    Validated User Inputs.

    calculator.py

    • Validate User Inputs
    • Cleaned up the if else
    • Continue Option after an operation

    This is the first time I'm participating in open source projects. Feedbacks (even if it's negative) would be greatly appreciated! Thanks and best Regards.

    opened by bot-coder05 1
  • Created Time Conversion functionality

    Created Time Conversion functionality

    I've finished the (basic) time conversion part of this calculator. It works by converting the users input into seconds and then dividing that to get years, days, minutes, so on. Definitely has the possibility of more output options but this is what I got working until now.

    Also fixed contributions.py since starting the program was impossible because it would open the page automatically and then quit the program.

    opened by ghost 1
  • Simplify unit conversions

    Simplify unit conversions

    I've changed how unit conversions work, removing almost all of the repetition between functions. Adding new conversions and new units is now much easier, only changing a single dictionary. Instructions for doing this are at the top of conversions/conversions.py::unit_converter(). I have left the cryptocurrency alone, as I expect that this could be updated to use an api, however this can be added easily.

    opened by PeanutbutterWarrior 0
  • Restructure program to avoid recursion

    Restructure program to avoid recursion

    I've changed a lot of the menus to now restart once an operation is done, rather than calling the function repeatably. Where appropriate, operations take you back to the previous menu. I've also added an Exit exception, which is called from anywhere, winds back to the main menu, is caught and then the program is cleanly exited.

    I've also added uses of repeat_input where I could, along with allowing it to take a function argument as an additional check on the input e.g. checking a number is greater than one. The function could still be improved to automatically convert the type (float to float, yes/no to boolean etc.)

    opened by PeanutbutterWarrior 0
  • API_KEY exception handled

    API_KEY exception handled

    File ~/Ultimate-Calculator/uis/currency_ui.py", line 89, in convert
    output = float(amount * get_currency("EUR_USD"))
    TypeError: get_currency() missing 1 required positional argument: 'api_key'
    
    opened by iam-shanmukha 0
  • Bug Reporting 🐞

    Bug Reporting 🐞

    Reporting Bugs ❗

    • If you find any bugs or issues while using this project, report the bug here and we will fix it as soon as possible. Active found bugs will be listed down below and will be removed if fixed.

    Known Bugs 🐛

    1. For developers of this project, if you run the project through any other file than main.py and you try to use the restart or quit option, you will raise an error. This error will likely be avoided since normal end-users will not see this error due to them running the project through main.py.
    2. Avoid using the GUI application while running the main.exe version since the GUI seems to be incompatible with how the main.exe file is created.
    bug 
    opened by JordanLeich 13
  • TODO List ❗

    TODO List ❗

    1. Add a GPA calculator.
    2. Add in the remaining calculators and converters that are missing from the GUI version.
    3. Add in some graphing functionality.
    4. Add any useful calculators or converters you can think of that have not already been implemented.

    Contributing ✍️

    • Here’s an easy and quick video guide for learning how to contribute via GitHub
    bug enhancement help wanted good first issue 
    opened by JordanLeich 14
Releases(v6.3)
  • v6.3(Sep 5, 2021)

    v6.3 Patch Notes 🔢

    1. Certain areas for outputting results now have fixed formatting and coloring
    2. Readme now has improved formatting and instructions for installation
    3. Removed winsound as a requirement since this is preinstalled for those with python and windows
    Source code(tar.gz)
    Source code(zip)
  • v6.2(Jul 7, 2021)

    v6.2 Patch Notes 🔢

    1. A total of 9 new calculators have been added while others have been improved
    2. User input is improved and handled better now
    3. Tons of code has been tossed due to unused or unnecessary code and simplified functions being introduced
    Source code(tar.gz)
    Source code(zip)
  • v6.1(Jun 27, 2021)

    v6.1 Patch Notes ❗

    1. An executable version of this project has been created for those with windows and who do not have python installed on their system and still want to use this project. This can be found here.
    2. New icon has been added for the executable
    3. Winsound error has been fixed for macOS and Linux users
    4. API has been greatly improved for conversions and does not require key.json anymore
    5. File conversions have been sadly removed due to module errors while compiling the pyinstaller executable
    6. Donation options have been added for those who would like to support this project

    Contributions 🏅

    Special thanks to @PeanutbutterWarrior for all of the recent reworking, tweaks, and contributions for this past and current release!

    Source code(tar.gz)
    Source code(zip)
  • v6.0(Jun 22, 2021)

    v6.0 Patch Notes ❕

    1. API file has been greatly improved and now requires the user to validate their own key instead of just using a key priorly made by the developers
    2. Bitwise calculator and binary converter have been added
    3. Remade the arithmetic calculator to be capable of using brackets now
    4. Docstrings and comments have been added all-around to help newcomers find out what important sections of our code does
    5. Big changes to how most of the UI looks while running the program to reduce clutterness
    6. Huge improvements, tweaks, and removal of unnecessary code have been made to get rid of recursion problems
    Source code(tar.gz)
    Source code(zip)
  • v5.5(Jun 16, 2021)

    v5.5 Patch Notes ❗

    1. Lots of code has been cleaned up and optimized.
    2. Added a BMI (body mass index) calculator, video & audio converters, geometry calculator, and many reworks to how certain calculators/converters work.
    3. To help reduce clutter, all calculators, conversions, and modules have now been stored in their respective folders.
    4. User input validation has been greatly changed and improved using a separate tools.py file

    Biggest Contributor 😄

    @bot-coder05, reformatted almost every calculator and converter, helped enhance many calculators and created tools.py to improved user input validation.

    Source code(tar.gz)
    Source code(zip)
  • v5.0(Jun 12, 2021)

    v5.0 Patch Notes ❗

    1. Many brand new converters have been added to conversions.py such as speed, sound frequency, digital storage, and much more.
    2. Major changes have been made to our GUI applications such as dark mode, button shortcuts, small bug fixes, and better readability.
    3. Small tweaks and deletions of unused code have been made to all calculators and converters.
    4. GUI preview added to readme file along with other small changes.

    Biggest Contributors 🥇

    • Special thanks to BadrBelkadi & bot-coder05 for all of the incredible help, could not have gotten this far without you both! @BadrBelkadi @bot-coder05
    Source code(tar.gz)
    Source code(zip)
  • v4.0(Jun 7, 2021)

    v4.0 Patch Notes

    1. Many new calculators have been added such as finding midpoint, distance between two points, heads or tails game, random integer generator.
    2. GUI application has been completed and functions properly now.
    3. Many improvements to readability made by removing unused code and renaming ugly variables.
    4. Fixed some small errors and bugs with improved if statements and try and except statements.
    5. Small reworks to how certain calculators work along with replacing the old calculator.py file with a new and improved calculator that's allows for multiple numbers in one arithmetic problem.
    Source code(tar.gz)
    Source code(zip)
  • v3.5(Jun 4, 2021)

    v3.5 Patch Notes

    1. GUI application has been added and is still in progress.
    2. Fixed tons of spacing, formatting, and typos issues.
    3. Preview section has been added to the readme.md file.
    4. Added financial.py with a couple of useful calculators.
    5. API has been added and functions beautifully.
    6. Error handling has been greatly approved throughout multiple files.
    7. time conversions are now finished and work beautifully.
    Source code(tar.gz)
    Source code(zip)
  • v2.0(Jun 3, 2021)

    v2.0 Patch Notes

    1. Many fixes to errors and formatting thanks to contributors 😄
    2. Readme file has been greatly improved
    3. Many new functions and converters have been added and improved upon
    4. Added a requirements folder for those who want to easily install all the modules used in this project
    5. API has been added but is not yet finished, will be finished in the next major release
    Source code(tar.gz)
    Source code(zip)
  • v1.0(Jun 2, 2021)

    v1.0 Patch Notes

    1. This is considered the first major release though it not fully finished quite yet.
    2. Added algebra calculators and all chemistry calculators and conversions.
    3. Removed youtube URL converter due to GitHub and YouTube's legal policies to void a ban.
    4. Readme is about finalized currently and is likely to be left unchanged.
    Source code(tar.gz)
    Source code(zip)
Owner
Jordan Leich
Computer Science student at Macomb Community College. Seeking a Bachelor's Degree at Oakland University in Computer Science.
Jordan Leich
Milaan Parmar / Милан пармар / _米兰 帕尔马 170 Dec 13, 2022
CLIPfa: Connecting Farsi Text and Images

CLIPfa: Connecting Farsi Text and Images OpenAI released the paper Learning Transferable Visual Models From Natural Language Supervision in which they

Sajjad Ayoubi 66 Dec 14, 2022
BookNLP, a natural language processing pipeline for books

BookNLP BookNLP is a natural language processing pipeline that scales to books and other long documents (in English), including: Part-of-speech taggin

654 Jan 02, 2023
BeautyNet is an AI powered model which can tell you whether you're beautiful or not.

BeautyNet BeautyNet is an AI powered model which can tell you whether you're beautiful or not. Download Dataset from here:https://www.kaggle.com/gpios

Ansh Gupta 0 May 06, 2022
原神抽卡记录数据集-Genshin Impact gacha data

提要 持续收集原神抽卡记录中 可以使用抽卡记录导出工具导出抽卡记录的json,将json文件发送至[email protected],我会在清除个人信息后

117 Dec 27, 2022
BiQE: Code and dataset for the BiQE paper

BiQE: Bidirectional Query Embedding This repository includes code for BiQE and the datasets introduced in Answering Complex Queries in Knowledge Graph

Bhushan Kotnis 1 Oct 20, 2021
PRAnCER is a web platform that enables the rapid annotation of medical terms within clinical notes.

PRAnCER (Platform enabling Rapid Annotation for Clinical Entity Recognition) is a web platform that enables the rapid annotation of medical terms within clinical notes. A user can highlight spans of

Sontag Lab 39 Nov 14, 2022
A Semi-Intelligent ChatBot filled with statistical and economical data for the Premier League.

MONEYBALL - ChatBot Module: 4006CEM, Class: B, Group: 5 Contributors: Jonas Djondo Roshan Kc Cole Samson Daniel Rodrigues Ihteshaam Naseer Kind remind

Jonas Djondo 1 Nov 18, 2021
Tools and data for measuring the popularity & growth of various programming languages.

growth-data Tools and data for measuring the popularity & growth of various programming languages. Install the dependencies $ pip install -r requireme

3 Jan 06, 2022
Code for paper: An Effective, Robust and Fairness-awareHate Speech Detection Framework

BiQQLSTM_HS Code and data for paper: Title: An Effective, Robust and Fairness-awareHate Speech Detection Framework. Authors: Guanyi Mou and Kyumin Lee

Guanyi Mou 2 Dec 27, 2022
The entmax mapping and its loss, a family of sparse softmax alternatives.

entmax This package provides a pytorch implementation of entmax and entmax losses: a sparse family of probability mappings and corresponding loss func

DeepSPIN 330 Dec 22, 2022
The tool to make NLP datasets ready to use

chazutsu photo from Kaikado, traditional Japanese chazutsu maker chazutsu is the dataset downloader for NLP. import chazutsu r = chazutsu.data

chakki 243 Dec 29, 2022
This project consists of data analysis and data visualization (done using python)of all IPL seasons from 2008 to 2019 and answering the most asked questions about the IPL.

IPL-data-analysis This project consists of data analysis and data visualization of all IPL seasons from 2008 to 2019 and answering the most asked ques

Sivateja A T 2 Feb 08, 2022
Script to generate VAD dataset used in Asteroid recipe

About the dataset LibriVAD is an open source dataset for voice activity detection in noisy environments. It is derived from LibriSpeech signals (clean

11 Sep 15, 2022
Perform sentiment analysis on textual data that people generally post on websites like social networks and movie review sites.

Sentiment Analyzer The goal of this project is to perform sentiment analysis on textual data that people generally post on websites like social networ

Madhusudan.C.S 53 Mar 01, 2022
Saptak Bhoumik 14 May 24, 2022
Analyse japanese ebooks using MeCab to determine the difficulty level for japanese learners

japanese-ebook-analysis This aim of this project is to make analysing the contents of a japanese ebook easy and streamline the process for non-technic

Christoffer Aakre 14 Jul 23, 2022
The implementation of Parameter Differentiation based Multilingual Neural Machine Translation

The implementation of Parameter Differentiation based Multilingual Neural Machine Translation .

Qian Wang 21 Dec 17, 2022
This is a general repo that helps you develop fast/effective NLP classifiers using Huggingface

NLP Classifier Introduction This project trains a bert model on any NLP classifcation model. And uses the model in make predictions on new data using

Abdullah Tarek 3 Mar 11, 2022
Text classification on IMDB dataset using Keras and Bi-LSTM network

Text classification on IMDB dataset using Keras and Bi-LSTM Text classification on IMDB dataset using Keras and Bi-LSTM network. Usage python3 main.py

Hamza Rashid 2 Sep 27, 2022