Erinevus lehekülje "ITI0011RUS:упражнение 03" redaktsioonide vahel
32. rida: | 32. rida: | ||
'''Задание 2''' | '''Задание 2''' | ||
− | Посчитать сколько раз встречается каждый из символов и вернуть наибольшее значение. Если строка не является | + | Посчитать сколько раз встречается каждый из символов и вернуть наибольшее значение. Если строка не является ДНК, то функция должна вернуть -1 (для проверки используйте уже написанную ''isValidDnaSequence(String sequence) )'' |
<source lang="java"> | <source lang="java"> | ||
49. rida: | 49. rida: | ||
'''Задание 3''' | '''Задание 3''' | ||
− | Преобразовать ДНК в РНК. Это происходит путем замены символов: A -> U, G -> C, C -> G, T -> A. Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную | + | Преобразовать ДНК в РНК. Это происходит путем замены символов: A -> U, G -> C, C -> G, T -> A. Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную ''isValidDnaSequence(String sequence) )'' |
<source lang="java"> | <source lang="java"> | ||
88. rida: | 88. rida: | ||
UGG W CGG R AGG R GGG G | UGG W CGG R AGG R GGG G | ||
− | Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную | + | Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную ''isValidDnaSequence(String sequence) )'' |
Предполагается, что количество символов в строке кратно 3 (если строка является ДНК) | Предполагается, что количество символов в строке кратно 3 (если строка является ДНК) | ||
104. rida: | 104. rida: | ||
<source lang="java">translateProtein(“'''AKLFAAAcr'''”) → null</source> | <source lang="java">translateProtein(“'''AKLFAAAcr'''”) → null</source> | ||
+ | |||
+ | |||
+ | |||
+ | === Шаблон === |
Redaktsioon: 12. veebruar 2015, kell 22:29
Срок сдачи упражнения 5-е занятие (18-е февраля).
Общая информация об упражнениях: ITI0011RUS_Practice.
Обратно на страницу предмета.
Описание
ДНК представляет собой последовательность аминокислот, которые обозначают символами A, C, G, T.
Например, “AACCGTAGC” в то же время строки “acgt”, “AJ2IKK”, “AcGTLKO” не являются ДНК, так как содержат посторонние символы.
Задание 1
Проверить, является ли строка sequence ДНК. Если строка содержит посторонние символы, представляет собой null-объект, функция должна вернуть False, иначе True. Имейте в виду, что если передается пустая строка, то функция должна вернуть True
<source lang="java"> public static boolean isValidDnaSequence(String sequence) </source>
Например: <source lang="java"> isValidDnaSequence(null) → false isValidDnaSequence(“AAAACCGTAC”) → true isValidDnaSequence(“”) → true isValidDnaSequence(“GKS”) → false isValidDnaSequence(“a”) → false </source>
Задание 2
Посчитать сколько раз встречается каждый из символов и вернуть наибольшее значение. Если строка не является ДНК, то функция должна вернуть -1 (для проверки используйте уже написанную isValidDnaSequence(String sequence) )
<source lang="java">
public static int highestOccurrence(String dnaSequence)
</source>
Например: <source lang="java"> highestOccurrence(null) → -1 highestOccurrence(“ACAACCGTGCGC”) → 5 </source> A: 3 раза, C: 5 раз, G: 3 раза, T: 1 раз
Задание 3
Преобразовать ДНК в РНК. Это происходит путем замены символов: A -> U, G -> C, C -> G, T -> A. Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную isValidDnaSequence(String sequence) )
<source lang="java">
public static String transcribe(String dnaSequence)
</source>
Например: <source lang="java"> transcribe(“AAGGCCTT”) → “UUCCGGAA” transcribe(“TATA”) → “AUAU” transcribe(“klj”) → null </source>
Задание 4
Преобразовать ДНК в белок. Преобразование происходит в 2 этапа: 1. Преобразование ДНК в РНК (используйте transcribe(String dnaSequence) ) 2. Полученная строка разбивается на тройки символов и составляется белок в соответствии с таблицей преобразования
UUU F CUU L AUU I GUU V UUC F CUC L AUC I GUC V UUA L CUA L AUA I GUA V UUG L CUG L AUG M GUG V UCU S CCU P ACU T GCU A UCC S CCC P ACC T GCC A UCA S CCA P ACA T GCA A UCG S CCG P ACG T GCG A UAU Y CAU H AAU N GAU D UAC Y CAC H AAC N GAC D UAA Stop CAA Q AAA K GAA E UAG Stop CAG Q AAG K GAG E UGU C CGU R AGU S GGU G UGC C CGC R AGC S GGC G UGA Stop CGA R AGA R GGA G UGG W CGG R AGG R GGG G
Если строка не является ДКН, то функция должна вернуть null (для проверки используйте уже написанную isValidDnaSequence(String sequence) ) Предполагается, что количество символов в строке кратно 3 (если строка является ДНК)
<source lang="java">
public static String translateProtein(String dnaSequence)
</source>
Например:
<source lang="java">translateProtein(“TTTAAAGGGCCC”) → “KFPG”</source> ДНК → РНК “TTTAAAGGGCCC” → “AAAUUUCCCGGG” разбиение на тройки и преобразование “AAA” → “K”, “UUU” → “F”, “CCC” → “P”, “GGG” → “G”
<source lang="java">translateProtein(“AKLFAAAcr”) → null</source>