-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathexercises.py
More file actions
146 lines (96 loc) · 4.2 KB
/
exercises.py
File metadata and controls
146 lines (96 loc) · 4.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
def get_largest_number(numbers):
"""Gets the largest number from the list received.
You CANNOT use `max` built-in method.
:param numbers: List containing corresponding numbers
:return: Largest number found
"""
pass # <--- remove this `pass` and put your code here
def get_smallest_number(numbers):
"""Gets the smallest number from the list received.
You CANNOT use `min` built-in method.
:param numbers: List containing corresponding numbers
:return: Smallest number found
"""
pass # <--- remove this `pass` and put your code here
def get_even_numbers(numbers):
"""Gets all even numbers from the list received.
This function MUST NOT modify the received `numbers` list.
:param numbers: - List containing corresponding numbers
:return: New list containing all even numbers found
"""
pass # <--- remove this `pass` and put your code here
def filter_even_numbers(numbers):
"""Filters even numbers in the list received.
This function MUST modify the received `numbers` list.
:param numbers: List containing corresponding numbers
:return: Nothing
"""
pass # <--- remove this `pass` and put your code here
def draw_solid_rectangle(x, y):
"""Generates a string with a solid rectangle made of * symbols with `x` columns and `y` rows.
:param x: Number of columns (width)
:param y: Number of rows (height)
:return: String containing corresponding solid rectangle
"""
pass # <--- remove this `pass` and put your code here
def draw_rectangle_borders(x, y):
"""Generates a string with a rectangle borders made of * symbols with `x` columns and `y` rows.
:param x: Number of columns (width)
:param y: Number of rows (height)
:return: String containing corresponding rectangle border
"""
pass # <--- remove this `pass` and put your code here
def draw_pyramid(height):
"""Generates a string with a pyramid made of * symbols and `height` rows.
:param height: Number of rows (height)
:return: String containing corresponding pyramid
"""
pass # <--- remove this `pass` and put your code here
def draw_inverted_pyramid(height):
"""Generates a string with a inverted pyramid made of * symbols and `height` rows.
:param height: Number of rows (height)
:return: String containing corresponding inverted pyramid
"""
pass # <--- remove this `pass` and put your code here
def chars_counter(string):
"""Counts number of times each char appears in a string.
You CANNOT use `collections.Counter` class.
Note that uppercase and lowercase are different letters (e.g. 'A' is different from 'a')
:param string: String to count chars
:return: Dictionary with char and counter key-value pairs
"""
pass # <--- remove this `pass` and put your code here
def sort_list_ascending(elements):
"""Sorts list received in a new list with ascending order.
You CANNOT use `sorted` built-in method.
:param elements: List of elements to be sorted
:return: New list with elements sorted
"""
pass # <--- remove this `pass` and put your code here
def check_date(day, month, year):
"""Checks if received date is valid or not.
You CANNOT use `datetime` nor `calendar` modules
Be careful with leap years ;)
:param day: Day number
:param month: Month number
:param year: Year number
:return: True if date is valid, False otherwise
"""
pass # <--- remove this `pass` and put your code here
def check_palindrome(string):
"""Checks if received string is palindrome or not.
Be careful with white spaces, special symbols, lowercase and uppercase ;)
:param string: String to be checked
:return: True if string is palindrome, False otherwise
"""
pass # <--- remove this `pass` and put your code here
def join_strings(strings):
"""Concatenates a list of words with intervening occurrences of comma.
You CANNOT use `str.join` method.
:param strings: List of strings to be concatenated
:return: Concatenated string
"""
pass # <--- remove this `pass` and put your code here
if __name__ == '__main__':
# if you need to execute custom code to check results, do it here!
pass