# Napiste funkci, ktera vypise a jeden radek tyto znaky: "'\/|/!@#$%^&*()[]{} def specialPrint(): print("\"\'\\/|/!@#$%^&*()[]{}") specialPrint() # Napiste funkci, ktera 100x vypise zaday retezec: def copy100x(text): print(100*text) copy100x("ahoj") # Napiste funkci, ktera bude simulovat hazeni kostky, dokud nepadne sestka. # Na vystup vypise vsechna cisla z jednotlivych hodu import random def simulateDice(): diceResult = 0 while diceResult != 6: diceResult = random.randrange(1,7) print(diceResult) simulateDice() # Napiste stejnou funkci jako v predchozi uloze, # ale jednotliva cisla vratte jako seznam cisel. def simulateDiceWithReturn(): diceResults = [] while len(diceResults) == 0 or diceResults[-1] != 6: diceResults.append( random.randrange(1,7) ) return diceResults # Pokud predchozi funkci mate spravne, # nasledujici radek vypise vsechny hody kostkou. print( simulateDiceWithReturn() ) # Napiste funkci, ktera vezme na vstupu jedno slovo, # a na vystupu vrati totez slovo zasifrovane Cesarovou sifrou: # Priklad: caesarCipher("ahoj", 2) == "cjql" def caesarCipher(word, shiftNumber): word = list(word) for i in range(len(word)): word[i] = chr( ord(word[i]) + shiftNumber ) return ''.join(word) print(caesarCipher("ahoj", 2)) # Napiste funkci, ktera spocita, # kolikrat se v danem seznamu vyskytuje zadane pismeno. # countChar("lalala ahoj", 'a') == 4 def countChar(word, character): counter = 0 for ch in word: if ch == character: counter += 1 return counter print(countChar("lalala ahoj", 'a')) # Napiste funkci, ktera vypise prvnich 128 znaku ASCII tabulky. def printASCII(): for i in range(128): print(chr(i), end=", ") print() printASCII() # Napiste funkci, ktera "precte" zadane cislo po cislicich: # readNumber(327) == "tri dva sedm" def readNumber(number): slovnikCislic = {'0': 'nula', '1': 'jedna', '2': 'dva', '3': 'tri', '4': 'ctyri', '5': 'pet', '6': 'sest', '7': 'sedm', '8': 'osm', '9': 'devet'} seznamCislic = list( str(number) ) for ch in seznamCislic: print(slovnikCislic[ch], end=" ") print() readNumber(523641) # Napiste funkci, ktera vygeneruje seznam N nahodnych cisel # a vypise jejich minimum, maximum, prumer a median. def makeStatistics(N): seznamCisel = [] for i in range(N): seznamCisel.append(random.randrange(0, 1000)) print( min(seznamCisel) ) # min print( max(seznamCisel) ) # max print( sum(seznamCisel)/len(seznamCisel) ) # prumer seznamCisel.sort() print( seznamCisel[N//2] ) # median - prostredni prvek v serazenem seznamu makeStatistics(100000) # Seznam vsech delitelu cisla N def delitele(n): delitele = [] for i in range(1, n+1): if( n % i == 0 ): delitele.append(i) return delitele print("Delitele cisla 120 jsou:") print(delitele(120)) # Hledani vsech prvocisel mensich nez N def prvocislaDo(n): for i in range(n): if len(delitele(i)) == 2: print(i, end=", ") print() print("Prvocisla do 1000 jsou:") prvocislaDo(1000)