STARTING OUT WITH C++ REVEL >IA<
STARTING OUT WITH C++ REVEL >IA<
9th Edition
ISBN: 9780135853115
Author: GADDIS
Publisher: PEARSON
bartleby

Concept explainers

Question
Book Icon
Chapter 19, Problem 3PC
Program Plan Intro

Static Queue Template

Program Plan:

Main.cpp:

  • Include required header files.
  • Inside “main ()” function,
    • Declare a constant variable
    • Declare a template
    • Manipulate and insert elements into the queue using “enqueue ()” function.
    • Delete the queue elements using “dequeue ()” function.

Queue.h:

  • Include required header files.
  • Create template class
  • Declare a class named “Queue”. Inside the class,
    • Inside the “private” access specifier,
      • Create an object for the template
      • Declare required variables.
    • Inside “public” access specifier,
      • Declare constructor and destructor.
      • Declare the functions “enqueue ()”, “dequeue ()”, “isEmpty ()”, “isFull ()”, and “clear ()”.
  • Declare template class.
  • Give definition for the constructor.
    • Allocate memory dynamically for the template.
    • Assign the values.
  • Declare template class.
  • Give definition for the destructor.
    • Delete queue array and make it as null.
  • Declare template class.
  • Give function definition for “enqueue ()”.
    • Check whether the queue is full using “isFull ()” function.
      • If the condition is true then, print “The queue is full”.
      • If the condition is not true then,
        • Calculate the “rear” position.
        • Assign “num” to the “queue_Array [rear]”.
        • Increment the variable “numItems”.
  • Declare template class.
  • Give function definition for “dequeue ()”.
    • Check if the queue is empty using “isEmpty ()” function.
      • If the condition is true then print “The queue is empty”.
      • If the condition is not true then,
        • Calculate “front” position.
        • Assign the value of “queue_Array [front]” to the variable “num”.
        • Decrement the variable “numItems”.
  • Declare template class.
  • Give function definition for “isEmpty ()”.
    • Assign “true” to a Boolean variable
    • Check if “numItems” is true.
      • If the condition is true then assign “false” to the variable.
    • Return the Boolean variable.
  • Declare template class.
  • Give function definition for “isFull ()”.
    • Assign “true” to a Boolean variable
    • Check if “numItems” is less than “size”
      • If the condition is true then assign “false” to the variable.
    • Return the Boolean variable.
  • Declare template class.
  • Give function definition for “clear ()”.
    • Decrement queue size and assign it to “front”.
    • Decrement queue size and assign it to “rear”.
    • Assign 0 to the variable “numItems”.

Blurred answer
Students have asked these similar questions
Answer the following by True or False: NOTE: When the question has been underlined, it requires two (2) answers. The ADT makes use of static array for its queue implementation. The class includes a constructor and destructor. A value must be provided when you initiate a dequeue operation.
True or False? ___________ The ADT makes use of static array for its queue implementation. ___________     ___________ The class includes a constructor and destructor. ___________ A value must be provided when you initiate a dequeue operation.
Add the operation queueCount to the class Queue, which returns the number of elements in thequeue. Write the definition of the function template to implement this operation. Note: Code in C++
Knowledge Booster
Background pattern image
Computer Science
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
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education