Analyze a basic set of requirements for a problem

Assignment Help Data Structure & Algorithms
Reference no: EM13306830

II. Prerequisites: Before starting this programming assignment, participants should be able to:

* Analyze a basic set of requirements for a problem

* Compose C language programs

* Compile a program using Microsoft Visual Studio 2012

* Create basic test cases for a program

* Apply arrays, strings, and pointers

* Summarize differences between array notation and pointer notation

* Apply pointer arithmetic * Apply basic string handling library functions

* Define and implement structures in C

* Summarize the operations of a linked list

III. Overview & Requirements: Many of us have large digital music collections that are not always very well organized. It would be nice to have a program that would arrange our music collection based attributes such as artist, album title, song title, genre, song length, number times played, and rating. For this assignment you will write a digital music manager (DMM).

Your DMM program must have a text-based interface which allows the user to select from a menu of options including: load, store, display, insert, delete, edit, sort, rate, and exit. The "load" option reads records from a file into a dynamic doubly linked list. The "store" command writes records, in a dynamic doubly linked list, to a file. "Display" prints records, and its attributes to the screen. This command must print either all records or a single record based on a search field. A search field may be any of the attributes belonging to a record. If a search field matches multiple records, then print the first match to the screen.

The "insert" option collects information for each new song record and attributes from the user. The new song record must be placed into the list based on a selected sort option. By default, songs are inserted into the list alphabetically ('a' - 'z') according to artist. Other possible "sort" options include alphabetical ordering based on genre, or increasing numeric value based on rating. "Delete" removes a record from the list. Deletion is based on song title.

The "edit" option must allow the user to find a record in the list with any search field. The user may modify any of the attributes in the record. The "rate" action must allow the user to assign a value of 1 - 5 to a song; 1 is the lowest rating and 5 is the highest rating. Lastly, "exit" saves the most recent list to a file.

A record is a struct type which consists of the following attributes:

* Artist - a string

* Album title - a string

* Song title - a string

* Genre - a string

* Song length - a struct type consisting of seconds and minutes, both integers * Number times played - an integer * Rating - an integer (1 - 5)

IV. Logical Block Diagram The logical block diagram for your doubly linked list should look like the following:

As you can see from the illustration a doubly linked list has a pointer to the next node and the previous node in the list.

The first node's previous node pointer is always NULL and the last node's next pointer is always NULL. When you insert and delete nodes from a doubly linked list, you must always carefully link the previous and next pointers.

Reference no: EM13306830

Questions Cloud

What dose equivalent does the patient recieve : A 75 kg patient swallows a 30 micro Ci beta emitter wtih a half life of 5 days. The beta partiles are emitted with an average energy of .35MeV. What dose equivalent does the patient recieve
Determine the discharge through the pipeline : a 2000 m long commercial steel pipe of 200 m diameter converys water at 20 C between two reserviors. the difference in water level between the reserviors is maintained at 50 m.
Find the minimum thickness of the coating required : A Doctor order to prepare a glass for a patient with anti-reflection coating for 400 nm and 700 nm wavelength light. Find the minimum thickness of the coating required for this job
What is the cost of heating energy in dollar per million btu : if gas is available at $0.50 per therm and the efficiency of utilization is 80 percent, what is the cost of heating energy in dollars per million Btu
Analyze a basic set of requirements for a problem : Analyze a basic set of requirements for a problem - compose C language programs and compile a program using Microsoft Visual Studio 2012
Calculate the electrostatic force : In the Bohr theory of the hydrogen atom, an electron,oves in a circular orbit about a proton, where the radius of the orbit is 9.51 A. find the electrostatic force between the two
Determine the distance traveled and the time elasped : It accelerates wibt constant tangential accleration of at= 0.75 m/s^2. Determine the distance traveled and the time elasped when the magnitude of the car's totale acceleration is 0.9 m/s^2.
Calculate how many lbs of co2 are produced per gallon : Diesel fuel has an average chemical formula of C12H23 and a density of 6.45 lb/gal. Calculate how many lbs of CO2 are produced per gallon of diesel burned (assume complete combustion).
Determine the distance downwind to reach the maximum so2 : A 45-percent efficient, coal-fired power plant generates output power of 1000 MW (106 kW) and emits SO2 at the legally allowable rate of 0.6 lb SO2 per million BTU of heat into the plant. The stack has an effective height of 250 m.

Reviews

Write a Review

Data Structure & Algorithms Questions & Answers

  Stack to check for balanced braces

In a program that uses a stack to check for balanced braces in an string, what condition indicates that the braces are balanced when the end of the string is reached

  Determine the impedances of elements in laplace domain

Redraw the schematics with the impedance of each of the element shown in Laplace domain. Then determine the overall impedance of the entire circuit between the two ends of the shown circuit and express it in Laplace domain as a ratio of two polyno..

  Saving contents of the richtextbox by creating a program

Create the statements to save the contents of the RichTextBox named rtbCurrent. Show a SaveFileDialog named sfdCurrent to get the name of the document from the user.

  Creating a table of xml documents

Make a table of XML documents with a type of XML. Use a primary key so add a field of type INT that is an identity. Insert many records into XML field in this new table.

  Create list of major steps to follow to get input

Create a list of major steps to follow to get input, process, and output desired information (software requirements). Refine the list to include individual refined steps (algorithm).

  Graph in which every node is pivotal for at least two nodes

Give an example of a graph in which every node is pivotal for at least two di fferent pairs of nodes. Explain your answer.

  Algorithm to categorize problem using big-theta notation

Find a simple algorithm for solving following problem and categorize it using big-theta notation: Divide the group of people into two disjoint subgroups (of arbitrary size) such that difference in total ages.

  Find fraction of time during which queue grows

Suppose now there are three users. Find the probability that at a given time, all three users are transmitting simultaneously. Find the fraction of time during which the queue grows.

  Devise a linear-time algorithm to count the parallel edges

Devise a linear-time algorithm to count the parallel edges in a graph. Write the algorithm in pseudocode.

  System administrators database, network and application

What methods would you use to effectively manage a team of system administrators database, network, application working in your data center?

  Determine effective transfer rate

Assume a network transmits 1024 byte packets having a 128-byte header and a four byte checksum. If a workstation on the network is guaranteed to be able to transmit one packet every x time units,

  Benefits of dynamic over static arrays

Discuss the benefits of dynamic over-static arrays. Under what conditions will you choose dynamic arrays?

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