indy

My research has generated interest from a funding agency, but I need to verify a few things with my data.

I'm generating numbers which measure the amount of DNA strands in a typical rabbit's foot - I'm trying to determine if a rabbit's foot really IS lucky. I presently have files containing millions of pieces of data. Each data point is stored in a file as a 32 bit integer.

To complete my research. We (you!) need to:- Find how many data points there are, the range and the average.
- Find the primality of each number and the percentage of the total that are prime & store each prime in an array for further processing.
- Find how many primes are palindromic.
- Sort the prime array, small to large.
- (Someday) Report the longest sequence of uninterrupted primes.

I'm not overly concerned with efficiency at this point - I just need those numbers. But we may need to do other investigations later, so write the code so that it can be modified easily.

We only have a C++ compiler and it's located on the computer called cisprod.clarion.edu. You can telnet to that computer and logon with your Clarion username and password. You can download puTTy and Visual C++ for free.

I have files of various sizes, but ultimately, please work with the last in the list, "biggest.txt". The files can be viewed on the web at http://jupiter.clarion.edu/~wyatt/!Data/. 1. smallest.txt - 20 numbers - all prime - first 20 primes 2. smaller.txt - 80 numbers - first 40 prime followed by first 40 non-prime 3. small.txt - 1,000 numbers random 4. big.txt - 10,000 numbers random 5. bigger.txt - 100,000 numbers random 6. biggest.txt - 1,000,000 numbers random **USE THIS SET for FINAL #s I have the smaller files there in case you need smaller data sets for testing. When your program opens the file, you will access the file as such: ifstream fin; fin.open("/export/home/wyatt/public_html/\!Data/biggest.txt"); Remember to read an integer, num, from the file stream you called "fin" above: See error-proof code to read an int value in C++

Please write the code as follows: 1. Document what and why - other grad students will pick up your work after you move on. Name variables and functions well. Include a brief algorithm as appropriate (example: how does your code determine primality?). 2. Create a function to accomplish each task. Pass parameters as needed. Having a function that can test primality of a number could be useful in the future.

Goals: Learn enough C++ and Unix to function in a lab. Program Structure, Variables, Arithmetic & Logical & Relational Operators, Loops, Branching, Functions, Files, Arrays.

Some helpful links: c++ help cplusplus reference unix reference Prime number lists Big Primes - Lists