This assignment will give you practice with arrays and producing an external output file. You are going to create a program that processes an input file of data for particular DNA sequencer test. This particular DNA sequencer test is designed to take a sample of bacterial and generate a sequence of values for it, and then retest it at a time interval later to see if the DNA has or has not effectively changed. Your assignment is to create a program that will give the user a brief introduction, then allow the user to type in the name of the file to be analyzed, the name of the data file to generate, and then process the data to match the output that is shown below. This DNA test measures the various parts of the sequence and assigns them a letter. While the letters could be anything from A to Z, the only letters that matter for this test are the letters {A,B,C,D} all other letters can be ignored completely. A sample will be tested, given a length of time and then tested again. Each time the scientist will generate a line of data. Here is one Example: Example #1 AAAAABBBBBCCCCCDDDDD AAEBCBAFBBCDCECDADDEFEEFFF At first glance the sample looks significantly different after the second test. But if you look at the data, you will note that since we only care about A,B,C,D's that the second line does have the same number of A's , B's, C's and Ver 3.0 D's. This means that while it looks different we would say that the sample is non-mutated. Note however that what is important is not the exact number, but the percentages. In the above case the percentages are 25% A's , 25% B's, 25% C's and 25% D's. (Note that it is 25% of the letters we care about, not the total). If another sample started with 10 A's, 10 B's, 10 C's, and 5 D's, and ended with 20/20/20/10. That would also be considered a nonmutation because while the numbers are different, the percentages are the same. Contrast that with the data below. Example #2 AAATAABTBBBBCCCCTCDDTDDD AASAABBSBBCCSCCDSDDDEEEAEEFBFFFDDF If we look at example #2. The initial percentages are [25, 25, 25, 25] but then in the second test they changed to [25, 25, 20, 30], which is a change and therefore counts as a mutation. SAMPLE INPUT FILE Example #1 AAAAABBBBBCCCCCDDDDD AAEBCBAFBBCDCECDADDEFEEFFF Example #2 AAATAABTBBBBCCCCTCDDTDDD AASAABBSBBCCSCCDSDDDEEEAEEFBFFFDDF SAMPLE OUTPUT FILE Example #1 Before: 5 - 5 - 5 - 5 After: 4 - 4 - 4 - 4 Before: 25%/25%/25%/25% After: 25%/25%/25%/25% MATCH Example #2 Before: 5 - 5 - 5 - 5 After: 5 - 5 - 4 - 6 Before: 25%/25%/25%/25% After: 25%/25%/20%/30% DIFFERENT SAMPLE CODE EXECUTION This program processes a file of DNA structures for various biological samples to determine if a mutation of a particular nature has occurred. input file name: myFile.txt output file: Data.txt You should round percentages to the nearest integer. You can use the Math.round method to do so, but you will have to cast the result to an int, as in: int percent = (int) Math.round(percentage); The output for this program will generate an output file. You do so by constructing an object of type PrintStream and writing to it in the same way you write to System.out (with print and println statements).

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

This assignment will give you practice with arrays and producing an external output file. You are going to create a program that processes an input file of data for particular DNA sequencer test.
This particular DNA sequencer test is designed to take a sample of bacterial and generate a sequence of values for it, and then retest it at a time interval later to see if the DNA has or has not effectively changed.

Your assignment is to create a program that will give the user a brief introduction, then allow the user to type in the name of the file to be analyzed, the name of the data file to generate, and then process the data to match the output that is shown below.

This DNA test measures the various parts of the sequence and assigns them a letter. While the letters could be anything from A to Z, the only letters that matter for this test are the letters {A,B,C,D} all other letters can be ignored completely.
A sample will be tested, given a length of time and then tested again. Each time the scientist will generate a line of data.
Here is one Example:
Example #1 AAAAABBBBBCCCCCDDDDD AAEBCBAFBBCDCECDADDEFEEFFF
At first glance the sample looks significantly different after the second test. But if you look at the data, you will note that since we only care about A,B,C,D's that the second line does have the same number of A's , B's, C's and
Ver 3.0
D's. This means that while it looks different we would say that the sample is non-mutated. Note however that what is important is not the exact number, but the percentages. In the above case the percentages are 25% A's , 25% B's, 25% C's and 25% D's. (Note that it is 25% of the letters we care about, not the total). If another sample started with 10 A's, 10 B's, 10 C's, and 5 D's, and ended with 20/20/20/10. That would also be considered a nonmutation because while the numbers are different, the percentages are the same.
Contrast that with the data below.
Example #2 AAATAABTBBBBCCCCTCDDTDDD AASAABBSBBCCSCCDSDDDEEEAEEFBFFFDDF
If we look at example #2. The initial percentages are [25, 25, 25, 25] but then in the second test they changed to [25, 25, 20, 30], which is a change and therefore counts as a mutation.
SAMPLE INPUT FILE

Example #1 AAAAABBBBBCCCCCDDDDD AAEBCBAFBBCDCECDADDEFEEFFF Example #2 AAATAABTBBBBCCCCTCDDTDDD AASAABBSBBCCSCCDSDDDEEEAEEFBFFFDDF

SAMPLE OUTPUT FILE

Example #1 Before: 5 - 5 - 5 - 5 After: 4 - 4 - 4 - 4 Before: 25%/25%/25%/25% After: 25%/25%/25%/25% MATCH

Example #2 Before: 5 - 5 - 5 - 5 After: 5 - 5 - 4 - 6 Before: 25%/25%/25%/25% After: 25%/25%/20%/30% DIFFERENT

SAMPLE CODE EXECUTION

This program processes a file of DNA structures for various biological samples to determine if a mutation of a particular nature has occurred.

input file name: myFile.txt
output file: Data.txt

You should round percentages to the nearest integer. You can use the Math.round method to do so, but you will have to cast the result to an int, as in:
int percent = (int) Math.round(percentage);
The output for this program will generate an output file. You do so by constructing an object of type PrintStream and writing to it in the same way you write to System.out (with print and println statements).

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 6 images

Blurred answer
Knowledge Booster
Array
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education