diff --git a/math_utils.py b/math_utils.py new file mode 100644 index 0000000..cd71b5c --- /dev/null +++ b/math_utils.py @@ -0,0 +1,56 @@ +def add(a, b): + return a + b + + +def subtract(a, b): + return a - b + + +def multiply(a, b): + return a * b + + +def divide(a, b): + if b == 0: + raise ValueError("Cannot divide by zero") + return a / b + + +def power(base, exponent): + return base ** exponent + + +def is_even(n): + return n % 2 == 0 + + +def factorial(n): + if n < 0: + raise ValueError("Factorial not defined for negative numbers") + if n == 0: + return 1 + return n * factorial(n - 1) + + +def clamp(value, min_val, max_val): + return max(min_val, min(max_val, value)) + + +def average(numbers): + if not numbers: + raise ValueError("Cannot compute average of empty list") + return sum(numbers) / len(numbers) +# Trigger review + +def percentage(value, total): + if total == 0: + raise ValueError("total cannot be zero") + return (value / total) * 100 + +def is_prime(n): + if n < 2: + return False + for i in range(2, int(n**0.5) + 1): + if n % i == 0: + return False + return True