473,325 Members | 2,608 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,325 software developers and data experts.

Help

2
Write a program that reads information about youth soccer teams from a file, calculates the average score for
each team and prints the averages in a neatly formatted table along with the team name.
Please follow the specifications for assignment 3 as described below otherwise points will be taken off.
Input from a file
Please create an input file named input.txt using a text editor like notepad or the Visual C++ editor and put the following
data into it:
If you use Notepad do not add .txt to your file name or you could end up with a file named input.txt.txt. Notepad will add
the .txt. Or to preserve the entire file name you enter surround the file name with quotes: “input.txt”
Bugs 4 2 1 0 -1
Sharks 2 2 -1
Stallions 3 1 5 -1
Wildcats -1
Hawks 1 1 2 1 1 -1
Constants
Above main define two int constants named WIDTH1 and WIDTH2. You will use WIDTH1 to define the fieldwidth for
printing the name of the team using setw. You will use WIDTH2 to define the fieldwidth for printing the average score
of the team using setw. You can initialize WIDTH1 and WIDTH2 to values that you think are appropriate for lining up
the data per the requirements for the output section below.
String type
For this assignment use the string type. To use the string type use #include <string>
To declare a variable of string type simply say:
string name;
To assign values to a string type simply use the '=' sign:
name = “Fred”;
To print the contents of a string variable to the screen just use cout:
cout << name;
3 Functions - For help with functions see Lecture5.pdf and for help with working with files see fileIO.pdf on the class
web site.
1. Write a void function named PrintPurpose that has no parameters that will print the purpose of the program to
the screen. The first sentence at the top of this page states the purpose of the program.
2. Write a void function named PrintChar that has 2 parameters in the following order: a char passed by value that
stores the character to print and an int passed by value that stores the number of times to print the character.
This function should use a for loop to print to the screen the character passed in the number of times passed in,
all on one line. Only one character should be printed each time through the loop. For example if a '-' and 5 are
passed in then 5 dashes would be printed:
-----
If a '*' and 8 are passed in then 8 '*' would be printed:
********
3. In the main function you should declare any variables you need. You will need a string variable to read the team
name into and an int variable to read the scores into as well as other variables. Please declare all variables at the
top of main, only one variable to a line and comment each variable declaration. Also use meaningful variable
names.
Open the input file and check for successful opening. You should call function 1 to print the purpose of the
program.
Print the report title. Under the report title print print a series of dashes by calling the PrintChar function.
In main you should read in the data from the file using a while loop that will terminate when the input stream
goes into a fail state. The loop should be able read any amount of data from the file and should terminate when
there is no more data or there is a read of invalid data. See fileIO.cpp on the class web site for an example.
Within the while loop you should also have another while loop which will be a sentinel controlled while loop
that will keep going until -1 is read from the file. This is the same type of loop you used for program 2.
Before the outer while loop do a priming read of the first soccer team name. Before the inner while loop do a
priming read of the first score for the team whose name you just read.
The inner loop reads all the scores for a team and subtotals the scores and keeps track of how many scores were
read.
At the bottom of the inner while loop do the next read.
At the bottom of the outer while loop calculate the average for the scores just read. Print each team's name along
with that team's average score in a nicely formatted table per the example in the output section below.
Check for divide by 0. If 0 scores were read then print the team name and print 0 for that team's average.
At the bottom of the outer loop keep track of which team has the highest average score. You need to remember
the highest average score as well as the name of the team with the highest score. The algorithm for remembering
the highest score is as follows: Initialize a variable that stores the highest average score to -1. If the current
average score is higher than the previous highest average score then set the highest average score to the current
average score and the variable that stores the name of the team with the highest average score to the current
team.
At the bottom of the outer loop do the read of the next team name.
After you exit the loops print another dashed line by calling the PrintChar function. Then print a blank line and
print the team name and average score for the team with the highest average per example in the output section
below.
Please note what work is to be done in main and what work the functions 1 and 2 are supposed to do.
Please put the function prototypes above main and the function definitions (function implementation) below main.
Note: Please put a comment block before each function in the format described at the end of the Coding Conventions
Handout posted on my web site under documents. Also comment each function parameter per the coding conventions. If
you do not follow the coding conventions, points will be taken off.
Per the coding conventions for this class (Coding Conventions are posted on class web site) every function should have a
comment just before the function header to explain what the function does and what the return value is.
Each parameter should be on a separate line with comments.
Below find an example of commenting a function. Notice that the return value of a void function is NA since a void
function does not return a value.
//************************************************** **********
// CalcPay()- computes wages from the employee’s pay rate
// and the hours worked, taking overtime into account
// Returns: NA
//************************************************** ***********
void CalcPay (float payRate , //each employee's rate of pay
float hours , //total hours each employee worked
float& wages ) //total wages
{
//function code
}
For a value returning function describe what the function returns:
//************************************************** **********
// Cube()- computes the cube of a number
// Returns: The cube of the number
//************************************************** ***********
int Cube(int num) //number to cube
{
//function code
}
Output for program 3 is to the screen
Output is to the screen and should be formatted to look like the sample run below.
Avg Soccer Scores
-----------------
Bugs..........1.8
Sharks........2.0
Stallions.....3.0
Wildcats......0.0
Hawks.........1.2
-----------------
Highest Average Score
Stallions 3.0
Use the following method to get the output to look like the above.
Use a combination of the left and right manipulators along with setw to print the name of the team and the average score
for the team. For the fieldwidth for setw define constants, WIDTH1 and WIDTH2 above main.
To print the dashes call the PrintChar function. For the number of dashes use the total of WIDTH1 and WIDTH2.
Use setprecision to print out the average score to 1 decimal place.
Use setfill to so that '.' will be printed for the fill character for setw instead of space.
Feb 18 '07 #1
1 5959
DeMan
1,806 1GB
What is the nature of the problem? Where atre you struggling? I don't think you'll have someone write you the entire code here, I suggest you think about where and how you're struggling and try to ask a question specifically related to that. (Why is the CalcPay and cube methods included in the middle of a question about Soccer??)
Feb 18 '07 #2

Sign in to post your reply or Sign up for a free account.

Similar topics

21
by: Dave | last post by:
After following Microsofts admonition to reformat my system before doing a final compilation of my app I got many warnings/errors upon compiling an rtf file created in word. I used the Help...
9
by: Tom | last post by:
A question for gui application programmers. . . I 've got some GUI programs, written in Python/wxPython, and I've got a help button and a help menu item. Also, I've got a compiled file made with...
6
by: wukexin | last post by:
Help me, good men. I find mang books that introduce bit "mang header files",they talk too bit,in fact it is my too fool, I don't learn it, I have do a test program, but I have no correct doing...
3
by: Colin J. Williams | last post by:
Python advertises some basic service: C:\Python24>python Python 2.4.1 (#65, Mar 30 2005, 09:13:57) on win32 Type "help", "copyright", "credits" or "license" for more information. >>> With...
7
by: Corepaul | last post by:
Missing Help Files When I enter "recordset" as the keyword and search the Visual Basic Help index, I get many topics of interest in the resulting list. But there isn't any information available...
5
by: Steve | last post by:
I have written a help file (chm) for a DLL and referenced it using Help.ShowHelp My expectation is that a developer using my DLL would be able to access this help file during his development time...
8
by: Mark | last post by:
I have loaded Visual Studio .net on my home computer and my laptop, but my home computer has an abbreviated help screen not 2% of the help on my laptop. All the settings look the same on both...
10
by: JonathanOrlev | last post by:
Hello everybody, I wrote this comment in another message of mine, but decided to post it again as a standalone message. I think that Microsoft's Office 2003 help system is horrible, probably...
1
by: trunxnirvana007 | last post by:
'UPGRADE_WARNING: Array has a new behavior. Click for more: 'ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?keyword="9B7D5ADD-D8FE-4819-A36C-6DEDAF088CC7"' 'UPGRADE_WARNING: Couldn't resolve...
0
by: hitencontractor | last post by:
I am working on .NET Version 2003 making an SDI application that calls MS Excel 2003. I added a menu item called "MyApp Help" in the end of the menu bar to show Help-> About. The application...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.