Traduza sequências de RNA em proteínas.
O RNA pode ser dividido em sequências de três nucleotídeos chamadas de códons e, em seguida, traduzido para uma proteína assim:
RNA: "AUGUUUUCU" => traduz para
Códons: "AUG", "UUU", "UCU"
=> que se tornam uma proteína com a seguinte sequência =>
Proteína: "Methionine", "Phenylalanine", "Serine"
Existem 64 códons que, por sua vez, correspondem a 20 aminoácidos; no entanto, nem todas as sequências de códons e os aminoácidos resultantes são importantes neste exercício. Se funcionar para um códon, o programa deve funcionar para todos. No entanto, fique à vontade para expandir a lista na suíte de testes e incluir todos.
Existem também três códons de terminação (também conhecidos como códons 'STOP'); se qualquer um desses códons for encontrado (pelo ribossomo), toda a tradução termina e a proteína é terminada.
Todos os códons subsequentes depois disso são ignorados, assim:
RNA: "AUGUUUUCUUAAAUG" =>
Códons: "AUG", "UUU", "UCU", "UAA", "AUG" =>
Proteína: "Methionine", "Phenylalanine", "Serine"
Observe que o códon de parada "UAA" encerra a tradução e a metionina final não é traduzida para a sequência da proteína.
Abaixo estão os códons e os aminoácidos resultantes necessários para o exercício.
| Códon | Aminoácido |
|---|---|
| AUG | Methionine |
| UUU, UUC | Phenylalanine |
| UUA, UUG | Leucine |
| UCU, UCC, UCA, UCG | Serine |
| UAU, UAC | Tyrosine |
| UGU, UGC | Cysteine |
| UGG | Tryptophan |
| UAA, UAG, UGA | STOP |
Saiba mais sobre tradução de proteínas na Wikipédia.
Crie sua conta no Exercism para aprender e dominar Erlang com 85 exercícios e mentoria humana de verdade, tudo de graça.
Explore 11 maneiras diferentes de resolver este exercício, incluindo abordagens imperativas, ideias funcionais como casamento de padrões, recursão e funções de ordem superior, além de um pouco de código de baixo nível em C++ e Assembly.