Easy Math
py_simple.easy_math
Beginner-friendly helpers for common math operations.
divisors(n)
Returns every positive integer that divides n evenly.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
Positive integer to divide. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
list |
list
|
All divisors of n. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If n is less than 1. |
Example
from py_simple import divisors
result = divisors(12) # -> [1, 2, 3, 4, 6, 12]
n = 12
result = [number for number in range(1, n + 1) if n % number == 0]
factorial(n)
Returns the factorial of a whole number.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
Non-negative integer. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
int |
int
|
The factorial of n. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If n is negative or not a whole number. |
Example
from py_simple import factorial
result = factorial(5) # -> 120
n = 5
result = 1
for number in range(2, n + 1):
result *= number
fibonacci(count)
Returns the first count Fibonacci numbers as a list.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
count
|
int
|
How many Fibonacci numbers to return. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
list |
list
|
The first count Fibonacci numbers. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If count is less than 1. |
Example
from py_simple import fibonacci
result = fibonacci(5) # -> [0, 1, 1, 2, 3]
count = 5
sequence = [0, 1]
while len(sequence) < count:
sequence.append(sequence[-1] + sequence[-2])
result = sequence[:count]
get_least_common_multiple(a, b)
Returns the least common multiple of two integers.
The result is always positive, and 0 is returned if either number is 0.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
a
|
int
|
First number. |
required |
b
|
int
|
Second number. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
int |
int
|
The least common multiple. |
Example
from py_simple import lcm
result = lcm(4, 6) # -> 12
import math
from math import gcd
a, b = 4, 6
result = abs(a * b) // gcd(a, b)
prime_factorization(n)
Returns the prime factors of a positive integer, including repeats.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
Positive integer to factor. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
list |
list
|
Prime factors of n. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If n is less than 1. |
Example
from py_simple import prime_factorization
result = prime_factorization(12) # -> [2, 2, 3]
n = 12
factors = []
divisor = 2
while divisor * divisor <= n:
while n % divisor == 0:
factors.append(divisor)
n //= divisor
divisor += 1
if n > 1:
factors.append(n)
sum_of_digits(n)
Returns the sum of the digits of an integer.
Negative numbers are handled by ignoring the minus sign.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
n
|
int
|
Integer to add up. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
int |
int
|
The sum of the digits. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If n is not an integer. |
Example
from py_simple import sum_of_digits
result = sum_of_digits(1234) # -> 10
n = 1234
result = sum(int(digit) for digit in str(n))