Code in C++ only
A DNA sequence is a string that contains only the characters 'A', 'T', 'C', 'G' (representing the four bases adenine, A; thymine, T; cytosine, C; guanine, G). You are to implement a C++ class that can count the number of times a specific triplet of bases (also called a codon, e.g., "ATC”, “GGG”, “TAG") appears in a set of DNA sequences. For example, given two DNA sequences: TCTCCCTGACCC and CCCTGACCC TCT count = 1 CCC count = 4 • TGA count = 2 GAT count = 0 . Implement your logic in a class codons . The class should have 3 public member functions: 1. Codons ( ) : the default constructor 2. void readstring(string sequence): method which takes in one DNA sequence and sets your object's member variables. E.g., for the two DNA sequences shown above: O O codons.readstring("TCTCCCTGACCC"); codons.readstring("CCCTGACCC"); 3. int getcount (string codon) : given a triplet/codon, return the number of times it appears in all the DNA sequences previously read. E.g., after reading the two DNA sequences given above: o getcount("TCT") returns 1 o getCount("CCC") returns 4 o getCount("TGA") returns 2 o getCount("GAT") returns 0 These public member functions will be called from the provided main program (part2.cpp) and the answers checked there. You can modify the main function to test your code with different input cases to make sure the logic will work in the general case - we test your code with different DNA sequences not included here.
. You are free to add other member variables and functions to the class if needed. • Error checking is not needed. You can assume that all DNA sequences have lengths that are a multiple of 3 and contain only the 4 characters 'A', 'T', 'C', 'G • You can implement your code either in one header file called h or split the declaration and definition in codons.h and codons.cpp Hint: • You can get a substring of a string using the substr() method. For example: substr(i, 3) gives the 3 characters starting from position i. Data structures: you are encouraged to use the C++ Standard Library containers. Required documentation: • Write a short description of your approach as a long comment at the beginning of codons.h . Make clear what, if any, data structures you use and their roles.
Code in C++ only
-
- Site Admin
- Posts: 899603
- Joined: Mon Aug 02, 2021 8:13 am