• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 801
  • Last Modified:

Arrays and void statements

O.k. heres the problem; we are doing arrays and strings. I have to write a program that outputs the following:
Class Average
Names of all the students whose test scores are below the class average
Highest Test score and the names of all the students having the highest score
The maximum number of students is 50.

Heres what the output should look like:

 Processing Data
Class size: 16
Highest score: 95
Students whose score is highest in the class: Duffy    Pluto    Balto   Minne
Class Average: 78.06
Students whose score is less than class average:
                             Johnson  Your score is below class average.
                          Robinson    Your score is below class average.
                           Ashtony    Your score is below class average.
                            Mickey      Your score is below class average.
                            Billy          Your score is below class average.
                            Danny       Your score is below class average.
                            Doc           Your score is below class average.
                           Duckey       Your score is below class average.
                            Anddy       Your score is below class average.


The input file looks like this:
Johnson 76
Miller 90
Duffy 95
Robinson 45
Ashtony 63
Goofy 89
Pluto 95
Mickey 72
Billy 76
Danny 56
Balto 95
Roony 87
Doc 67
Minne 95
Duckey 72
Anddy 76

   

Heres my program so far:

#include <iostream>
#include <fstream>

using namespace std;

void initialize(
void score(
void list(
void student(
void below(

int main()
{
    ifstream inData;
    ofstream outData;
   
    int lineCount;
    char ch;
   
    cout<<"Processing Data"<<endl;
   
    inData.open("C:\\Documents and Settings\\Owner\\My Documents\\Carrie\\carries2\\CSC160\\ch9_ex8data");
    if(!inData)
    {
               cout<<"Cannot open the input file."<<endl;
               return 1;
               }
    outData.open("C:\\Documents and Settings\\Owner\\My Documents\\Carrie\\carries2\\CSC160\\prog.out");    
      initialize (classSize);
      cout<<"Class size:"<<classSize<<endl;
      score(highest);
      cout<<"Highest Score:"<<highest<<endl;
      list(highSt);
      cout<<"Students whose score is the highest in the class:"<<highSt<<endl;
     
     
      student(average);
      cout<<"Class Average:"<<average<<endl;
      below(scores);
      cout<<"Students whose score is less than class average:"<<scores<<endl;
     
       inData.close()
       outData.close()
           
   
        system ("pause");
}  
void initialize(
void score(
void list(
void student(
void below(



Help! How do I finish this?
0
ccmeschke
Asked:
ccmeschke
  • 3
  • 2
  • 2
  • +1
1 Solution
 
evilrixSenior Software Engineer (Avast)Commented:
>> Help! How do I finish this?
Bit of an ambiguous question :)

I presume this is homework of some kind? If so, you'll need to try your best and ask a specific Q when you get stuck.
0
 
ccmeschkeAuthor Commented:
What I meant was, how do I get started in the void parameters? I think I have the arrays down, but I'm not sure how to do the void parameters. Any examples would be helpful.
0
 
peprCommented:
Firstly, do the dummy implementations, just to make your compiler happy. Then implement the bodies of your functions one by one.

Apparently, this is only a skeleton -- no data processed. Probably your initialize() should fill some data structures and the other function should process the read data. For doing that, you should decide and implement the data structures. Then you will know what interface (arguments) the "void initialize(" should get.

The first occurence of "void initialize(" is the beginning of the future prototype of the function (i.e. declaration of the function (no body). The second occurence of the same should repeat the above prototype plus it must implement the functionality (i.e. you have to write the body of the function). You should pass references to the input stream and also reference or pointer to the data structure to be filled from the input stream. The size is not enough and possibly also not correct. But it may be acceptable limit given in the homework assignment.

Then implement the rest of functions.
0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
Infinity08Commented:
>> I think I have the arrays down

You're not using any arrays ...


>> , but I'm not sure how to do the void parameters. Any examples would be helpful.

What do you mean by "void parameters" ??
0
 
peprCommented:
Infinity08: I remember days when I was teaching young artists. The subject was related to vector drawing programs (CorelDraw). I had to answer the questions like "How do I move that arrow?" "You have to move your mouse and it will move accordingly." One of them shouted "It does not work in my case!" while moving the mouse about 30 cm above the table.

The moral of the story is: Yes, we programmers are deformed by our job wher "file" means "the stored stream of bytes". The "void parameters" may mean "left out parameters".
0
 
evilrixSenior Software Engineer (Avast)Commented:
Deep :)
0
 
evilrixSenior Software Engineer (Avast)Commented:
BTW: I don't consider myself a programmer, I too am an artist: C++ is my canvas and the compiler my brush (or something like that) :-D
0
 
ccmeschkeAuthor Commented:
thank you that was very helpful. I started the parameters and ended up with a few errors because I forgot the references, but after reading your comments, I put them in. I think it's just about perfect, so thank you for your comments.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 3
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now