Lab6tasks 221086
Lab6tasks 221086
ACTIVITY # 1
#include<iostream>
using namespace std;
const int MAX_SIZE = 100;
class Queue{
private:
int queue[MAX_SIZE];
int front;
int rear;
public:
Queue(){
front = -1;
rear = -1;
}
void enqueue(int item){
if(rear==(MAX_SIZE-1)){
cout << "Queue Overflow! Cannot enqueue item.\n";
return;
}
if(front == -1)
front = 0;
queue[++rear] = item;
cout << "Enqueued item: "<< item << endl;
}
int dequeue(){
if(front == -1 || front > rear){
cout << "Queue Underflow! Cannot dequeue item.\n";
return -1;
}
int dequeuedItem = queue[front++];
cout << "Dequeued item: " << dequeuedItem << endl;
if(front > rear){
front = -1;
rear = -1;
}
return dequeuedItem;
}
};
int main(){
Queue myQueue;
myQueue.enqueue(10);
myQueue.enqueue(20);
myQueue.enqueue(30);
myQueue.dequeue();
myQueue.dequeue();
myQueue.dequeue();
return 0;
}
ACTIVITY # 2
#include<iostream>
using namespace std;
const int MAX_SIZE = 100;
class Queue{
private:
int queue[MAX_SIZE];
int front;
int rear;
public:
Queue(){
front = -1;
rear = -1;
}
int dequeue(){
if(isEmpty()){
cout << " Queue Underflow! Cannot dequeue item.\n";
return -1;
}
int dequeuedItem = queue[front];
if(front == rear){
front = -1;
rear = -1;
}
else
front = (front + 1) % MAX_SIZE;
cout << " Dequeued Item: " << dequeuedItem << endl;
return dequeuedItem;
}
bool isFull(){
return(front == (rear + 1) % MAX_SIZE);
}
bool isEmpty(){
return(front == -1 && rear == -1);
}
};
int main(){
Queue myQueue;
myQueue.enqueue(10);
myQueue.enqueue(20);
myQueue.enqueue(30);
myQueue.dequeue();
myQueue.dequeue();
myQueue.dequeue();
return 0;
int main() {
Queue myQueue;
myQueue.enqueue(10);
myQueue.enqueue(20);
myQueue.enqueue(30);
myQueue.enqueue(60);
myQueue.dequeue();
myQueue.enqueue(56);
myQueue.dequeue();
myQueue.enqueue(35);
myQueue.dequeue();
myQueue.enqueue(60);
myQueue.dequeue();
myQueue.dequeue();
myQueue.dequeue();
myQueue.dequeue();
myQueue.dequeue();
return 0;
}
CIRCULAR QUEUE
#include <iostream>
using namespace std;
const int MAX_SIZE = 5;
int queue[MAX_SIZE];
int front = -1, rear = -1;
bool isEmpty() {
return front == -1;
}
bool isFull() {
return (front == 0 && rear == MAX_SIZE - 1) || (rear == (front - 1) %
(MAX_SIZE - 1));
}
void enqueue(int item) {
if (isFull()) {
cout << " \n Queue is full. Cannot enqueue." << endl;
}
else {
if (front == -1) {
front = rear = 0;
}
else {
rear = (rear + 1) % MAX_SIZE;
}
queue[rear] = item;
cout << " " << item << " enqueued to the queue." << endl;
}
}
void dequeue() {
if (isEmpty()) {
cout << "\n Queue is empty. Cannot dequeue." << endl;
}
else {
int item = queue[front];
if (front == rear) {
front = rear = -1;
}
else {
front = (front + 1) % MAX_SIZE;
}
cout << " " << item << " dequeued from the queue." << endl;
}
}
void display() {
if (isEmpty()) {
cout << " \n Queue is empty." << endl;
}
else {
int i = front;
cout << "\n Queue elements: ";
do {
cout << queue[i] << " ";
i = (i + 1) % MAX_SIZE;
} while (i != (rear + 1) % MAX_SIZE);
cout << endl;
}
}
int main() {
enqueue(1);
enqueue(2);
enqueue(3);
display();
dequeue();
dequeue();
enqueue(10);
display();
enqueue(5);
dequeue();
display();
dequeue();
dequeue();
display();
return 0;
}