F. Task(s) Divide and Conquer Algorithm - Mergesort Assume that you have recently joined SortPro Inc. as an intem. SortPro engages in software solutions for elients in the food and beverage industry and in the hospitality industry. As an intern, your Team Lead assigns you the task of developing a sorting algorithm for a client in the food and beverage industry. The elient takes food orders and wishes to have the option of sorting his food orders by the order id. To check the soundness of your solution, your Team Lead asks you to write a program that will sort the food orders using Mergesort and to report the efficiency of the algorithm. Your Team Lead has set the following requirements • Auto-generate the order ids randomly. You may use a random function to generate the order ids. The order id takes the form of FD9999 (the number of digits might change according to the maximum number of orders, n, that is input by the user). • For cach order id, the total cost of the order should also be auto-generated randomly. The total cost of the order will be in the following format: RM999.99. • Sort the orders using Mergesort according to the order ids. • Display the list of the unsorted orders and the ocorresponding total cost of the order (if this option is selected by the user) • Display the list of the sorted orders and the coresponding total cost of the order (if this option is selected by the user) • Display the running time of the sorting algorithm. You are required to: a. Implement the scenario above using CC+ programming language. Do apply the techniques for good programming practices. b. Sample Input: ii.

Programming Logic & Design Comprehensive
9th Edition
ISBN:9781337669405
Author:FARRELL
Publisher:FARRELL
Chapter7: File Handling And Applications
Section: Chapter Questions
Problem 7PE
icon
Related questions
Topic Video
Question
F. Task(s)
Divide and Conquer Algorithm - Mergesort
Assume that you have recently joined SortPro Inc. as an intem. SortPro engages in software
solutions for clients in the food and beverage industry and in the hospitality industry. As an intern,
your Team Lead assigns you the task of developing a sorting algorithm for a client in the food and
beverage industry. The client takes food orders and wishes to have the option of sorting his food
orders by the order id. To check the soundness of your solution, your Team Lead asks you to write
a program that will sort the food orders using Mergesort and to report the efficiency of the
algorithm. Your Team Lead has set the following requirements:
• Auto-generate the order ids randomly. You may use a random function to generate the
order ids. The order id takes the form of FD9999 (the number of digits might change
according to the maximum number of orders, n, that is input by the user).
• For each order id, the total cost of the order should also be auto-generated randomly. The
total cost of the order will be in the following format: RM999.99.
• Sort the orders using Mergesort according to the order ids.
• Display the list of the unsorted orders and the corresponding total cost of the order (if this
option is selected by the user)
• Display the list of the sorted orders and the corresponding total cost of the order (if this
option is selected by the user)
• Display the running time of the sorting algorithm.
You are required to:
a. Implement the scenario above using CIC+ programming language. Do apply the
techniques for good programming practices.
b. Sample Input: <User will input the number of order ids, n, to generate and sort
Sample Output (Note: it and til can be in the form of a menu option - users can choose this
option if they wish to see the values):
i.
< time taken to perform the sorting
ii.
<all the unsorted order ids and the corresponding total order cost that were
generated>
ii.
<all the sorted order ids and the corresponding total order cost that were generated
Transcribed Image Text:F. Task(s) Divide and Conquer Algorithm - Mergesort Assume that you have recently joined SortPro Inc. as an intem. SortPro engages in software solutions for clients in the food and beverage industry and in the hospitality industry. As an intern, your Team Lead assigns you the task of developing a sorting algorithm for a client in the food and beverage industry. The client takes food orders and wishes to have the option of sorting his food orders by the order id. To check the soundness of your solution, your Team Lead asks you to write a program that will sort the food orders using Mergesort and to report the efficiency of the algorithm. Your Team Lead has set the following requirements: • Auto-generate the order ids randomly. You may use a random function to generate the order ids. The order id takes the form of FD9999 (the number of digits might change according to the maximum number of orders, n, that is input by the user). • For each order id, the total cost of the order should also be auto-generated randomly. The total cost of the order will be in the following format: RM999.99. • Sort the orders using Mergesort according to the order ids. • Display the list of the unsorted orders and the corresponding total cost of the order (if this option is selected by the user) • Display the list of the sorted orders and the corresponding total cost of the order (if this option is selected by the user) • Display the running time of the sorting algorithm. You are required to: a. Implement the scenario above using CIC+ programming language. Do apply the techniques for good programming practices. b. Sample Input: <User will input the number of order ids, n, to generate and sort Sample Output (Note: it and til can be in the form of a menu option - users can choose this option if they wish to see the values): i. < time taken to perform the sorting ii. <all the unsorted order ids and the corresponding total order cost that were generated> ii. <all the sorted order ids and the corresponding total order cost that were generated
In your report:
c. Write a pseudocode for your solution above. Do ensure that the pseudocode models the
entire logical flow of your program.
d. Illustrate the growth of the algorithm by:
i. providing a table that reports the growth of the sorting algorithm in the
implementation above; and
ii plot a graph to illustrate the growth of the sorting algorithm.
To illustrate the growth of your sorting algorithm, run the program with at least the
following n values (n represents the number of order ids that was generated): 1,000; 5,000;
32,000; 512,000; 1,000,000. The growth of the algorithm is typically measured in
millisecond (ms) or microsecond (s) or nanosecond (ns).
The growth rate of your sorting algorithm may vary due to your processor speed, memory
capacity and etc. Therefore, to illustrate the consistency of the growth rate of your program,
you will need to perform and report a minimum of 5 trial runs on each of the n values. You
may then take the average of the running time for plotting the graph and for the discussion
in the section below.
Transcribed Image Text:In your report: c. Write a pseudocode for your solution above. Do ensure that the pseudocode models the entire logical flow of your program. d. Illustrate the growth of the algorithm by: i. providing a table that reports the growth of the sorting algorithm in the implementation above; and ii plot a graph to illustrate the growth of the sorting algorithm. To illustrate the growth of your sorting algorithm, run the program with at least the following n values (n represents the number of order ids that was generated): 1,000; 5,000; 32,000; 512,000; 1,000,000. The growth of the algorithm is typically measured in millisecond (ms) or microsecond (s) or nanosecond (ns). The growth rate of your sorting algorithm may vary due to your processor speed, memory capacity and etc. Therefore, to illustrate the consistency of the growth rate of your program, you will need to perform and report a minimum of 5 trial runs on each of the n values. You may then take the average of the running time for plotting the graph and for the discussion in the section below.
Expert Solution
steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr