ترجم تسلسلات RNA إلى بروتينات.
يمكن تقسيم RNA إلى تسلسلات ثلاثية النيوكليوتيدات تُسمّى الكودونات، ثم تُترجم إلى بروتين على النحو التالي:
RNA: "AUGUUUUCU" => تُترجم إلى
الكودونات: "AUG", "UUU", "UCU"
=> التي تصبح بروتينًا بالتسلسل التالي =>
البروتين: "Methionine", "Phenylalanine", "Serine"
يوجد 64 كودونًا تقابل بدورها 20 حمضًا أمينيًا؛ ومع ذلك، ليست كل تسلسلات الكودونات والأحماض الأمينية الناتجة مهمة في هذا التمرين. إذا نجح الأمر مع كودون واحد، فينبغي أن يعمل البرنامج معها جميعًا. لكن لا تتردد في توسيع القائمة في مجموعة الاختبارات لتشملها كلها.
توجد أيضًا ثلاثة كودونات مُنهية (تُعرف أيضًا باسم كودونات 'STOP')؛ وإذا صادف الريبوسوم أيًّا منها، انتهت الترجمة بأكملها وتوقف تكوين البروتين.
وتُهمل جميع الكودونات التي تأتي بعدها، على النحو التالي:
RNA: "AUGUUUUCUUAAAUG" =>
الكودونات: "AUG", "UUU", "UCU", "UAA", "AUG" =>
البروتين: "Methionine", "Phenylalanine", "Serine"
لاحظ أن كودون التوقف "UAA" ينهي الترجمة، وأن الحمض الأميني الأخير methionine لا يُترجم إلى تسلسل البروتين.
فيما يلي الكودونات والأحماض الأمينية الناتجة المطلوبة في التمرين.
| Codon | Amino Acid |
|---|---|
| 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 |
اعرف المزيد عن ترجمة البروتين على ويكيبيديا.
سجّل في Exercism لتتعلّم وتتقن Haskell عبر 107 تمارين، وإرشاد بشري حقيقي، وكل ذلك مجانًا.
استكشف 11 طريقة مختلفة لحل هذا التمرين، بما في ذلك أساليب أمرية، وأفكار دالية مثل مطابقة الأنماط والاستدعاء الذاتي والدوال ذات الرتبة الأعلى، وبعض البرمجة منخفضة المستوى بلغتَي C++ وAssembly.