Create code to append a bid to the end of the list

Assignment Help Computer Engineering
Reference no: EM133486364

Homework: Information from A Municipal Government Data Project

Overview

The focus of these problems will be working with information extracted from a municipal government data feed containing bids submitted for auction of property. All materials for this homework can be found in the Supporting Materials section below. The data set is provided in two comma-separated files:

• eBid_Monthly_Sales.csv (larger set of 12,023 bids)
• eBid_Monthly_Sales_Dec_2016.csv (smaller set of 76 bids)

This homework is designed to explore linked lists, so you will implement a singly linked list to hold a collection of bids loaded from a CSV file. We provide a starter console program that uses a menu to enable testing of the sort logic you will complete. In this version, the following menu is presented when the program is run:

Menu:

• Enter a Bid
• Load Bids
• Display All Bids
• Find Bid
• Remove Bid
• Exit

Enter choice:

The LinkedList.cpp program is partially completed. It contains empty methods representing the programming interface used to interact with the linked list. You will need to add logic to the methods to implement the necessary behavior. Here is the public API for LinkedList.cpp that you have to complete:

public:
LinkedList();
virtual ~LinkedList();
void Append(Bid bid);
void Prepend(Bid bid);
void PrintList();
void Remove(string bidId);
Bid Search(string bidId);

Prompt

You will need to perform the following steps to complete this activity:

Setup: Begin by creating a new C++ project with a project type of "Hello World C++ Project".

A. Name the project "LinkedList". Remember to pick the correct compiler in Toolchains and click Finish. This will create a simple LinkedList.cpp source file under the /src directory.

B. Download the starter program files and copy them to the project's /src directory, replacing the existing auto-generated ones. Remember to right-click on the project in the Project Explorer pane on the left and Refresh the project so it adds all the new files to the src folder underneath.

C. Because this activity uses C++ 11 features, you may need to add the -std=c++11 compiler switch to the miscellaneous settings.

• Task I: Internal structure for list entries, housekeeping variables. Create the structure, internal to the class, that will hold the bid entries. Consider what other variables are needed to help manage the list.

• Task II: Initialize housekeeping variables. Remember to initialize the housekeeping variables in the constructor.

• Task III: Implement append logic. Create code to append a bid to the end of the list.

• Task IV: Implement prepend logic. Create code to prepend a bid to the front of the list.

• Task V: Implement print logic. Create code to print all the bid entries in the list to the console.

• Task VI: Implement remove logic. Create code to remove the requested bid using the bid ID passed in.

• Task VII: Implement search logic. Create code to search for the requested bid using the bid ID passed in. Return the bid structure if found or an empty bid structure if not found.

Your homework submission must address the following:

A. Code Reflection: A brief explanation of the code and its purpose, and a brief discussion of your experience in developing it, including any issues that you encountered while completing the exercise and what approaches you took to solve them

B. Pseudocode or Flowchart: A pseudocode or flowchart description of the code that is clear and understandable and captures accurate logic to translate to the programming language

C. Specifications and Correctness: Source code must meet its specifications and behave as desired. Correct code produces the correct output as defined by the data and problem; however, you should also produce fully functioning code (with no errors) that aligns with as many of the specifications as possible. You should write your code in such a way that the submitted file executes, even if it does not produce the correct output. You will be given credit for partially correct output that can be viewed and seen to be partially correct.

D. Annotation / Documentation: All code should also be well-commented. This is a practiced art that requires striking a balance between commenting everything, which adds a great deal of unneeded noise to the code, and commenting nothing. Well-annotated code requires you to:

a. Explain the purpose of lines or sections of your code, detailing the approach and method you took to achieve a specific task in the code.

b. Document any section of code that is producing errors or incorrect results.

E. Modular and Reusable: Programmers should develop code that is modular and reusable. If it contains functionality and responsibility in distinct methods, code is more flexible and maintainable. Your code should adhere to the single responsibility principle-classes and methods should do only one job. If you can replace a method with another that uses a different technique or implementation without impacting (having to refactor or rewrite) other parts of your code, then you have succeeded in creating modular methods.

F. Readability: Code needs to be readable to a knowledgeable programmer. In this course, readable code requires:

a. Consistent, appropriate whitespace (blank lines, spaces) and indentation to separate distinct parts of the code and operations

b. Explicit, consistent variable names, which should clearly indicate the data they hold and be formatted consistently: for example, numOrders (camelCase) or item_cost (underscored)

c. Organized structure and clear design that separates components with different responsibilities or grouping-related code into blocks

Reference no: EM133486364

Questions Cloud

Prepare a presentation using the community teaching plan : Prepare a presentation using the "Community Teaching Plan" and feedback received from your selected representative. You will work with your selected
Calculate internal growth rate and sustainable growth rate : Calculate the internal growth rate and sustainable growth rate for S&S Air. What do these numbers mean? How do you know?
Explain why hume might have thought reasoning about : explain why Hume might have thought reasoning about the unobserved involves reasoning about causes, and why the case of the tides and the case you came up with
What factors in his life does he say influenced : What factors in his life does he say influenced his delinquent career? Do you think he is right? Discuss
Create code to append a bid to the end of the list : CS 300- Create code to append a bid to the end of the list. Create code to prepend a bid to the front of the list. Create code to print all the bid entries.
What are the various types of victims : Describe restorative justice, and what it means to "make the victim whole again." Explain victim compensation and victim restitution
Challenge will be the need to continually stay : Challenge will be the need to continually stay several steps ahead of the enemy in areas of finance, technology, recruitment, and imagination
Think your colleagues might have misunderstood these : If your colleagues' posts influenced your understanding of these concepts, be sure to share how and why. Include additional insights you gained.
What groups was Educational Amendments Act : What groups was the Educational Amendments Act of 1974 intended to impact primarily?

Reviews

Write a Review

Computer Engineering Questions & Answers

  What would be the best architecture for gaming applications

What would be the best architecture for gaming applications?

  Implement a radix sorting machine

Implement a radix sorting machine. A radix sort for base 10 integers is a mechanical sorting technique that utilizes a collection of bins and one main bin.

  Calculate an average of several integers entered by the user

Calculate an average of several integers entered by the user. It first prompts the user to enter the number of integers she wants to average.

  Describe a simple method for sorting

Given an array A of n integers in the range [0,n2 - 1], describe a simple method for sorting A in O(n) time.

  Write a function named max that accepts two integer value

Write a function named max that accepts two integer value as arguments and returns the value that is the greater of the two.

  Reconnaissance tools

Enlist some of the popular reconnaissance tools, comparing three of the reconnaissance tools describing the advantages.

  Define an element with a name of measurement

Define an element with a name of "measurement". Within "measurement", define a complex type. Within this complex type, define a choice with minOccurs and maxOccurs both equal to "1".

  Now you should use your software to create a basic first

now you should use your software to create a basic first stage high level plan. consider the project lifecycle stages

  What were the problems with globes marketing materials

Develop a timeline for the events from the time of the policy mailer. Why are Khalil’s arrest and previous counseling not required to be disclosed?

  Which is more important, content or presentation

There has been a discussion for years on which is more important, content or presentation. This is very important when thinking about creating a PowerPoint slideshow. In your opinion, which is more and important and why.

  Why is it so difficult to prosecute cybercriminals

Internet-related crime occurs every minute. Cybercriminals steal millions of dollars with near impunity. For everyone that is captured nearly 10,000 or not.

  Define disaster-recovery processes

Develop an incident-response policy that covers the development of an incident-response team, disaster-recovery processes, and business-continuity planning.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd