Write algorithm that describes how program is going to work

Assignment Help Data Structure & Algorithms
Reference no: EM13840062

Assignment

Task Description:

1) Design.

Prior to commencing coding, you need to plan what you're going to code. Write an algorithm that describes how your program is going to work and how it links together.

2) Implementation

Develop a program for the service department staff. This needs to:

a. Use a menu to provide the user with options to access different parts of the program.

b. Include all the functionality listed under the application description and further described under functional requirements. Make sure this includes the following elements:

i. at least one array

ii. at least one example of inheritance

iii. at least one example of polymorphism

iv. at least one example of overloading

c. Keep running until the user selects a menu option to exit the program. You do not need to save any data when you exit.
You should aim to write code following high quality coding practices, including comments, trapped exceptions and exhibiting good design where code is separated into separate methods.

Warning: In this task, you are not allowed to use any automated code-writing tools. You must manually write / type the whole program by yourself. Failing to do so will result in no marks for the entire assignment.

Functional Requirements

1) Add a new booking.

Allow the user to enter information which constitutes a booking for a client of the service department. You do not need to treat companies any differently to individual persons. The following information is required for each booking: • The name, address and contact phone number of the client

• The number plate, make, model and year of manufacture of the vehicle

• The service date You must also allow the user to indicate the type of booking that is being requested. This may be a vehicle modification or a vehicle service. In the case of a vehicle modification, you must also collect payment for any parts required on the day the booking is made.

2) List all jobs still actively being worked on

This option must display a list of all the bookings (jobs) that are in progress or have been completed on the current day by the service department. Do not list jobs which are yet to start, or jobs which have been completed on a previous day. For each job that is active, simply report the name of the client, the vehicle registration, the type of service and its current status.

3) List all completed jobs still requiring payment

The user must be able to select an option to list all the jobs that have been completed but have not yet been paid in full. For each such job, list the name of the client, the type of service they booked and the amount owing. If a client has payment owing for more than one job, you may choose to either consolidate these into one entry or to display them on individual lines at your own discretion.

4) List all jobs scheduled for work on a particular day

The program must allow the user to see a list of all the services that are scheduled on a selected day. The user must be able to specify the day for which the list is to be provided.

5) Accept a payment towards a service job

Payments must be recordable against services. The user must indicate the particular job to which the payment is to be allocated (any method of doing this is acceptable). Then, if the selected job is one for which there is an amount owing, report that amount to the user, and obtain from the user the amount actually being paid right now.

If the amount entered is too much, report an error message. If the amount entered is less than the total that was owing, report the new amount owing afterwards. Otherwise, report that no further payments are required from the client. Remember to keep track of all payments made on each day.

6) Report detailed status for a particular booked service

The program must be able to report the full details about any particular booking, by allowing the user to specify the booking for which they wish to see the details. This means you must report:

• The name, address and contact number of the client

• The type of service they booked

• The date of the service

• The vehicle registration number, make, model and year of manufacture

• The current job status (scheduled, in progress, complete, cancelled)

• The total service cost, if known

• The amount paid and amount owing.

7) Exit the Program

The program must keep running until the user selects the option to exit. You do not need to save any of the data (i.e. there is no need to use files).

3) Testing.

In your supplementary documentation, explain how you have tested your code and the results of your testing. This means writing down the inputs and actions which the marker should follow to reproduce the scenarios you used to check the program is working. Include screenshots demonstrating the results when you tested your code.

Reference no: EM13840062

Questions Cloud

Advise nicole of the taxation implications of the receipts : Advise Nicole of the taxation implications of the receipts and payments. Federation University - The Faculty of Business. Please check that you have done the following. Tick the boxes to show you have!
Inspection of the structure of the pesticide : Explain why inspection of the structure of the pesticide would suggest it would not accumulate in the brain. What does the inhibition of pesticide accumulation in the brain by the amino acid arginine suggest about the mechanism of transport of the..
Implied warranty of fitness for a particular purpose : Which of the following statements is true of an implied warranty of fitness for a particular purpose
Using a online library and the criminal justice periodicals : Using a Online Library and the Criminal Justice Periodicals Index
Write algorithm that describes how program is going to work : Prior to commencing coding, you need to plan what you're going to code. Write an algorithm that describes how your program is going to work and how it links together.
Define the elite and pluralist models of community power : the elite and pluralist models of community power
What is the amount going into the income summary : What is the amount going into the income summary/retained earnings
How community development block grants have aided : how community development block grants have aided in community revitalization
Key components and players involved in effective city plan : key components and players involved in effective city planning and innovative planning practices

Reviews

Write a Review

Data Structure & Algorithms Questions & Answers

  What is the time complexity

Design an algorithm for finding the closest two numbers in the input list - What is the time complexity? Is it probable to improve the algorithm if the input is a sorted list?

  Write algorithm using pseudocode to recognize substrings

Write the algorithm, using pseudocode, to do the following task, Given the string of numbers, recognize all the substrings which form numbers which are divisible by 3.

  Implement two stacks using only one array

Write routines to implement two stacks using only one array. Your stack routines should not declare an overflow unless every slot in the array is used.

  Database design activities

Assume Ray wishes to start a DVD rental program at his stores that he plans to call Henry's DVD Club. He refers to each of his consumers as members.

  What-if and goal-seeking analysis

Problem 1: What-if and Goal-seeking analysis, Problem 2: Portfolio Planning using optimization, Problem 3: A Monte Carlo Simulation Problem

  Compare the array-based and link-based implementations

Compare the array-based and link-based implementations of the ADT bag operation

  Possible external-memory map implementation

Another possible external-memory map implementation is to use a skip list, but to collect consecutive groups of  O ( B ) nodes, in individual blocks, on any level in the skip list

  Determine the complexity of the test algorithm

using graphs (or spreadsheets). Remember the supplied data will NOT fit exactly any one curve, so your analysis of the data and your reasoning for which curve is most likely will determine your final grade on this lab.

  Write algorithm in pseudo code for bank account

Write an algorithm in pseudo code to settle following question: A bank account starts out with $10,000. Interest is compounded monthly at 6% per year(0.5% per month).

  Give algorithm-correctness proof-time complexity for tree

Determine the minimum number of nodes in tree to remove so that the tree is separated into subtrees of sizes at most k. Give the algorithm, the correctness proof and the time complexity.

  Describe purpose of queue in breadth-first traversal

Describe the purpose of queue in breadth-first traversal? Assume you had function call displayAtDepthN, which when given tree and depth would display only nodes at that depth.

  What is the largest x such that the protocol performs x-bit

What is the largest x such that the protocol performs x-bit correction and what algorithm would you use to perform this correction? Give me the pseudo-code (or a sensible explanation)

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