Write a program that reads a list of enrollments from a file and prints a class roster for the teacher. Make the class roster line up as neatly as you can and still fit on the screen. You can choose the actual values to use for your data. Make sure to do enough sets of data to well test your program! (Empty data set, normal data set, data with large values, data with short values, etc.) Also, your program can't know ahead of time how many people are enrolled in the class... Don't forget to read the file's name from the user and protect your program against any errors that may occur during the opening of the file. Try to use functions to break up the program into more manageable pieces.
Topical Information
Use C++. This lab should provide you with practice in file handling, stream formatting, and some string manipulation. Classes might come in handy, too.
Program Information
Write a program that reads a list of enrollments from a file and prints a class roster for the teacher. Make the class roster line up as neatly as you can and still fit on the screen.
You can choose the actual values to use for your data. Make sure to do enough sets of data to well test your program! (Empty data set, normal data set, data with large values, data with short values, etc.)
Also, your program can't know ahead of time how many people are enrolled in the class...
Don't forget to read the file's name from the user and protect your program against any errors that may occur during the opening of the file.
Try to use functions to break up the program into more manageable pieces.
As an example, you might have the data file contain:
# name
# student number
# address1
# address2
# phone number
# major
Jason James
100400299
400 Maple Dr
Westfalia, HI 66554
555/555-1122
Computer Science
Faruk Ahmed
111222333
1200 West Jones Ave
Slimsville, PQ 22221
332-4546
Medeaval French Poetry
Sean Ramirez
200020020
10000 Snapple Lane
Fritter, HO 44331
1-444/411-4414
Underwater Basket Weaving
Happy Gilmore
313141455
Simonton, SZ 11246
Yellow Tail Migratory Patterns
(Note how Happy doesn't give out his address or phone number.)
And the program interaction might look something like (the parts underlined are typed by the user):
$ ./enroll.out
Welcome to the Roster Generator Program!!!
Please enter the name of your names file: bob.dat
I'm sorry, I could not open 'bob.dat'. Please enter another name: csc442
File 'csc442' opened successfully!
Name | Major | Phone # | Town
----------------+--------------------+---------------+-------------------
Jason James | Computer Science | 555/555-1122 | Westfalia, HI 665
Faruk Ahmed | Medeaval French Po| 332-4546 | Slimsville, PQ 22
Sean Ramirez | Underwater Basket | 1-444/411-441 | Fritter, HO 44331
Happy Gilmore| Yellow Tail Migrat | | Simonton, SZ 1124
Total Enrollment: 4
Thank you for using the RGP!!
Endeavor to have a gyroscopic day!
$
(Note that we don't use all of the available data in our table -- on purpose!)
Don't forget about the occasion when there are no enrolled students in the file at all!
Trending now
This is a popular solution!
Step by step
Solved in 2 steps