# Zjistete, jestli je nasledujici retezec validni kod RNA. # Budeme kontrolovat, jestli obsahuje pouze # adenin (A), guanin (G), cytosin (C) a uracil (U). def checkRNA(RNAcode): for amino in RNAcode: if(amino != 'A' and amino != 'G' and amino != 'C' and amino != 'U'): return False return True # Test inputRNA = "ACUAGCUGCAGAUGACCCAGAGAUAGCAGAUGACACGAUGCACGACGAUACAGUACGAGCACGUATACGUACGUACGUACGUACGUACGUACGUACGUCGUACGUACGUACGUACGUACGUACGUACGUACGUACGUACGUCGUACGACGUCGUCGUACGA" if checkRNA(inputRNA) == False: print("OK") else: print("Testovaci RNA obsahuje T, ktery vas program nenasel.") # Vytvorte funkci, ktera ze seznamu zadanych retezcu vyrobi senam jejich delek def getLengths(values): seznamDelek = [] for i in range( len(values) ): seznamDelek.append( len(values[i]) ) return seznamDelek # Test testNames = ["Jan", "Pavel", "Petr", "Gabriel", "Jiri", "Petr", "Lukas"] print("Nasledujici dva radky by se mely rovnat:") print(getLengths(testNames)) print([3, 5, 4, 7, 4, 4, 5]) # Zjistete, kolik slov obsahuje nasledjici nekolikaodstavcovy text: # Znak '\n' vyjadruje prechod na novy radek (enter). longText = "prvni druhy\ntreti ctvrty\npaty sesty\nsedmy osmy\ndevaty desaty" def countWords(text): numberOfWords = 0 foundNewWord = False text += "." # abychom zapocitali i posledni slovo for ch in text: if ch.isalpha() and not foundNewWord: foundNewWord = True numberOfWords += 1 if not ch.isalpha() and foundNewWord: foundNewWord = False return numberOfWords # Test print("Nasledujici dva radky by se mely rovnat:") print(countWords(longText)) print(10) # Najdete v nasledujicim seznamu vsechna duplicitni jmena. # Tato jmena vratte jako novy seznam na vystup. def findDuplicates(values): foundDuplicities = [] for a in range( len(values) ): for b in range( a+1, len(values) ): if(values[a] == values[b]): foundDuplicities.append(values[a]) return foundDuplicities # Test if findDuplicates(testNames) == ["Petr"]: print("OK") else: print("Pouze jmeno Petr se v seznamu nachazi dvakrat.")