diff --git a/Week03/pyramid_elif_gulseren.py b/Week03/pyramid_elif_gulseren.py new file mode 100644 index 00000000..f06be4ae --- /dev/null +++ b/Week03/pyramid_elif_gulseren.py @@ -0,0 +1,10 @@ +def calculate_pyramid_height(number_of_blocks): + height = 0 + layer_blocks = 1 + + while number_of_blocks >= layer_blocks: + number_of_blocks -= layer_blocks + height += 1 + layer_blocks += 1 + + return height diff --git a/Week03/sequences_elif_gulseren.py b/Week03/sequences_elif_gulseren.py new file mode 100644 index 00000000..e1114553 --- /dev/null +++ b/Week03/sequences_elif_gulseren.py @@ -0,0 +1,31 @@ +def remove_duplicates(seq: list) -> list: + """ + This function removes duplicates from a list. + """ + result = [] + for item in seq: + if item not in result: + result.append(item) + return result + + +def list_counts(seq: list) -> dict: + """ + This function counts the number of + occurrences of each item in a list. + """ + counts = {} + for item in seq: + counts[item] = counts.get(item, 0) + 1 + return counts + + +def reverse_dict(d: dict) -> dict: + """ + This function reverses the keys + and values of a dictionary. + """ + reversed_d = {} + for k, v in d.items(): + reversed_d[v] = k + return reversed_d