![]() |
| | #1 |
| Registered User Join Date: Jun 2005
Posts: 8
| [question]Analyzing data in a two-dimensional array[with code] Acknowledgement This part of the lab is based on Question 50 in Chapter 5 of Etter's "Engineering Problem Solving with C" Problem You are to write a program in C that: reads data from a file into a one-dimensional array writes the corresponding normalized data to another file One common normalization technique for a data set is to scale the data in such a way that the minimum value becomes 0.0 and the maximum value becomes 1.0. To achieve this scaling each data point xi is normalized using the formula: Normalized xi = ( xi - min ) / ( max - min ) where min and max are the minimum and maximum data points in the data set. Note that when you set xi to min in this formula, the result is 0. Further, when you set xi to max, the result is 1. You should assume that the file contains only the data to be normalized. There is no sentinel value at the end of the file and there is no integer at the beginning of the file to indicate the number of data elements. You should assume that each data element is separated by whitespace (either a space, tab or new line character or a combination of these). Developing a test suite Before you write your program, develop a test suite that can be used to test your program once it is written. To do this, you will need to create your own data files input0.txt, input1.txt, ... Having chosen your test input files, compute by hand the expected output files. After you have written your program, you can then test your program with each of your test files and check that your program produces the expected value. If it doesn't, you probably have one or more logic errors in your code. Algorithm development Sketch out, in point form, an algorithm for solving the problem. Draw a module chart (as described in Section 1 of Chapter 4) that includes the following functions: getMinVal: a function that takes a one-dimensional array of integers and the number of values in the array as its only parameters and returns the minimum value in the array getMaxVal: a function that takes a one-dimensional array of integers and the number of values in the array as its only parameters and returns the maximum value in the array normalize: a function that takes two arrays and the number of values in the arrays (assume they are the same size) as its only parameters. The first array is a one-dimensional array of integers that contains the original data to be normalized according to the technique described above. The second array is a one-dimensional array of doubles that will contain the normalized data. You will use these functions in your program to carry out the specified task. Coding Create a new project in Dev-C++ and implement your algorithm in C. Be sure to include the three functions described in the previous section. Remember to first implement your functions as stubs and to compile your code before attempting to implement any of the functions. Remove any syntax errors before proceeding further. Implement your functions one at a time. Compile your code after implementing each function and remove any syntax errors as you go. Read the Guide to Dev-C++ for instructions on how to create a new project, edit your source code, and compile and run your program. Testing Once your code has successfully compiled, verify that it produces correct results using the test suite that you developed earlier. If any of your tests fails, you must look for logic errors in your algorithm (which will, of course, have resulted in logic errors in your code!) Debugging Now that the programs that you are writing are becoming a little more complex, you might find it useful to use the debugger that is integrated into the Dev-C++ environment. Read the Guide to debugging with Dev-C++ for instructions on how to use the debugger. Code: #include <stdio.h>
#include <stdlib.h>
FILE* inputFile;
FILE* outputFile;
inputFile = fopen( "myInputFile.txt" , "r" );
outputFile = fopen( "myOutputFile.txt" , "w" );
int main (void){
system ("PAUSE");
return 0;
}
/*
read data from a file and write data to a file
but i dont know how to read a file data to a array.
what is corresponding normalized data?
*/
|
| burbose is offline |
| | #2 | ||
| Anti-Poster Join Date: Feb 2002
Posts: 1,212
| First, you'll need some input files (you'd know this if you read the directions). Quote:
Further, the instructions explain what normalized data is. Quote:
__________________ Rule #1: Every rule has exceptions Traveller's Dilemma Contest Site - Results posted! | ||
| pianorain is offline |
| | #3 |
| Software Developer Join Date: Feb 2003 Location: University of Waterloo
Posts: 1,916
| These sound like end of year projects....how is it that you don't know how to read a file of all things? Astonishing.... |
| jverkoey is offline |
| | #4 | |
| Anti-Poster Join Date: Feb 2002
Posts: 1,212
| Quote:
*Use of the singular masculine pronoun is not meant as gender-bias. It's just simpler to write "he" than it is to write "he/she" every time.
__________________ Rule #1: Every rule has exceptions Traveller's Dilemma Contest Site - Results posted! | |
| pianorain is offline |
| | #5 |
| It's full of stars Join Date: Aug 2001
Posts: 4,833
| You will not get this done for you here. I linked the board policy on homework to the last 2 threads of yours I had to close. If I have to close another one, it will be your last.
__________________ Wave upon wave of demented avengers march cheerfully out of obscurity unto the dream. |
| adrianxw is offline |
![]() |
| Thread Tools | |
| Display Modes | |
|
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Bitmasking Problem | mike_g | C++ Programming | 13 | 11-08-2007 12:24 AM |
| brace-enclosed error | jdc18 | C++ Programming | 53 | 05-03-2007 05:49 PM |
| Two Dimensional Array Input from Formatted Data | teedoff087 | C Programming | 14 | 04-29-2007 01:46 AM |
| Program Crashing | Pressure | C Programming | 3 | 04-18-2005 10:28 PM |
| How do I base size of arrays on annother number? | Dual-Catfish | C++ Programming | 15 | 09-25-2001 01:31 PM |