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
Unofficial Python library for using the Polish Wordnet (plWordNet / Słowosieć)

Polish Wordnet Python library Simple, easy-to-use and reasonably fast library for using the Słowosieć (also known as PlWordNet) - a lexico-semantic da

Max Adamski 12 Dec 23, 2022
Grapheme-to-phoneme (G2P) conversion is the process of generating pronunciation for words based on their written form.

Neural G2P to portuguese language Grapheme-to-phoneme (G2P) conversion is the process of generating pronunciation for words based on their written for

fluz 11 Nov 16, 2022
Code associated with the Don't Stop Pretraining ACL 2020 paper

dont-stop-pretraining Code associated with the Don't Stop Pretraining ACL 2020 paper Citation @inproceedings{dontstoppretraining2020, author = {Suchi

AI2 449 Jan 04, 2023
Code for the paper in Findings of EMNLP 2021: "EfficientBERT: Progressively Searching Multilayer Perceptron via Warm-up Knowledge Distillation".

This repository contains the code for the paper in Findings of EMNLP 2021: "EfficientBERT: Progressively Searching Multilayer Perceptron via Warm-up Knowledge Distillation".

Chenhe Dong 28 Nov 10, 2022
Web Scraping, Document Deduplication & GPT-2 Fine-tuning with a newly created scam dataset.

Web Scraping, Document Deduplication & GPT-2 Fine-tuning with a newly created scam dataset.

18 Nov 28, 2022
A versatile token stream for handwritten parsers.

Writing recursive-descent parsers by hand can be quite elegant but it's often a bit more verbose than expected, especially when it comes to handling indentation and reporting proper syntax errors. Th

Valentin Berlier 8 Nov 30, 2022
Open-Source Toolkit for End-to-End Speech Recognition leveraging PyTorch-Lightning and Hydra.

OpenSpeech provides reference implementations of various ASR modeling papers and three languages recipe to perform tasks on automatic speech recogniti

Soohwan Kim 26 Dec 14, 2022
Research code for ECCV 2020 paper "UNITER: UNiversal Image-TExt Representation Learning"

UNITER: UNiversal Image-TExt Representation Learning This is the official repository of UNITER (ECCV 2020). This repository currently supports finetun

Yen-Chun Chen 680 Dec 24, 2022
The repository for the paper: Multilingual Translation via Grafting Pre-trained Language Models

Graformer The repository for the paper: Multilingual Translation via Grafting Pre-trained Language Models Graformer (also named BridgeTransformer in t

22 Dec 14, 2022
Built for cleaning purposes in military institutions

Ferramenta do AL Construído para fins de limpeza em instituições militares. Instalação Requer python = 3.2 pip install -r requirements.txt Usagem Exe

0 Aug 13, 2022
Ecommerce product title recognition package

revizor This package solves task of splitting product title string into components, like type, brand, model and article (or SKU or product code or you

Bureaucratic Labs 16 Mar 03, 2022
Findings of ACL 2021

Assessing Dialogue Systems with Distribution Distances [arXiv][code] We propose to measure the performance of a dialogue system by computing the distr

Yahui Liu 16 Feb 24, 2022
Tools to download and cleanup Common Crawl data

cc_net Tools to download and clean Common Crawl as introduced in our paper CCNet. If you found these resources useful, please consider citing: @inproc

Meta Research 483 Jan 02, 2023
🏆 • 5050 most frequent words in 109 languages

🏆 Most Common Words Multilingual 5000 most frequent words in 109 languages. Uses wordfrequency.info as a source. 🔗 License source code license data

14 Nov 24, 2022
Big Bird: Transformers for Longer Sequences

BigBird, is a sparse-attention based transformer which extends Transformer based models, such as BERT to much longer sequences. Moreover, BigBird comes along with a theoretical understanding of the c

Google Research 457 Dec 23, 2022
The official implementation of VAENAR-TTS, a VAE based non-autoregressive TTS model.

VAENAR-TTS This repo contains code accompanying the paper "VAENAR-TTS: Variational Auto-Encoder based Non-AutoRegressive Text-to-Speech Synthesis". Sa

THUHCSI 138 Oct 28, 2022
☀️ Measuring the accuracy of BBC weather forecasts in Honolulu, USA

Accuracy of BBC Weather forecasts for Honolulu This repository records the forecasts made by BBC Weather for the city of Honolulu, USA. Essentially, t

Max Halford 12 Oct 15, 2022
Research Code for NeurIPS 2020 Spotlight paper "Large-Scale Adversarial Training for Vision-and-Language Representation Learning": UNITER adversarial training part

VILLA: Vision-and-Language Adversarial Training This is the official repository of VILLA (NeurIPS 2020 Spotlight). This repository currently supports

Zhe Gan 109 Dec 31, 2022
Takes a string and puts it through different languages in Google Translate a requested amount of times, returning nonsense.

PythonTextObfuscator Takes a string and puts it through different languages in Google Translate a requested amount of times, returning nonsense. Requi

2 Aug 29, 2022