×
Samples Blogs Make Payment About Us Reviews 4.9/5 Order Now

Create a Program to Implement Menu Driven Program in C++ Assignment Solution

July 01, 2024
Dr. Olivia Bennett
Dr. Olivia
🇦🇺 Australia
C++
Dr. Olivia Bennett holds a PhD in Computer Science from a prestigious university in the UK. With over 800 completed orders, she specializes in GUI development and database integration in Qt programming. Her expertise lies in crafting intuitive user interfaces and seamlessly integrating database functionalities into Qt applications.
Key Topics
  • Instructions
    • Objective
  • Requirements and Specifications
Tip of the day
Use modular coding in Verilog assignments by breaking the design into smaller modules. This improves readability, simplifies debugging, and allows for easier testing and reuse of code components in larger designs.
News
In 2024, Visual Studio Code now offers enhanced GitHub Copilot integration for faster, while PyCharm has improved debugging and testing tools, making it ideal for Python students​

Instructions

Objective

Write a c++ assignment program to implement menu driven program.

Requirements and Specifications

program-to-implement-menu-driven-program-in-c

Source Code

//============================================================================ // Name : Lab2-2.cpp // Author : Your Name // Version : 1.0 // Copyright : Copyright © 2017 SNHU COCE // Description : Lab 2-2 Up to Speed in C++, Part 2 //============================================================================ #include #include #include // FIXME (1): Reference the CSVParser library using namespace std; //============================================================================ // Global definitions visible to all methods and classes //============================================================================ // forward declarations double strToDouble(string str, char ch); struct Bid { string title; string fund; double amount; Bid() { amount = 0.0; } }; //============================================================================ // Static methods used for testing //============================================================================ /** * Display the bid information * * @param bid struct containing the bid info */ void displayBid(Bid bid) { cout << bid.title << " | " << bid.amount << " | " << bid.fund << endl; return; } /** * Prompt user for bid information * * @return Bid struct containing the bid info */ Bid getBid() { Bid bid; cout << "Enter title: "; cin.ignore(); getline(cin, bid.title); cout << "Enter fund: "; cin >> bid.fund; cout << "Enter amount: "; cin.ignore(); string strAmount; getline(cin, strAmount); bid.amount = strToDouble(strAmount, '$'); return bid; } /** * Load a CSV file containing bids into a container * * @param csvPath the path to the CSV file to load * @return a container holding all the bids read */ vector loadBids(string csvPath) { // Define a vector data structure to hold a collection of bids. vector bids; // initialize the CSV Parser using the given path csv::Parser file = csv::Parser(csvPath); // loop to read rows of a CSV file for (unsigned int i = 0; i < file.rowCount(); i++) { // data structure to hold data from each row and add to vector Bid bid; bid.title = file[i][0]; bid.fund = file [i][8]; bid.amount = strToDouble(file[i][4], '$'); bids.push_back(bid); } return bids; } /** * Simple C function to convert a string to a double * after stripping out unwanted char * * credit: http://stackoverflow.com/a/24875936 * * @param ch The character to strip out */ double strToDouble(string str, char ch) { str.erase(remove(str.begin(), str.end(), ch), str.end()); return atof(str.c_str()); } /** * The one and only main() method */ int main(int argc, char* argv[]) { // process command line arguments string csvPath; switch (argc) { case 2: csvPath = argv[1]; break; default: csvPath = "eBid_Monthly_Sales_Dec_2016.csv"; } // Define a vector to hold all the bids vector allBids; // Define a timer variable clock_t start; clock_t end; int choice = 0; while (choice != 9) { cout << "Menu:" << endl; cout << " 1. Enter a Bid" << endl; cout << " 2. Load Bids" << endl; cout << " 3. Display All Bids" << endl; cout << " 9. Exit" << endl; cout << "Enter choice: "; cin >> choice; switch (choice) { case 1: cout << "Not currently implemented." << endl; break; case 2: // Initialize a timer variable before loading bids start = clock(); // Complete the method call to load the bids loadBids("eBid_Monthly_Sales_Dec_2016.csv"); // Calculate elapsed time and display result end = clock(); cout << "time: " << end - start << " milliseconds" << endl; cout << "time: " << (end-start)*1.0/CLOCKS_PER_SEC << " seconds" << endl; break; case 3: // Loop and display the bids read vector bids = loadBids("eBid_Monthly_Sales_Dec_2016.csv"); for ( unsigned int i = 0; i < bids.size(); ++i) { displayBid(bids[i]); } cout << endl; break; } } cout << "Good bye." << endl; return 0; }

Similar Samples

Visit ProgrammingHomeworkHelp.com to explore our sample programming assignments. Our curated examples demonstrate proficiency in solving diverse programming problems across multiple languages. These samples showcase our commitment to delivering high-quality solutions tailored to your academic needs. See firsthand how we can assist you in mastering programming concepts effectively.