1
0
forked from tdwojak/Python2017
This commit is contained in:
s45165 2017-11-27 21:23:07 +01:00
parent 9e7ad31f19
commit e89d2834ac
8 changed files with 119 additions and 10 deletions

View File

@ -7,7 +7,10 @@ Jeśli podany argument jest mniejszy od 1 powinna być zwracana wartość 0.
""" """
def sum_from_one_to_n(n): def sum_from_one_to_n(n):
pass if n >= 1:
return sum(range(1,n+1))
else:
return 0
def tests(f): def tests(f):

View File

@ -9,8 +9,13 @@ trzyelementowe listy liczb zmiennoprzecinkowych.
np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5. np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5.
""" """
x=[0,0,0]
y=[3,4,0]
def euclidean_distance(x, y): def euclidean_distance(x, y):
pass return ((x[0]-y[0])**2+(x[1]-y[1])**2+(x[2]-y[2])**2)**0.5
euclidean_distance(x,y)
def tests(f): def tests(f):
inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]] inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]]

View File

@ -5,12 +5,22 @@
Napisz funkcję big_no zwracającej tzw. "Big 'NO!'" Napisz funkcję big_no zwracającej tzw. "Big 'NO!'"
(zob. http://tvtropes.org/pmwiki/pmwiki.php/Main/BigNo) (zob. http://tvtropes.org/pmwiki/pmwiki.php/Main/BigNo)
dla zadanej liczby tj. napis typu "NOOOOOOOOOOOOO!", gdzie liczba 'O' ma być dla zadanej liczby tj. napis typu "NOOOOOOOOOOOOO!", gdzie liczba 'O' ma być
równa podanemu argumentem, przy czym jeśli argument jest mniejszy niż 5, równa podanemu argumentu, przy czym jeśli argument jest mniejszy niż 5,
ma być zwracany napis "It's not a Big 'No!'". ma być zwracany napis "It's not a Big 'No!'".
""" """
def big_no(n): def big_no(n):
pass if n<5:
return "It's not a Big 'No!'"
else:
return "N" + 'O'*n + '!'
#big_no(4)
def tests(f): def tests(f):
inputs = [[5], [6], [2]] inputs = [[5], [6], [2]]

View File

@ -5,8 +5,24 @@
Napisz funkcję char_sum, która dla zadanego łańcucha zwraca Napisz funkcję char_sum, która dla zadanego łańcucha zwraca
sumę kodów ASCII znaków. sumę kodów ASCII znaków.
""" """
#def char_sum(text):
#sum([ord(litera) for litera in list(text)])
tablica=[]
def char_sum(text): def char_sum(text):
pass tablica.clear()
for litera in list(text):
tablica.append(ord(litera))
return(sum(tablica))
#tablica.clear()
#char_sum("this is a string")
#char_sum('a')
def tests(f): def tests(f):
inputs = [["this is a string"], ["this is another string"]] inputs = [["this is a string"], ["this is another string"]]

View File

@ -6,8 +6,16 @@ Napisz funkcję sum_div35(n), która zwraca sumę wszystkich liczb podzielnych
przez 3 lub 5 mniejszych niż n. przez 3 lub 5 mniejszych niż n.
""" """
tablica=[]
def sum_div35(n): def sum_div35(n):
pass tablica.clear()
for i in range(1,n):
if (i % 3 ==0 or i% 5 ==0):
tablica.append(i)
return(sum(tablica))
#sum_div35(6)
def tests(f): def tests(f):
inputs = [[10], [100], [3845]] inputs = [[10], [100], [3845]]

View File

@ -9,7 +9,11 @@ Np. leet('leet') powinno zwrócić '1337'.
def leet_speak(text): def leet_speak(text):
pass for litera in ["e", "l", "o", "t"]:
if litera in text:
return text.replace("e", "3").replace("l", "1").replace("o", "0").replace("t", "7")
def tests(f): def tests(f):

View File

@ -6,14 +6,64 @@
Napisz funkcję pokemon_speak, która zamienia w podanym napisie co drugą literę Napisz funkcję pokemon_speak, która zamienia w podanym napisie co drugą literę
na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'. na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'.
""" """
#tekst=("edyta")
#def pokemon_speak(tekst):
#for litera in tekst:
#if litera in tekst[::2]:
#return litera.upper()
#def pokemon_speak(text):
#return [text.upper() for x in text[::2]]
#def pokemon_speak(text):
#return [x.upper() for x in text[::2]]
#if litera in text[::2]:
#return text[::2].upper()
#else:
#return text[::1].lower()
#pokemon_speak("edytarenkjacek")
def pokemon_speak(text): def pokemon_speak(text):
pass indices=set([0,2,4,6,8,10,12,14,16,18])
#indices=set(index(text[::2]))
return("".join(c.upper() if i in indices else c for i, c in enumerate(text)))
# def fold(s):
# uppers = s[0::2].upper()
# lowers = s[1::2].lower()
# return zip(uppers, lowers)
# def fold(s):
# time_to_upper = True
# result = ""
# for ch in s:
# if time_to_upper:
# result += ch.upper()
# else:
# result += ch.lower()
# time_to_upper = not time_to_upper
# return result
#
# def fold(s):
# time_to_upper = True
# result = ""
# for ch in s:
# if time_to_upper:
# result += ch.upper()
# else:
# result += ch.lower()
# time_to_upper = not time_to_upper
# return result
#
# s="edyta"
#indices=set([text[::2]])
def tests(f): def tests(f):
inputs = [['pokemon'], ['do not want'], 'POKEMON'] inputs = [['pokemon'], ['do not want'], ['POKEMON']]
outputs = ['PoKeMoN', 'Do nOt wAnT', 'POKEMON'] outputs = ['PoKeMoN', 'Do nOt wAnT', 'POKEMON']
for input, output in zip(inputs, outputs): for input, output in zip(inputs, outputs):

View File

@ -7,10 +7,23 @@ Napisz funkcję common_chars(string1, string2), która zwraca alfabetycznie
uporządkowaną listę wspólnych liter z lańcuchów string1 i string2. uporządkowaną listę wspólnych liter z lańcuchów string1 i string2.
Oba napisy będą składać się wyłacznie z małych liter. Oba napisy będą składać się wyłacznie z małych liter.
""" """
# tablica=[]
# def common_chars(string1, string2):
# for x in string1:
# for x in string2:
# tablica.append(x)
# return set(tablica)
# common_chars("this is a string", "ala ma kota")
def common_chars(string1, string2): def common_chars(string1, string2):
pass s=set(string1)
t=set(string2)
intersect1 = s.intersection(t).difference("' '")
intersect1 = list(intersect1)
intersect1.sort()
return intersect1
#print(type(intersect1))
def tests(f): def tests(f):
inputs = [["this is a string", "ala ma kota"]] inputs = [["this is a string", "ala ma kota"]]