Queueo Managment parte 1 | Sololearn: Learn to code for FREE!
Neuer Kurs! Jeder Programmierer sollte generative KI lernen!
Kostenlose Lektion ausprobieren
+ 1

Queueo Managment parte 1

You are working on a Queue management system and need to create the class to hold the queue data, which are customer IDs (integers). You make a Queue class, which has a size attribute, and an array, to hold the data of the queue. The class has a remove() method to remove the front item of the queue, a print() method to output the queue. You need to create an add() method for the Queue class, that will take an item and add it to the end of the queue. The code needs to be fully working, so that the Queue declaration and manipulation code in main() works.

12th Mar 2022, 12:30 PM
A Rahman Mamnoon
A Rahman Mamnoon - avatar
3 Antworten
0
#include <iostream> using namespace std; class Queue { int size; int* queue; public: Queue() { size = 0; queue = new int[100]; } void remove() { if (size == 0) { cout << "Queue is empty"<<endl; return; } else { for (int i = 0; i < size - 1; i++) { queue[i] = queue[i + 1]; } size--; } } void print() { if (size == 0) { cout << "Queue is empty"<<endl; return; } for (int i = 0; i < size; i++) { cout<<queue[i]<<" <- "; } cout <<endl; } //your code goes here void add(int x){ queue[100-1]+=x; size++; } }; int main() { Queue q; q.add(42); q.add(2); q.add(8); q.add(1); q.print(); q.remove(); q.add(128); q.print(); q.remove(); q.remove(); q.print(); return 0; }
12th Mar 2022, 12:31 PM
A Rahman Mamnoon
A Rahman Mamnoon - avatar
+ 2
void add(int a){ queue[size] = a; size++; } **I hope will help you guys
13th Dec 2022, 2:39 AM
Hai Duong Thanh Le
+ 1
Problem in add() function: 1. You are modifying the last element only. You should instead put new value <x> into the next free slot, noting on <size> value. 2. The use of += operator may not be working as you'd expect. Look at this ... 42 2 8 1 // initially 2 8 1 // after a call to remove() 8 129 // after 2 calls to remove() and call to add(128) Why 129? because the slot where 128 was stored into had value 1. It was there before calls to remove(). P.S. Why you mark your own as best answer? the code still has things to fix though ...
12th Mar 2022, 1:49 PM
Ipang