Александър обнови решението на 24.10.2022 18:49 (преди около 3 години)
+starting_colors = {
+    'C0FFC0' : (-1,0),
Слагай интервали след всяка запетая. Това е приетият синтаксис.
+    '00C000' : (1,0),
+    'FFFFC0' : (0,-1),
+    'C0C000' : (0,1),
+    'FFC0C0' : (1,0),
+    'C00000' : (-1,0),  
+    'C0C0FF' : (0,1),
+    '0000C0' : (0,-1),
+    'FFFFFF' : (0,0),
+    '000000' : (100,100),
100, 100 е доста случаен начин за проверка на финални координати. Ами ако това са реални координати за стъпка, които функцията ти в някакъв момент ще получи (промяна на изискванията)?
+}
+
+def calculate_final_vector(starting_coordinates, colors):
+    colors = [x.upper() for x in colors]
+    for i in colors:
i би ми подсказало, че това е индекс, а то не е. По-добре име би било 'color'.
+        if starting_colors[i] == (100,100):
+            return starting_coordinates
+        else: 
+            c = tuple(x+y for x, y in zip(starting_coordinates, starting_colors[i]))
c не носи много информация за съдържанието на променливата. Бих използвал нещо по-описателно. Като цяло еднобуквените променливи са излишни - нищо не печелиш, само губиш. По-подробно име винаги е по-добре.
+            starting_coordinates = c
+    return starting_coordinates

Слагай интервали след всяка запетая. Това е приетият синтаксис.
100, 100 е доста случаен начин за проверка на финални координати. Ами ако това са реални координати за стъпка, които функцията ти в някакъв момент ще получи (промяна на изискванията)?
iби ми подсказало, че това е индекс, а то не е. По-добре име би било 'color'.cне носи много информация за съдържанието на променливата. Бих използвал нещо по-описателно. Като цяло еднобуквените променливи са излишни - нищо не печелиш, само губиш. По-подробно име винаги е по-добре.