I am having issues with this program. I am confused on how and what functions to use, how to get my program to get the information from a file, and I am extremely confused on arrays. I've been reading this chapter relevant to the problem through and through and I am stilling coming up with nothing.
Here is my problem: Write a program that reads a file consisting of students test scores in the range 0-200, it should then determine the number of students having scores in each of the following ranges: 0-24, 25-49, 50-74, 75-99, 100-124, 125-149, 150-174, 175-200. Output the score ranges and the number of students. (Run your program with the following input data : 76, 89, 150, 135, 200, 76, 12, 100, 150, 28, 178, 189, 167, 200, 175, 150, 87, 99, 129, 149, 176, 200, 87, 35, 157, 189.
Here what I have so far.. it's not much, and it doesn't even work anyway. Can anyone help me on what to add to make this work correctly? and explain what does what? I have restarted this program a handful of times and each time I hit a brick wall and don't know what to do. I am also getting blasted with error messages such as:
invalid types `int[int]' for array subscript
initializing argument 1 of `int getStuff(int)'
`int getStuff(int)':
invalid conversion from `int*' to `int'
I've sat here for hours upon hours trying to make sense of this, but I cannot do it, I can't even begin to comprehend where to start, and with what to start with.
Please someone help!
#include <iostream>
#include <fstream>
using namespace std;
int getStuff(int score);
int main()
{
int score[7];
ifstream inFile;
inFile.open("scores.txt");
if (!inFile)
{
cout << "Can't open input file " << endl;
return 1;
}
getStuff(score);
inFile.close();
cin.get();
return 0;
}
int getStuff (int score)
{
int rangescore;
if (score >= 0 && score <= 24)
rangescore[0]++;
else if (score >= 25 && score <= 49)
rangescore[1]++;
else if (score >= 50 && score <= 74)
rangescore[2]++;
else if (score >= 75 && score <= 99)
rangescore[3]++;
else if (score >= 100 && score <= 124)
rangescore[4]++;
else if (score >= 125 && score <= 149)
rangescore[5]++;
else if (score >= 150 && score <= 174)
rangescore[6]++;
else if (score >= 175 && score <= 200)
rangescore[7]++;
else
cout << "That was an invalid entry." << endl;
return rangescore;
}