using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DNA_Bases { public class Program { private static Dictionary bases; private static Dictionary codons; private static string originalString; private static string flippedString; private static string proteinString; public static void Main(string[] args) { originalString = Console.ReadLine(); SetupDictionaries(); foreach (char dnaBase in originalString) { flippedString += bases[dnaBase]; } for (int i = 0; i < originalString.Length; i += 3) { string codon = originalString.Substring(i, 3); proteinString += codons[codon]; if (codons[codon] != "STOP") { proteinString += " "; } } Console.WriteLine(originalString); Console.WriteLine(flippedString); Console.WriteLine(proteinString); } private static void SetupDictionaries() { bases = new Dictionary() { {'A', 'T'}, {'T', 'A'}, {'C', 'G'}, {'G', 'C'} }; codons = new Dictionary() { {"TTT", "Phe"}, {"TTC", "Phe"}, {"TTA", "Leu"}, {"TTG", "Leu"}, {"CTT", "Leu"}, {"CTC", "Leu"}, {"CTA", "Leu"}, {"CTG", "Leu"}, {"ATT", "Ile"}, {"ATC", "Ile"}, {"ATA", "Ile"}, {"ATG", "Met"}, {"GTT", "Val"}, {"GTC", "Val"}, {"GTA", "Val"}, {"GTG", "Val"}, {"TCT", "Ser"}, {"TCC", "Ser"}, {"TCA", "Ser"}, {"TCG", "Ser"}, {"CCT", "Pro"}, {"CCC", "Pro"}, {"CCA", "Pro"}, {"CCG", "Pro"}, {"ACT", "Thr"}, {"ACC", "Thr"}, {"ACA", "Thr"}, {"ACG", "Thr"}, {"GCT", "Ala"}, {"GCC", "Ala"}, {"GCA", "Ala"}, {"GCG", "Ala"}, {"TAT", "Tyr"}, {"TAC", "Tyr"}, {"TAA", "STOP"}, {"TAG", "STOP"}, {"CAT", "His"}, {"CAC", "His"}, {"CAA", "Gln"}, {"CAG", "Gln"}, {"AAT", "Asn"}, {"AAC", "Asn"}, {"AAA", "Lys"}, {"AAG", "Lys"}, {"GAT", "Asp"}, {"GAC", "Asp"}, {"GAA", "Glu"}, {"GAG", "Glu"}, {"TGT", "Cys"}, {"TGC", "Cys"}, {"TGA", "STOP"}, {"TGG", "Trp"}, {"CGT", "Arg"}, {"CGC", "Arg"}, {"CGA", "Arg"}, {"CGG", "Arg"}, {"AGT", "Ser"}, {"AGC", "Ser"}, {"AGA", "Arg"}, {"AGG", "Arg"}, {"GGT", "Gly"}, {"GGC", "Gly"}, {"GGA", "Gly"}, {"GGG", "Gly"} }; } } }