From 357b91e45a7a20da8cd6647b05d106057bc3c90c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=B0smail=20Esat=20Ulu=C3=B6z?= <161027888+Ismail-Esat-Uluoz@users.noreply.github.com> Date: Sun, 5 Apr 2026 03:31:54 +0300 Subject: [PATCH] Create functions_ismailesat_uluoz.py --- Week04/functions_ismailesat_uluoz.py | 43 ++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Week04/functions_ismailesat_uluoz.py diff --git a/Week04/functions_ismailesat_uluoz.py b/Week04/functions_ismailesat_uluoz.py new file mode 100644 index 00000000..fa448c8c --- /dev/null +++ b/Week04/functions_ismailesat_uluoz.py @@ -0,0 +1,43 @@ +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: + """ + Computes a custom mathematical expression. + + :param x: Positional-only integer, default 0 + :param y: Positional-only integer, default 0 + :param a: Exponent for x, default 1 + :param b: Exponent for y, default 1 + :param c: Divisor (keyword-only), default 1 + :return: Computed float result + :rtype: float + """ + return (x**a + y**b) / c + + +def fn_w_counter() -> tuple[int, dict[str, int]]: + if not hasattr(fn_w_counter, "count"): + fn_w_counter.count = 0 + + if not hasattr(fn_w_counter, "history"): + fn_w_counter.history = {} + + name = __name__ + + fn_w_counter.count += 1 + + if name in fn_w_counter.history: + fn_w_counter.history[name] += 1 + else: + fn_w_counter.history[name] = 1 + + return fn_w_counter.count, fn_w_counter.history