Übersetze RNA-Sequenzen in Proteine.
RNA lässt sich in Sequenzen aus jeweils drei Nukleotiden aufteilen, die man Codons nennt, und dann wie folgt in ein Polypeptid übersetzen:
RNA: "AUGUUUUCU" => wird übersetzt zu
Codons: "AUG", "UUU", "UCU"
=> daraus entsteht ein Polypeptid mit der folgenden Sequenz =>
Protein: "Methionine", "Phenylalanine", "Serine"
Es gibt 64 Codons, die wiederum 20 Aminosäuren entsprechen. In dieser Übung sind aber nicht alle Codon-Sequenzen und die daraus entstehenden Aminosäuren wichtig. Wenn es für ein Codon funktioniert, sollte das Programm für alle funktionieren. Du kannst die Liste in den Tests aber gerne erweitern, um alle aufzunehmen.
Außerdem gibt es drei terminierende Codons (auch 'STOP'-Codons genannt). Trifft das Ribosom auf eines dieser Codons, endet die Übersetzung und das Protein wird abgebrochen.
Alle darauf folgenden Codons werden ignoriert, wie hier:
RNA: "AUGUUUUCUUAAAUG" =>
Codons: "AUG", "UUU", "UCU", "UAA", "AUG" =>
Protein: "Methionine", "Phenylalanine", "Serine"
Beachte, dass das Stop-Codon "UAA" die Übersetzung beendet und das letzte Methionin nicht in die Proteinsequenz übersetzt wird.
Hier sind die Codons und die daraus entstehenden Aminosäuren, die du für die Übung brauchst.
| Codon | Protein |
|---|---|
| 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 |
Erfahre mehr über die Protein-Translation auf Wikipedia.
Melde dich bei Exercism an, um Nim mit 70 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.
Entdecke 11 verschiedene Lösungswege für diese Übung, darunter imperative Ansätze, funktionale Ideen wie Pattern Matching, Rekursion und Funktionen höherer Ordnung sowie etwas Programmierung auf niedriger Ebene in C++ und Assembler.