From 3ccc7eaed2cb10b2ea0d2cf8a19016279f503414 Mon Sep 17 00:00:00 2001 From: mehmetensardolgun Date: Tue, 7 Apr 2026 21:17:49 +0300 Subject: [PATCH] Add custom mathematical functions and counter Added custom_power lambda function and custom_equation function for mathematical calculations. Implemented fn_w_counter to track function calls. --- Week04/functions_mehmet_ensar_dolgun.py | 27 +++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Week04/functions_mehmet_ensar_dolgun.py diff --git a/Week04/functions_mehmet_ensar_dolgun.py b/Week04/functions_mehmet_ensar_dolgun.py new file mode 100644 index 00000000..f232545e --- /dev/null +++ b/Week04/functions_mehmet_ensar_dolgun.py @@ -0,0 +1,27 @@ +custom_power = lambda x=0, /, e=1: x**e + +def custom_equation(x: int = 0, y: int = 0, /, a: int = 1, b: int = 1, *, c: int = 1) -> float: + """ + Calculates the mathematical equation. + + :param x: The first base value. + :param y: The second base value. + :param a: The exponent for x. + :param b: The exponent for y. + :param c: The divisor. + :return: The result of the equation. + """ + + if c == 0: # sıfıra bölme hatasını önlemek için + return 0.0 + + return (x ** a + y ** b) / c + + +def fn_w_counter() -> tuple[int, dict[str, int]]: + if not hasattr(fn_w_counter, "counter"): + fn_w_counter.counter = 0 + + fn_w_counter.counter += 1 + + return fn_w_counter.counter, {fn_w_counter.__name__: fn_w_counter.counter}