Fatima Jinnah Women University: Task 1
Fatima Jinnah Women University: Task 1
Section : B
Reg no : 2020-BSE-54
Semester : III
Lab 5
Task 1 :
Show the contents of a (linear) queue and position of front and rear markers (at
each step) once the
2. Consider a circular QUEUE with N=8 memory cells. Find the number of
elements in QUEUE for the following positions of front and rear.
front = 0 ; rear = 4 ; 5
front = 2 ; rear = 0 ; 7
front = 4 ; rear = 6 ;
front
q.dequeue();
40
q.dequeue();
60
q.enqueue(15);
rear
80
q.enqueue(25); 15
q.enqueue(105); 25
Code Task # 01
#include "stdafx.h"
#include<iostream>
using namespace std;
int const q_size = 4;
typedef int q_element;
class queue
{
private:
q_element arr[q_size];
q_element front, rear;
public:
queue() //CONSTRUCTOR
{
front = rear = -1;
}
if(rear == q_size - 1)
{
cout<<"Overflow Condition!\n";
}
else if(empty())
{
front++;
rear++;
arr[rear] = n;
}
else
{
rear++;
arr[rear]= n;
}
}
else
{
cout<<"\nThe deleted value is: "<<arr[front];
front++;
}
for(int i = 0; i<q_size - 1; i++)
{
arr[i] = arr[i+1];
}
rear--;
}
void print() //PRINT VALUE
{
cout<<"\nDisplay the Queue: ";
for(int i=0; i<=rear; i++)
cout<<arr[i]<<" ";
}
};
q.addQueue(1);
q.addQueue(6);
q.addQueue(12);
q.addQueue(24);
q.frontVal();
q.rearVal();
q.print();
q.deQueue();
q.deQueue();
q.deQueue();
q.addQueue(16);
q.addQueue(21);
q.print();
cout<<endl;
system("pause");
return 0;
}
Code Task # 02
Create a class Circular Queue that implements the functionality of a queue
providing all the required operations (Enqueue(), Dequeue(), Empty(),
Full() and getFront()).
//
#include "stdafx.h"
#include<iostream>
using namespace std;
int const q_size = 4;
typedef int q_element;
class queue
{
private:
q_element arr[q_size];
q_element front, rear;
public:
queue() //CONSTRUCTOR
{
front = rear = -1;
}
if(full())
{
cout<<"Overflow Condition!\n";
}
else
{
rear = (rear + 1)% q_size;
arr[rear]= n;
}
}
};
q.addQueue(20);
q.addQueue(10);
q.addQueue(9);
q.addQueue(6);
q.print();
cout<<endl;
cout<<endl;
q.addQueue(8);
cout<<endl;
cout<<"we have added 8 in the place of 6 "<<endl;
q.print();
cout<<endl;
cout<<endl;
cout<<endl;
system("pause");
return 0;}