Metadata-Version: 2.1
Name: gkamin-calculator
Version: 0.0.4
Summary: calculator that allows to perform basic math operations 
Home-page: 
Author: Giedrius Kaminskas
Author-email: giekaminskas@gmail.com
Keywords: calculator
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Provides-Extra: dev
License-File: LICENSE.txt

# The Calculator Package

## Table of contents

* Summary
* Requirements
* Installation
* Usage
* License

## Summary

This package contains a class Calculator which allows to perform basic mathematical operations
while saving the obtained result in memory for further calculations.

It includes methods for the following operations:

* Addition / Subtraction
* Multiplication / Division
* Take (n) root of a number
* Reset memory

## Requirements

* Python 3.6 or newer

## Installation

To install the package:

```bash
pip install gkamin-calculator
```

To import the package:
```python
from gkamin_calculator.gkamin_calculator import Calculator
```

## Usage

This section will detail all the methods that can be called for the created object Calculator.

### Creating the calculator object

When the calculator object is created, the initial value it stores is equal to zero:

```bash
>>>> calc = Calculator() 
>>>> print(calc.result)
0
```

Initial value can be changed by using optional input parameter:

```bash
>>>> calc = Calculator(10.05)
>>>> print(calc.result)
10.05
```

### Addition method

**.add(addend)** - this method adds input value to last stored result.
Initially to 0:

```bash
>>>>calc = Calculator()
>>>>calc.add(2)
>>>>print(calc.result)
2
```

```bash
>>>>print(calc.result)
2
>>>>calc.add(3)
>>>>print(calc.result)
5
```

### Subtraction method

**.subtract(subtrahend)** - this method subtracts input value from last stored result:

```bash
>>>>print(calc.result)
5
>>>>calc.subtract(1)
>>>>print(calc.result)
4
```

### Multiplication method

**.multiply(multiplier)** - this method multiplies input value by last stored result:

```bash
>>>>print(calc.result)
4
>>>>calc.multiply(4)
>>>>print(calc.result)
16
```

### Division method

**.divide(divisor)** - this method divides last stored result by input value:

```bash
>>>>print(calc.result)
16
>>>>calc.divide(2)
>>>>print(calc.result)
8
```

### Root method

**.root(degree_of_root)** - this method extracts n-th root from last stored result, where n is degree of root.

```bash
>>>>print(calc.result)
8
>>>>calc.root(3)
>>>>print(calc.result)
2
```

**.root(degree_of_root, radicand)** - if this is the first operation performed (initially radicand is equal to 0),
optional input value to be used to set required radicand value:

```bash
>>>>calc = Calculator()
>>>>calc.root(4, 64)
>>>>print(calc.result)
4
```

## Reset method

**.reset(self)** - this method resets the last stored result to zero:

```bash
>>>>calc.reset()
>>>>print(calc.result)
0
```

## License

This project is licensed under the MIT License. See the LICENSE.txt for details.
