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
Unsupervised Abstract Reasoning for Raven’s Problem Matrices

Unsupervised Abstract Reasoning for Raven’s Problem Matrices This code is the implementation of our TIP paper. This is the first unsupervised abstract

Tao Zhuo 9 Dec 17, 2022
A python gui program to generate reddit text to speech videos from the id of any post.

Reddit text to speech generator A python gui program to generate reddit text to speech videos from the id of any post. Current functionality Generate

Aadvik 17 Dec 19, 2022
Multilingual finetuning of Machine Translation model on low-resource languages. Project for Deep Natural Language Processing course.

Low-resource-Machine-Translation This repository contains the code for the project relative to the course Deep Natural Language Processing. The goal o

Andrea Cavallo 3 Jun 22, 2022
Machine learning classifiers to predict American Sign Language .

ASL-Classifiers American Sign Language (ASL) is a natural language that serves as the predominant sign language of Deaf communities in the United Stat

Tarek idrees 0 Feb 08, 2022
Implementation of Memorizing Transformers (ICLR 2022), attention net augmented with indexing and retrieval of memories using approximate nearest neighbors, in Pytorch

Memorizing Transformers - Pytorch Implementation of Memorizing Transformers (ICLR 2022), attention net augmented with indexing and retrieval of memori

Phil Wang 364 Jan 06, 2023
ETM - R package for Topic Modelling in Embedding Spaces

ETM - R package for Topic Modelling in Embedding Spaces This repository contains an R package called topicmodels.etm which is an implementation of ETM

bnosac 37 Nov 06, 2022
Chinese segmentation library

What is loso? loso is a Chinese segmentation system written in Python. It was developed by Victor Lin ( Fang-Pen Lin 82 Jun 28, 2022

Simplified diarization pipeline using some pretrained models - audio file to diarized segments in a few lines of code

simple_diarizer Simplified diarization pipeline using some pretrained models. Made to be a simple as possible to go from an input audio file to diariz

Chau 65 Dec 30, 2022
中文生成式预训练模型

T5 PEGASUS 中文生成式预训练模型,以mT5为基础架构和初始权重,通过类似PEGASUS的方式进行预训练。 详情可见:https://kexue.fm/archives/8209 Tokenizer 我们将T5 PEGASUS的Tokenizer换成了BERT的Tokenizer,它对中文更

410 Jan 03, 2023
Yet another Python binding for fastText

pyfasttext Warning! pyfasttext is no longer maintained: use the official Python binding from the fastText repository: https://github.com/facebookresea

Vincent Rasneur 230 Nov 16, 2022
⚡ boost inference speed of T5 models by 5x & reduce the model size by 3x using fastT5.

Reduce T5 model size by 3X and increase the inference speed up to 5X. Install Usage Details Functionalities Benchmarks Onnx model Quantized onnx model

Kiran R 399 Jan 05, 2023
Paddle2.x version AI-Writer

Paddle2.x 版本AI-Writer 用魔改 GPT 生成网文。Tuned GPT for novel generation.

yujun 74 Jan 04, 2023
FireFlyer Record file format, writer and reader for DL training samples.

FFRecord The FFRecord format is a simple format for storing a sequence of binary records developed by HFAiLab, which supports random access and Linux

77 Jan 04, 2023
open-information-extraction-system, build open-knowledge-graph(SPO, subject-predicate-object) by pyltp(version==3.4.0)

中文开放信息抽取系统, open-information-extraction-system, build open-knowledge-graph(SPO, subject-predicate-object) by pyltp(version==3.4.0)

7 Nov 02, 2022
Dust model dichotomous performance analysis

Dust-model-dichotomous-performance-analysis Using a collated dataset of 90,000 dust point source observations from 9 drylands studies from around the

1 Dec 17, 2021
Simple Annotated implementation of GPT-NeoX in PyTorch

Simple Annotated implementation of GPT-NeoX in PyTorch This is a simpler implementation of GPT-NeoX in PyTorch. We have taken out several optimization

labml.ai 101 Dec 03, 2022
APEACH: Attacking Pejorative Expressions with Analysis on Crowd-generated Hate Speech Evaluation Datasets

APEACH - Korean Hate Speech Evaluation Datasets APEACH is the first crowd-generated Korean evaluation dataset for hate speech detection. Sentences of

Kevin-Yang 70 Dec 06, 2022
Contains the code and data for our #ICSE2022 paper titled as "CodeFill: Multi-token Code Completion by Jointly Learning from Structure and Naming Sequences"

CodeFill This repository contains the code for our paper titled as "CodeFill: Multi-token Code Completion by Jointly Learning from Structure and Namin

Software Analytics Lab 11 Oct 31, 2022
Header-only C++ HNSW implementation with python bindings

Hnswlib - fast approximate nearest neighbor search Header-only C++ HNSW implementation with python bindings. NEWS: version 0.6 Thanks to (@dyashuni) h

2.3k Jan 05, 2023
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