Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

C++ Homework Question Assignment Specifications The New York Times newspaper has published best seller lists since 1942. Book sales are tracked nationwide, leading to a

C++ Homework Question

image text in transcribed

image text in transcribedimage text in transcribed

Assignment Specifications The New York Times newspaper has published "best seller" lists since 1942. Book sales are tracked nationwide, leading to a list of those books which have recently sold the most copies. You will design, implement and test a program which allows the user to search a subset of the books which have appeared in the New York Times best seller lists. For simplicity, the data set will only contain those books which have reached #1 on either of two lists (fiction and nonfiction) since 1942. The file named bestsellers.txt contains the data set. Each line of the file contains the information for a separate book, which includes: title, author, publisher, date it first reached #1 on one of the best seller lists, and category (fiction or nonfiction). There is a tab character between fields. The program will input the data set and construct a list of books. If the list of books cannot be constructed, the program will display an appropriate error message and halt After constructing the list of books, the program will display a menu of options and allow the user to search for books which meet certain criteria. The menu options are: 1. Prompt the user for two years (a starting year and an ending Display all books in a year range: year), then display all books which reached the #1 spot between those two years (inclusive). For example, if the user entered" 1970, and" 1973", display all books which reached #1 m 1970. 1971, 1972 or 1973 2. Search for an author: Prompt the user for a string, then display all books whose author's name contains that string (regardless of case). For example, if the user enters "ST",display all books whose author's name contains (or matches) the string "ST", "St", "sT" or "st" 3. Search for a title: Prompt the user for a string, then display all books whose title contains that string (regardless of cas For example, if the user enters "secret", three books are found: The Secret of Santa Vittoria" by Robert Crichton, The Secret Pilgrim" by John le Carr, and "Harry Potter and the Chamber of Secrets". Assignment Notes 1. Your program will consist of at least 3 functions: a separate function to process each of the 3 menu options listed above. 2. You may use arrays or vectors to store the data. 3. Be sure to display the books in a reasonable and readable manner. 4. If no books are found for a particular search, your program will display an appropriate message (rather than simply displaying nothing) 5. Your program will continue to execute until the user selects "Q" (or"q") as the menu option. 6. Be sure to prompt the user for the inputs in the specified order. Also, your program cannot prompt the user for any other inputs. 7. Your program will handle erroneous user inputs. If there are any problems with a particular user input, your program will display the menu and allow the user to select another option. Sample Output: What would you like to do? 1: Look up year range 2: Look up month/year 3: Search for author 4: Search for title Q: Quit Enter beginning year: 1960 Enter ending year: 1962 All Titles between 1960 and 1962: A Shade of Difference, by Allen Drury (10/28/1962) Franny and Zooey, by J D. Sallinger (10/29/1961) Hawaii, by James Michener 1/17/1960) Seven Daya in May, by Fletcher Knebel (11/18/1962) Ship of Fools, by Katherine Anne Porter (4/29/1962) The Agony and the Ecataay, by Irving Stone (4/23/1961) The Last of the Just, by Andr Schwarz-Bart (3/26/1961) Born Free, by Joy Adamson (8/7/1960) Calories Don't Count, by Berman Taller (3/25/1962) May This House Be Safe from Tigera, by Alexander King (3/13/1960) Silent Spring, by Rachel Caraon (10/28/1962) The Making of the Preaident 1960, by Theodore B. White (9/10/1961) The New Engliah Bible, by Oxford Univeraity Preas (Editor) (5/28/1961) The Rise and Fall of the Third Reich, by Willian Shirer (12/4/1960) The Rothchilds, by Frederic Morton (6/24/1962) The Waste Maker, by Vance Packard (11/6/1960) Travels with Charley, by John Steinbeck (10/21/1962) What would you like to do? 1: Look up year range 2: Look up month/year 3: Search for author 4: Search for title O: Quit 3 Enter an author's name (or part of a nane)tolein Silmarillion, by J. R. R. Tolkein (10/2/1977) The Children of the Hrin, by J.R.R. Tolkein (5/6/2007) What would you like to do? 1: Loo up year range 2: Look up month/year 3: Search for author 4: Search for title Enter a title (or part of a title): secret Harry Potter and the Chamber of Secrets, by J. K. Rowling (6/20/1999) The Secret of Santa Vittoria, by Robert Crichton (11/20/1966) The Secret Pilgrin, by John le Carr (1/20/1991) Assignment Specifications The New York Times newspaper has published "best seller" lists since 1942. Book sales are tracked nationwide, leading to a list of those books which have recently sold the most copies. You will design, implement and test a program which allows the user to search a subset of the books which have appeared in the New York Times best seller lists. For simplicity, the data set will only contain those books which have reached #1 on either of two lists (fiction and nonfiction) since 1942. The file named bestsellers.txt contains the data set. Each line of the file contains the information for a separate book, which includes: title, author, publisher, date it first reached #1 on one of the best seller lists, and category (fiction or nonfiction). There is a tab character between fields. The program will input the data set and construct a list of books. If the list of books cannot be constructed, the program will display an appropriate error message and halt After constructing the list of books, the program will display a menu of options and allow the user to search for books which meet certain criteria. The menu options are: 1. Prompt the user for two years (a starting year and an ending Display all books in a year range: year), then display all books which reached the #1 spot between those two years (inclusive). For example, if the user entered" 1970, and" 1973", display all books which reached #1 m 1970. 1971, 1972 or 1973 2. Search for an author: Prompt the user for a string, then display all books whose author's name contains that string (regardless of case). For example, if the user enters "ST",display all books whose author's name contains (or matches) the string "ST", "St", "sT" or "st" 3. Search for a title: Prompt the user for a string, then display all books whose title contains that string (regardless of cas For example, if the user enters "secret", three books are found: The Secret of Santa Vittoria" by Robert Crichton, The Secret Pilgrim" by John le Carr, and "Harry Potter and the Chamber of Secrets". Assignment Notes 1. Your program will consist of at least 3 functions: a separate function to process each of the 3 menu options listed above. 2. You may use arrays or vectors to store the data. 3. Be sure to display the books in a reasonable and readable manner. 4. If no books are found for a particular search, your program will display an appropriate message (rather than simply displaying nothing) 5. Your program will continue to execute until the user selects "Q" (or"q") as the menu option. 6. Be sure to prompt the user for the inputs in the specified order. Also, your program cannot prompt the user for any other inputs. 7. Your program will handle erroneous user inputs. If there are any problems with a particular user input, your program will display the menu and allow the user to select another option. Sample Output: What would you like to do? 1: Look up year range 2: Look up month/year 3: Search for author 4: Search for title Q: Quit Enter beginning year: 1960 Enter ending year: 1962 All Titles between 1960 and 1962: A Shade of Difference, by Allen Drury (10/28/1962) Franny and Zooey, by J D. Sallinger (10/29/1961) Hawaii, by James Michener 1/17/1960) Seven Daya in May, by Fletcher Knebel (11/18/1962) Ship of Fools, by Katherine Anne Porter (4/29/1962) The Agony and the Ecataay, by Irving Stone (4/23/1961) The Last of the Just, by Andr Schwarz-Bart (3/26/1961) Born Free, by Joy Adamson (8/7/1960) Calories Don't Count, by Berman Taller (3/25/1962) May This House Be Safe from Tigera, by Alexander King (3/13/1960) Silent Spring, by Rachel Caraon (10/28/1962) The Making of the Preaident 1960, by Theodore B. White (9/10/1961) The New Engliah Bible, by Oxford Univeraity Preas (Editor) (5/28/1961) The Rise and Fall of the Third Reich, by Willian Shirer (12/4/1960) The Rothchilds, by Frederic Morton (6/24/1962) The Waste Maker, by Vance Packard (11/6/1960) Travels with Charley, by John Steinbeck (10/21/1962) What would you like to do? 1: Look up year range 2: Look up month/year 3: Search for author 4: Search for title O: Quit 3 Enter an author's name (or part of a nane)tolein Silmarillion, by J. R. R. Tolkein (10/2/1977) The Children of the Hrin, by J.R.R. Tolkein (5/6/2007) What would you like to do? 1: Loo up year range 2: Look up month/year 3: Search for author 4: Search for title Enter a title (or part of a title): secret Harry Potter and the Chamber of Secrets, by J. K. Rowling (6/20/1999) The Secret of Santa Vittoria, by Robert Crichton (11/20/1966) The Secret Pilgrin, by John le Carr (1/20/1991)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions