C++ Programming During this class, you will be developing an application to offe

Sigchi4life
Category:
Programming
Price: $45 USD

Question description

Question description

During this class, you will be developing an application to offer and sell products to users. Each week, you will complete a part of the project. You will add additional functionality or improve available ones. In addition, you will write a project’s document to explain your project’s requirements and design. Every week, you will submit 2 items: the application and the documentation. Additional information and the deliverables for each Individual Project will be provided in the assignment description for the project.

In this first Individual Project, you will create the application structure, select the products to sell, and decide on the main features. You will also set up the project document outline that you will add to each week as follows:

· The Application: Use the following steps for the application:

1. Select your development approach.

2. Decide on the products that you are planning to sell.

3. Create a draft program design (on paper).

4. Start creating the program structure using the provided integrated development environment (IDE).

5. By the end of Week 1, your program should do the following:

§ It should ask customers to enter details such as their names and addresses.

§ It should print a welcome message that includes the customer’s name.

§ It should provide a list of available products with descriptions.

§ Add comments to your code.

· The Documentation: Use the following steps for the documentation:

0. Title page

§ Course number and name

§ Project name

§ Student name

§ Date

2. Table of contents (TOC)

§ Use an autogenerated TOC.

§ It should be on a separate page.

§ It should be a maximum of 3 levels deep.

§ Update the fields of the TOC so it is up-to-date before submitting your project.

3. Section headings (Create each heading on a new page and indicate with "TBD"; that is, to be determined.)

§ Week 2: Functions

During this class, you will be developing an application to offer and sell products to users. Each week, you will complete a part of the project. You will add additional functionality or improve available ones. In addition, you will write a project’s document to explain your project’s requirements and design. Every week, you will submit 2 items: the application and the documentation. Additional information and the deliverables for each Individual Project will be provided in the assignment description for the project.

In this first Individual Project, you will create the application structure, select the products to sell, and decide on the main features. You will also set up the project document outline that you will add to each week as follows:

· The Application: Use the following steps for the application:

1. Select your development approach.

2. Decide on the products that you are planning to sell.

3. Create a draft program design (on paper).

4. Start creating the program structure using the provided integrated development environment (IDE).

5. By the end of Week 1, your program should do the following:

§ It should ask customers to enter details such as their names and addresses.

§ It should print a welcome message that includes the customer’s name.

§ It should provide a list of available products with descriptions.

§ Add comments to your code.

· The Documentation: Use the following steps for the documentation:

0. Title page

§ Course number and name

§ Project name

§ Student name

§ Date

2. Table of contents (TOC)

§ Use an autogenerated TOC.

§ It should be on a separate page.

§ It should be a maximum of 3 levels deep.

§ Update the fields of the TOC so it is up-to-date before submitting your project.

3. Section headings (Create each heading on a new page and indicate with "TBD"; that is, to be determined.)

§ Week 3: Object Oriented Programming

For this assignment, you will continue working on your application to apply object-oriented programming concepts and create a customer class. The customer class must be used in your program. The new class will replace simple variables to handle customer details. The functionality of the program will not change; however, the code should be organized differently. You also need to update the project document by adding the new class design and other potential classes.

· The Application

1. Design the customer class.

2. Include at least the customer name and address for the class.

3. Create a class function to set the class’s variables.

4. Create a class function to get the values of the class’s variables.

5. Create additional functions as necessary.

6. Implement your design using the provided Integrated Development Environment (IDE).

7. Complete the following in your code:

§ Implement the new class.

§ Create an object from the new class.

§ Set the customer details using the class function.

§ Use the class function to access the customer details.

· The Documentation

1. Update the project document with a new date and project name.

2. Update previously completed sections based on instructor feedback.

3. New content: Object-Oriented Programming:

§ Include your new class design (a class diagram can be used).

§ Summarize the changes that you implemented.

§ Discuss any potential classes to be implemented in the future.

§ Week 4: Strings and Arrays

For this assignment, you will continue working on your application. You will use arrays, strings, and numbers to represent the products selected by the customer and their quantities. You also need to update the project document by explaining the changes implemented.

· The Application

1. Design the solution.

2. Use 2 arrays: one for the products, and one for the quantities.

3. Use loops to assign values to the arrays.

4. Use loops to read and print values from the arrays.

5. Reuse the functions that you developed in Week 2 and the customer class that you developed in Week 3. Changes can be done as needed.

6. By the end of Week 4, your application should work as follows:

§ Ask the customer to enter his or her details (e.g., name, address).

§ Print a welcome message that includes the customer’s name.

§ Provide a list of available products with descriptions.

§ Ask the customer to select products and quantities.

§ Save the provided details in arrays.

§ Read from the arrays to print the order summary; that is, the products, quantities, and the total price for each product.

§ Calculate and print the total price for the order.

§ Add comments to your code.

· The Documentation

1. Update the project document with a new date and project name.

2. Update the previously completed sections based on instructor feedback.

3. New content: Strings and Arrays

§ Summarize the changes that you implemented.

§ Discuss how using arrays changes the way that your code is organized.

§ Week 5: Pointers

In this Individual Project, you will continue working on your application. In Week 4, you used 2 arrays to represent the list of products and their quantities. Memory needs were determined before program execution. This week, you will use dynamic allocation so the memory needs are determined during runtime. The functionality of the program is not expected to change. You also need to update the project document by explaining the changes implemented, and discuss how using dynamic memory allocation changed your application structure.

· The Application

1. Design the solution.

2. For the quantities, use a pointer to the first item of an array of int. An example of the declaration code may look like the following:

§ int * numbers;

§ numbers = new int [n];

3. For the products, use an array of pointers to strings, and dynamically allocate space for each of the strings. An example of the declaration code may look like the following:

§ char Temp[100]; // to hold the entry

§ char * products [100]; // to hold the products

4. To fill in the products array, read one product name from the user, check the length, and then allocate memory based on the length of the entered word. The following code is provided as an example:

§ cin >> Temp; // to get the product

§ int len = strlen(Temp) +1 ; // to determine the length of the product name

§ char* newProduct = new char[len]; // to allocate memory

§ strcpy(newProduct, Temp); // to copy the entry to a new product

§ products[0] = newProduct; // to save in the array

5. Use the previous structure to provide the same functionality that was provided in Week 4.

6. By the end of Week 5, your application should work as follows:

§ Ask the customer to enter his or her details (e.g., name and address).

§ Print a welcome message that includes the customer’s name.

§ Provide a list of available products with descriptions.

§ Ask the customer to select products and quantities.

§ Save the provided details in the new data structure.

§ Read from the arrays to print the order summary (e.g., the products, quantities, and total price for each product).

§ Calculate and print total price for the order.

§ Release the allocated memory.

§ Add comments to your code.

· The Documentation

1. Update the project document with a new date and project name.

2. Update previously completed sections based on instructor feedback.

3. New content: Strings and Arrays

§ Summarize the changes that you implemented.

§ Discuss how using dynamic memory allocation changed your application structure.


Tutor Answer

(Top Tutor) Daniel C.
(997)
School: Cornell University
PREMIUM TUTOR
Studypool has helped 1,244,100 students
Ask your homework questions. Receive quality answers!

Type your question here (or upload an image)

1829 tutors are online

Brown University





1271 Tutors

California Institute of Technology




2131 Tutors

Carnegie Mellon University




982 Tutors

Columbia University





1256 Tutors

Dartmouth University





2113 Tutors

Emory University





2279 Tutors

Harvard University





599 Tutors

Massachusetts Institute of Technology



2319 Tutors

New York University





1645 Tutors

Notre Dam University





1911 Tutors

Oklahoma University





2122 Tutors

Pennsylvania State University





932 Tutors

Princeton University





1211 Tutors

Stanford University





983 Tutors

University of California





1282 Tutors

Oxford University





123 Tutors

Yale University





2325 Tutors