diff --git a/labs02/task01.py b/labs02/task01.py index 7c08c56..d4da558 100644 --- a/labs02/task01.py +++ b/labs02/task01.py @@ -7,7 +7,8 @@ która zawiera tylko elementy z list o parzystych indeksach. """ def even_elements(lista): - pass + x = lista[::2] + return x def tests(f): diff --git a/labs02/task02.py b/labs02/task02.py index a6d6321..db7202c 100644 --- a/labs02/task02.py +++ b/labs02/task02.py @@ -6,7 +6,13 @@ """ def days_in_year(days): - pass + if days % 4 == 0 and days % 100 != 0: + return 366 + elif days % 400 == 0: + return 366 + else: + return 365 + def tests(f): inputs = [[2015], [2012], [1900], [2400], [1977]] diff --git a/labs02/task03.py b/labs02/task03.py index a1c3a85..8168f08 100644 --- a/labs02/task03.py +++ b/labs02/task03.py @@ -13,7 +13,12 @@ jak 'set', która przechowuje elementy bez powtórzeń.) def oov(text, vocab): - pass + finalList = [] + wordList = text.split(" ") + for word in wordList: + if word not in vocab: + finalList.append(word) + return finalList diff --git a/labs02/task04.py b/labs02/task04.py index 37413f1..c65019f 100644 --- a/labs02/task04.py +++ b/labs02/task04.py @@ -7,7 +7,10 @@ Jeśli podany argument jest mniejszy od 1 powinna być zwracana wartość 0. """ def sum_from_one_to_n(n): - pass + if n < 1: + return 0 + else: + return sum(range(1,n+1)) def tests(f): diff --git a/labs02/task05.py b/labs02/task05.py index f59268a..ece8288 100644 --- a/labs02/task05.py +++ b/labs02/task05.py @@ -9,8 +9,14 @@ trzyelementowe listy liczb zmiennoprzecinkowych. np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5. """ +import math def euclidean_distance(x, y): - pass + x1 = x[0] + x2 = y[0] + y1 = x[1] + y2 = y[1] + z = math.sqrt((x1-x2)**2+(y1-y2)**2) + return z def tests(f): inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]] diff --git a/labs02/task06.py b/labs02/task06.py index ff4a9d3..b5fa1b9 100644 --- a/labs02/task06.py +++ b/labs02/task06.py @@ -10,7 +10,12 @@ ma być zwracany napis "It's not a Big 'No!'". """ def big_no(n): - pass + if n < 5: + return "It's not a Big 'No!'" + else: + bigO = "O"*n + return "N"+bigO+"!" + def tests(f): inputs = [[5], [6], [2]] diff --git a/labs02/task07.py b/labs02/task07.py index 80cbd37..6fba4d2 100644 --- a/labs02/task07.py +++ b/labs02/task07.py @@ -6,7 +6,11 @@ Napisz funkcję char_sum, która dla zadanego łańcucha zwraca sumę kodów ASCII znaków. """ def char_sum(text): - pass + letterSum = 0 + for letter in text: + letterSum += ord(letter) + return letterSum + def tests(f): inputs = [["this is a string"], ["this is another string"]] diff --git a/labs02/task08.py b/labs02/task08.py index 252b10d..39e85ca 100644 --- a/labs02/task08.py +++ b/labs02/task08.py @@ -7,7 +7,11 @@ przez 3 lub 5 mniejszych niż n. """ def sum_div35(n): - pass + finalSum = 0 + for i in range(1,n): + if i % 3 == 0 or i % 5 == 0: + finalSum += i + return finalSum def tests(f): inputs = [[10], [100], [3845]] diff --git a/labs02/task09.py b/labs02/task09.py index 9045054..d30b053 100644 --- a/labs02/task09.py +++ b/labs02/task09.py @@ -9,7 +9,20 @@ Np. leet('leet') powinno zwrócić '1337'. def leet_speak(text): - pass + letterList = list(text) + x = 0 + for i in letterList: + if i == 'e': + letterList[x] = '3' + elif i == 'l': + letterList[x] = '1' + elif i == 'o': + letterList[x] = '0' + elif i == 't': + letterList[x] = '7' + x += 1 + finalOutput = ''.join(letterList) + return finalOutput def tests(f): diff --git a/labs02/task10.py b/labs02/task10.py index f380f0a..6b9f3be 100644 --- a/labs02/task10.py +++ b/labs02/task10.py @@ -9,11 +9,21 @@ na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'. def pokemon_speak(text): - pass + letterList = list(text) + + x = 0 + for i in letterList: + if i.isalpha() and (x == 0 or x % 2 == 0): + letterList[x] = i.upper() + x += 1 + finalOutput = ''.join(letterList) + return finalOutput + + def tests(f): - inputs = [['pokemon'], ['do not want'], 'POKEMON'] + inputs = [ ['pokemon'], ['do not want'], ['POKEMON']] outputs = ['PoKeMoN', 'Do nOt wAnT', 'POKEMON'] for input, output in zip(inputs, outputs): diff --git a/labs02/task11.py b/labs02/task11.py index 7d36767..674f36b 100644 --- a/labs02/task11.py +++ b/labs02/task11.py @@ -9,7 +9,14 @@ Oba napisy będą składać się wyłacznie z małych liter. """ def common_chars(string1, string2): - pass + finalList = [] + for i in string1: + if i.isalpha() and i in string2 and i not in finalList: + finalList.append(i) + for j in string2: + if j.isalpha() and j in string1 and j not in finalList: + finalList.append(j) + return sorted(finalList) def tests(f):