CS 1400 Fundamentals of Programming

Programming Project 10: A Better Bowling Team Scores Program

Objective:

At the completion of this project, you will have created an application that

Project:

bowling

 

your friends loved the previous program that you wrote to keep track of their bowling scores, but they would like you to make a few additions. In particular, they would like the program to display the list of bowling scores, printed from highest to lowest. Each person's name should be displayed next to their score. This new improved program should work as follows:

Programming Considerations

As in the previous project, all of the business logic for your bowling team should be encapsulated into a class of your own design.

Your program should work for any number of players on a team, up to 10.

You may choose to do this assignment as a Console program or as a GUI program. The class that you design for your bowling team should work the same in either style of program. If you choose to create a GUI program, you will need to display your output in a multi-line format. I chose to use a TextBox with its MultiLine Property set to true. If you do this, you will have to build the Text for the TextBox using code like this:

string outputLine = "";
outputLine += first line of data + Environment.NewLine;
outputLine += second line of data + Environment.NewLine;
etc.
theTextBox.Text = outputline;

Format and document your code in accordance with the course style guidelines.  Include a file prologue identifying you as the author.  Submit your project using the instructions outlined in the Course Syllabus, Programming Projects section.

File(s) to Submit:

Place your complete project folder into a zip file and name the zip file
proj_10_your-initials_V1.0.zip. For example, I would name my file proj_10_RKD_V1.0.zip. Submit this assignment as Project #10 on Canvas.

Grading Criteria

Description Points possible Your points

Project meets the following guidelines:
o Source code files contain a declaration that you did not copy any code
o Project has been submitted to Canvas
o Code meets style guidelines
o Code is properly documented

5  

Program reads in a name and bowling score on one line. The Split method is used to split this line up. The scores are stored in an array of integers. The name is displayed in an array of strings. Input continues until an empty line is entered. The program only needs to handle up to ten names and scores.

5 

The program displays the names and scores, sorted from highest to lowest, as shown in the sample output. A perfect score is marked with an asterisk. The program displays the average score.

5  

All of the business logic for the Bowling Team is encapsulated into a separate BowlingTeam class. There is a clear separation of GUI and business logic.

5  

Early Bonus (+3 pts) or late penalty (-20% per day)

  

Total

20  

Sample Output:

Problem 8 output

You can get a console executable that runs correctly here!

You can get a gui executable that runs correctly here!