From 6e1ad24ec80a04a262cffda64899a8f48d588151 Mon Sep 17 00:00:00 2001 From: AlexGechovski <48589371+AlexGechovski@users.noreply.github.com> Date: Sun, 17 Oct 2021 19:28:45 +0300 Subject: [PATCH 1/2] Upload Homework 1 Function to check if circles are intercepting. --- .../03_Alex_Gechovski/01_check_circles.py | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 homeworks/03_Alex_Gechovski/01_check_circles.py diff --git a/homeworks/03_Alex_Gechovski/01_check_circles.py b/homeworks/03_Alex_Gechovski/01_check_circles.py new file mode 100644 index 0000000..cf2f993 --- /dev/null +++ b/homeworks/03_Alex_Gechovski/01_check_circles.py @@ -0,0 +1,33 @@ +from math import sqrt + +def check_circles(c1_cen, c1_rad , c2_cen , c2_rad): + + c1_x, c1_y = c1_cen + c2_x, c2_y = c2_cen + + distance = sqrt((c2_y - c1_y)**2 + (c2_x - c1_x)**2) + + if(c1_cen == c2_cen and c1_rad == c2_rad): + return "Matching!" + + if(c1_rad + c2_rad < distance): + return "Not Intersecting!" + + if(c1_rad + c2_rad == distance): + return "Touching!" + + if(c1_rad + c2_rad > distance): + + if(c1_rad + distance == c2_rad or c2_rad + distance == c1_rad): + return "Containing!" + + else: + return "Intercepting!" + +a_c = (2,0) +b_c = (0,0) + +a_r = 3 +b_r = 1 + +print(check_circles(a_c, a_r, b_c, b_r)) From 36a2cbd1368a87123d0ffa5a72a13c448404527d Mon Sep 17 00:00:00 2001 From: AlexGechovski <48589371+AlexGechovski@users.noreply.github.com> Date: Thu, 13 Jan 2022 07:22:32 +0200 Subject: [PATCH 2/2] Add files via upload --- homeworks/03_Alex_Gechovski/Recursion2zad.py | 16 ++++++++++++++++ homeworks/03_Alex_Gechovski/Recursion3zad.py | 19 +++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 homeworks/03_Alex_Gechovski/Recursion2zad.py create mode 100644 homeworks/03_Alex_Gechovski/Recursion3zad.py diff --git a/homeworks/03_Alex_Gechovski/Recursion2zad.py b/homeworks/03_Alex_Gechovski/Recursion2zad.py new file mode 100644 index 0000000..01c2a38 --- /dev/null +++ b/homeworks/03_Alex_Gechovski/Recursion2zad.py @@ -0,0 +1,16 @@ + +ways = 0 + +def num_ways(steps): + + if steps == 0: + global ways + ways = ways +1 + return + + num_ways(steps - 1) + if steps > 1: + num_ways(steps - 2) + +num_ways(9) +print(ways) diff --git a/homeworks/03_Alex_Gechovski/Recursion3zad.py b/homeworks/03_Alex_Gechovski/Recursion3zad.py new file mode 100644 index 0000000..cd5e08d --- /dev/null +++ b/homeworks/03_Alex_Gechovski/Recursion3zad.py @@ -0,0 +1,19 @@ +def replace_1(list_1,find,replace): + + if not isinstance(list_1,list) and not isinstance(list_1,tuple): + return + + for i,value in enumerate(list_1): + if value == find: + + list_1[i] = replace + elif isinstance(list_1, list) or isinstance(list_1,tuple): + + replace_1(value,find,replace) + + + +list_1 = [ 'a', 1, [ ['a', 'b'], 1], ([1, 3, 'a'], 'b')] +replace_1(list_1, 'a', 'c') +print(list_1) # => [ 'c', 1, [ ['c', 'b'], 1], ([1, 3, 'c'], 'b')] +