A tua tarefa é traduzir sequências de ARN em proteínas.
As cadeias de ARN são constituídas por sequências de três nucleótidos chamadas codões. Cada codão traduz-se num aminoácido. Quando se unem, esses aminoácidos formam uma proteína.
No mundo real existem 64 codões, que por sua vez correspondem a 20 aminoácidos. No entanto, neste exercício só vais usar alguns dos 64 possíveis. Estão listados a seguir:
| Codão | 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 |
Por exemplo, a string de ARN “AUGUUUUCU” tem três codões: “AUG”, “UUU” e “UCU”. Estes correspondem a Methionine, Phenylalanine e Serine.
Repara que, na tabela acima, há três codões “STOP”. Se encontrares algum destes codões, ignora o resto da sequência: a proteína está completa.
Por exemplo, “AUGUUUUCUUAAAUG” contém um codão STOP (“UAA”). Assim que chegamos a esse ponto, deixamos de processar. Por isso, só consideramos a parte anterior a ele (ou seja, “AUGUUUUCU”), e não os codões que vêm depois (ou seja, “AUG”).
Sabe mais sobre tradução de proteínas na Wikipédia.
Inscreve-te no Exercism para aprenderes e dominares Zig com 104 exercícios, e mentoria humana real, tudo grátis.
Explora 11 formas diferentes de resolver este exercício, incluindo abordagens imperativas, ideias funcionais como a correspondência de padrões, a recursão e as funções de ordem superior, e ainda algum código de baixo nível em C++ e Assembly.