Tracks
/
Delphi Pascal
Delphi Pascal
/
Übungen
/
Protein-Translation
Protein-Translation

Protein-Translation

Einfach

Anleitung

Übersetze RNA-Sequenzen in Proteine.

Man kann RNA in Sequenzen aus jeweils drei Nukleotiden zerlegen, die Codons genannt werden, und diese 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 jedoch nicht alle Codonsequenzen 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 der Testsuite aber gerne erweitern, um alle aufzunehmen.

Außerdem gibt es drei terminierende Codons (auch als „STOP“-Codons bekannt). Trifft das Ribosom auf eines dieser Codons, endet die gesamte Translation und das Protein wird beendet.

Alle danach folgenden Codons werden ignoriert, so wie hier:

RNA: "AUGUUUUCUUAAAUG" =>

Codons: "AUG", "UUU", "UCU", "UAA", "AUG" =>

Protein: "Methionine", "Phenylalanine", "Serine"

Beachte, dass das Stopp-Codon "UAA" die Translation beendet und das letzte Methionin nicht in die Proteinsequenz übersetzt wird.

Unten stehen die Codons und die daraus entstehenden Aminosäuren, die für die Übung benötigt werden.

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


Quelle

Tyler Long
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
Delphi Pascal Exercism

Bereit, mit Protein-Translation zu starten?

Melde dich bei Exercism an, um Delphi Pascal mit 76 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.

Tauche tiefer in Protein-Translation ein!

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.