From 94a9c0b0653e48d992dd135b892cde1fd9ba7b24 Mon Sep 17 00:00:00 2001 From: mantuhotep Date: Wed, 7 Jan 2026 18:00:44 +0300 Subject: [PATCH] functions_muhammet_topcu --- Week04/functions_muhammet_topcu.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Week04/functions_muhammet_topcu.py diff --git a/Week04/functions_muhammet_topcu.py b/Week04/functions_muhammet_topcu.py new file mode 100644 index 00000000..f2494d6f --- /dev/null +++ b/Week04/functions_muhammet_topcu.py @@ -0,0 +1,30 @@ +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: + """ + :param x: first value + :param y: second value + :param a: multiplier for x + :param b: multiplier for y + :param c: divisor + :return: result of the equation + """ + if not all(isinstance(v, int) for v in (x, y, a, b, c)): + raise TypeError("all parameters must be int") + return (a * x + b * y + x + y) / c + + +def fn_w_counter() -> (int, dict[str, int]): + if not hasattr(fn_w_counter, "_counter"): + fn_w_counter._counter = 0 + fn_w_counter._counter += 1 + module_name = __name__.split(".")[-1] + return fn_w_counter._counter, {module_name: fn_w_counter._counter}