hw-03 | programming language design - fall'2006, dr. s. yurttas - solution
rationale
This is your first assignment to practice and show that you're able to compose an application using given components by adapting/extending to new uses other than given types.

You'll practice the fundamentals of programming using imperative language abstraction mechanisms in C++ and Java or C# to compose and structure an application using multiple functions/methods.

problem
You'll write an application either in C++ and in C# or Java to count the frequency of any DNA letter[A|C|G|T] for each sequence as follows:
      -> dna filenames : dna-filenames.txt

      [ input sequences -
        dna-00 :
        ATCTCTAGTCATA
        TATCTATCTCTCT
        ACTCCTCTTCTCG
        TAGACTAGGACCT
        TCTTATCTATTCG
        GCCTTGTGGACCC

        dna-01 :
        .
        .
        .
      ]

      -> output filename : dna-counts.txt

      [
        dna-00 :
        A 4, C 3, G 1, T 5
        A 2, C 4, G 0, T 7
        A 1, C 6, G 1, T 5
        A 4, C 3, G 3, T 3
        A 2, C 3, G 1, T 7
        A 1, C 5, G 4, T 3

        dna-01 :
        .
        .
        .
      ]

      
  • For a given file: list the DNA letters with count values as above.
  • Filename for the given datafiles read in, interactively, from command-line.
  • You'll do this repetitively until user decides as N, interactively, from the command-line.
  • You'll create one output file.
  • Structuring and composition as static methods in C#|Java or multiple functions in C++ will be the essence of grading; as well as, correctness.
  • You will use and reuse C#, Java, and C++ collections.
credit : 10 points due October 2 by 11pm.

Valid XHTML 1.0 Transitional