Skip to main content

A comprehensive calculator package with various math operations.

Project description

Python Package Exercise

log github events

Team members

Deniz Qian: https://github.com/dq2024
Somyung Kim: https://github.com/troy-skim
Terrance Chen: https://github.com/tchen0125
Kim Young: https://github.com/Kyoung655

Project Description

This project is a calculator app that is able to execute multiple functions. The availible functions are add, subtract, multiply, divide, mod, log, exp, randomnumsrange, stringParse, abs, factorial, mean, median, and mode.

Project Instructions

Pipenv Installation:

Ensure pipenv is installed: if not: ''' pip install pipenv '''

Integration of project into your existing code

If you want to integrate our project code into your code, you can do so by...

Installation

You can install calculator project by using pip:

''' pipenv install CalculatorPackSEDTTT==2.0 '''

Install Dependecies if needed: ''' pipenv install '''

Usage

To use it in your code, please import functions needed ''' from calc import add, subtract, multiply, divide, mod, stringParse, log, exp, abs, factorial, mean, median, mode, randomnumsrange, cubesurfacearea '''

Below is documentation for methods to be used in code

Documentation of out project's functions

Our project has the following functions: add(x,y): this functions takes two numbers, adds them together, then returns their sum. This function is only to be used within the stringParse() function. Example here:

substract(x,y): this functions takes two numbers, subtracts them from eachother, then returns their difference. This function is only to be used within the stringParse() function. Example here:

multiply(x,y): this functions takes two numbers, multiplies them together, then returns their product. This function is only to be used within the stringParse() function. Example here:

divide(x,y): this functions takes two numbers, divides them by eachother, then returns their quotient. This function is only to be used within the stringParse() function. Example here:

mod(x,y): this functions takes two numbers, calls the modulus operator, then returns the remainder. This function is only to be used within the stringParse() function. Example here:

log(x,y): this functions takes two numbers, adds them together, then returns the natural logarithm. This function is only to be used within the stringParse() function. Example here:

exp(x,y): this functions takes two numbers. x is multiplied by itself y times. The code then returns the product. This function is only to be used within the stringParse() function. Example here:

randomnumsrange(x,y): this functions takes two numbers. random numbers are generated in between 0 and x, y times. The code then returns the list of random number generated. This function is only to be used within the stringParse() function. Example here:

stringParse(input): this function takes two numbers and any of the following functions previously mentioned: add, subtract, multiply, divide, mod, log, exp, and randomnumsrange. The format for stringParse(input) must be stringParse("number1 operation number2"). Examples here:

abs(x): this function takes a single number and converts it into its absolute value. Example here:

factorial(x, val = {}): this function takes in a number and returns its factorial value. Example here:

mean(list): this function takes in a list of numbers, sums them up, then divides them by the number of numbers in the array, returning the average. Example here:

median(list): this function takes in a list of numbers, ordering the data points, and then finding the midddle number or taking the mean of the middle two numbers. Example here:

mode(numbers): this function takes in a list of numbers and returns the number that appears most often. Example here:

cubesurfacearea(x): this function takes in a number, calls our exp function with x, then multiplies the value returned by our exp function by 6 to get the surface area of a cube.

Example Usage

Please look at example.py

Contribution

Create a fork then clone:

''' git clone https://github.com/software-students-spring2024/3-python-package-exercise-team-dtttt.git '''

Ensure pipenv is installed according to above instructions

Start Virtual Environment:

''' pipenv shell '''

Dependecies:

''' pipenv install '''

Build

Ensure Build is installed if not: ''' pipenv install build '''

Run: ''' python -m build ''' on Windows

''' python3 -m build ''' on Mac

Running Tests

''' pytest '''

pytest will run the tests you can add more to tests under tests

To modify functions in calculator please view calc folder with calculator.py

Commit

Please commit to a feature branch and submit a merge request for any edits

Link to Project on PyPI Website

(PyPI)[https://pypi.org/project/CalculatorPackSEDTTT/1.0.2/]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

CalculatorPackSEDTTT-1.0.2.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

CalculatorPackSEDTTT-1.0.2-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file CalculatorPackSEDTTT-1.0.2.tar.gz.

File metadata

  • Download URL: CalculatorPackSEDTTT-1.0.2.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.9

File hashes

Hashes for CalculatorPackSEDTTT-1.0.2.tar.gz
Algorithm Hash digest
SHA256 70193e910eca6f4bf5ea5b13c47be175fd14733bf14b2b37adf3a875d1a0d53b
MD5 3ff56c1f0f8042d952f96103913a4e68
BLAKE2b-256 8fe328533423aae7a234abb29964d982a94fa5a13250ef924dc8386123eb1b42

See more details on using hashes here.

File details

Details for the file CalculatorPackSEDTTT-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for CalculatorPackSEDTTT-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8c32c012252a70d0c5688bb53e34c6b23719f445bbf6d3ff5ae99b548066074b
MD5 479c2b6c6f055d9870a5812d53fdde6b
BLAKE2b-256 c134e3acd14bca495571ebcadd87b0317ee446dc9abf51e4385ffac8c3d83ea3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page