Write a program that will read in a genome and display all the genes in the genome. Your program must do the
following:
- Include a function named genes that will take two arguments: a string containing a DNA sequence
as described above plus an integer reference parameter, and return a dynamically-allocated array of
strings containing all the genes in the DNA sequence. Each string in the array will contain a unique
gene. The number of elements in the array should be exactly equal to the number of genes in the
sequence and the number of genes found should be returned using the function's reference argument.
- Include a main function that will solicit a DNA sequence string from the user, call the genes function
to obtain all the genes in the sequence and print each one on the console display.
[Hint: there are many ways to do this, but you may find it easiest to perform two "passes" of the sequence. A
first pass to determine how many genes there are, and a second to construct the individual gene strings]
Example:
Enter a DNA sequence: TCATGTGCCCAAGCTGACTATGGCCCAATAGCG
Gene 1 TGCCCAAGC
Gene 2 GCCCAA
Individual genes are substrings of a genome delineated by 3-element start and stop codons. Genes begin with
the start codon ATG and end with one of the following 3 stop codons: TAG, TAA or TGA. Note that start codons
can appear anywhere in the string, followed by a series of 3-element codons and ending with a stop codon.
Note that genes are multiples of 3 in length and do not contain any of the triples ATG, TAG, TAA or TGA.