Thursday

Queue Previous years Examination Questions 4 Marks Questions

 

Topic – 2
Queue
Previous years Examination Questions
4 Marks Questions

Question 1:
Write the definition of a member function DELETE( ) for a class QUEUE in C++, to remove a product from a dynamically allocated Queue of products considering the following code is already written as a part of the program. All India 2016

struct PRODUCT 
{
int PID; 
char PNAME[20];
PRODUCT *Next;
};
class QUEUE 
{
PRODUCT *R,*F; 
public:
QUEUE(){R=NULL;F=NULL;} 
void INSERT(); 
void DELETE();
∼QUEUE();
};

Аnswer:

void QUEUE :: DELETE() 
{
if(F!=NULL)
{
PRODUCT *Temp=F;
cout<<F->data<<"deleted\n";
F=F->Next; 
delete Temp;
if(F==NULL)  
R=NULL;
}
else
cout<<"\n Queue is Empty":
}

Question 2:
Write the definition of a member function INSERT( ) for a class QUEUE in C++, to insert an ITEM in a dynamically allocated Queue of items considering the following code is already written as a part of the program. Delhi 2016

struct ITEM 
{
int INO; 
char INAME[20];
ITEM *Link; 
};
class QUEUE 
{
ITEM *R, *F; 
public:
QUEUE() {R=NULL; F=NULL;} 
void INSERT(); 
void DELETE();
∼QUEUE();
};

Аnswer:

void QUEUE :: INSERT!)
{ 
ITEM *temp=new ITEM;
cout<<"\n Enter Item no & Item name:";
cin>>temp->INO; 
gets(temp->IName);
temp->Next = Null;
if(R==Null)
{
R = temp;
F = temp; 
}
else
{
R->Next = temp;
R = temp;
}
}

Question 3:
Write the definition of a member function INSERT! ) in C++, to add a new passenger detail in a dynamic queue of PASSENGERS considering the following code is already existing in the program. All India 2015

struct PASSENGERS
{
char PID[20]; NAME[80];
PASSENGERS *Next;
};
class QUEUE
{
PASSENGERS *Rear, *Front; 
public:  
QUEUE() {Rear=NULL; Front=NULL}
void INSERT(); 
void DELETE();
∼QUEUE();
};

Аnswer:

void QUEUE ::INSERT()
{
PASSENGERS * P = new PASSENGERS; 
cout<<"Enter PID"; 
cin>>P->PID; 
cout<<"Enter Name”; 
gets(p->Name);
P->Next = NULL;
if(Rear == NULL)
{
Front = Rear = P;
}
else 
{
Rear->Next = P;
Rear = P;
}
}

Question 4:
Write a function QDELETE( ) in C++ to perform delete operation in a Linked Queue, which contains Passenger number and Passenger name. Consider the following definition of node in the code. All India 2013

struct node 
{
long int Pno; 
char Pname[20]; 
node *Link;
};

Аnswer:

void QDELETE()
{
if(Front == NULL) 
{
cout<<"Queue is empty"; 
exit(0);
}
else
{
node *temp = front; 
cout<<"Passenger Information"; 
cout<<Front->Pno; 
cout<<Front->Pname;
Front=Front->Link; 
delete temp;
}
}

Question 5:
Write a function QINSERT( ) in C++ to perform insert operation on a linked queue, which contains client number and client name. Consider the following definition of NODE in the code of QINSERT ( ). Delhi 2013

struct NODE 
{
long int Cno;    //Client number
char Cname[20];    //Client name
NODE *Next;
};

Аnswer:

void QINSERT()
{
NODE *P = new Node;
cout<<"Enter the Client Number and Name:";
cin>>P- Cno;
gets(P->Cname) ;
P->Next=NULL;
if((front ~ NULL)&&(rear == NULL))
{
front=rear=P;
}
else
{
rear->Next = P; 
rear = P;
}
}

Question 6:
Given the necessary declaration of linked implemented Queue containing players information (as defined in the following definition of Node). Also, write a user defined function in C++ to delete one Player’s information from the Queue.
Delhi 2013C

struct Node 
{
int PlayerNo; 
char PIayerName[20];
Node *Link;
};

Аnswer:

void Delete_NODE()
{
NODE *P;
if(front == Null)
cout<<”Queue is empty";
else if(front == rear) 
{
P = front;
cout<<"Deleted Node information is"; 
cout<<P->PlayerNo; 
puts(p->PlayerName); 
front = rear = NULL; 
delete P;
}
else
{
P = front;
cout<<"Deleted Node information is"; 
cout<<P->PlayerNo; 
puts(P->PlayerName); 
front = front->Link; 
delete P;
}
}

Question 7:
Write a function in C++ to perform insert operation in a dynamic queue containing DVD’s information (represented with the help of an array of structure DVD). Delhi 2012

struct DVD 
{
long No; 
char title[20];
DVD *Link;
};

Аnswer:

void Insert()
{
DVD *p = new DVD; 
cout<<"Enter the DVD number and Title";
cin<<p->No; 
gets(p->title);
p->Link = NULL; 
if((front — NULL) && (rear == NULL))
{
front - rear = p;
}
else
{
rear->Link = p; 
rear = p;
}
}

Question 8:
Write a function in C++ to perform insert operation in a static circular queue containing book’s information (represented with the help of an array of structure BOOK). All India 2012

struct BOOK  
{ 
long AccNo; //Book account number 
char Title[20]; //Book Title
};

Аnswer:

void circularQueInsert(BOOK B[], int Front, int Rear, int Max)
{
if((Rear=Max-l && Front ==0)||(Front == Rear +1))
{
cout<<"Circular Queue is full"; 
exit(O);
}
else if(Front == -1 && Rear == -1)
{
Front = Rear = 0;
}
else if(Rear = Max -1 && Front >0)
{
Rear = 0;
}
else
Rear = Rear+1; 
cout<<"Enter book account number and title"; 
cin>>B[Rear].AccNo; 
gets(B[Rear].Title);
}

Question 9:
Write a function in C++ to perform insert operation on a dynamically allocated queue containing passenger details as given in the following definition of NODE; Delhi 2011

struct NODE 
{
long Pno; //Passenger Number 
char Pname[20]; //Passenger Name 
NODE *Link;
};

Аnswer:

void Enter()
{
NODE *nptr=new NODE;
nptr->Link = NULL;
cout<<"Enter name and number for new passenger";
gets(nptr->Pname); 
cin>>nptr->Pno; 
if(rear == NULL)
{
front = rear = nptr;
}
else
{
rear->Link = nptr; 
rear = nptr;
}
}

Question 10:
Write a function in C++ to perform delete operation on a dynamically allocated queue containing passenger details as given in the following definition of NODE: All India 2011

struct NODE 
{
long Mno; //Member Number 
char Mname[20]; //Member Name 
NODE *Link;
};

Аnswer:

void remove(NODE *front)
{
NODE *nptr; 
if(front == NULL) 
{
cout<<"Queue is empty";
}
else 
{
nptr = front; 
front = front->Link; 
if(front == NULL) 
rear = NULL; 
delete nptr;
}

Question 11:
Write a complete program in C++ to implement a dynamically allocated queue containing names of cities. All India 2010
Аnswer:

#include<iostream.h>
#include<string.h> 
struct Node 
{
char city[30];
Node *link;
};
class queue 
{
Node *front, *rear; 
public:
queue() {front=rear=NULL;} 
void add_Q();    //add queue
void del_Q();    //delete queue
void show_Q();    //show queue
};
void queue :: add_Q()
{
Node *temp = new Node; 
char ct[30]; 
cout<<"Enter city"; 
gets(ct);
strcpy(temp->city,ct); 
temp->link = NULL; 
if(rear == NULL)
front = rear = temp; 
else
{
rear->link = temp; 
rear = temp;
}
}
void queue :: del_Q()
{
Node *temp; 
char ct[20]; 
if(front == NULL)
{
cout<<”queue is empty";
}
else   
{
temp = front; 
front = front->link; 
strcpy(ct, temp->city); 
cout<<"Deleted values are"<<ct; 
delete temp;
}
if(front == NULL)
rear = front;
}
void queue :: show_Q()
{
Node *temp = front; 
cout<<"The queue elements are"; 
while(temp!=NULL)
{
cout<<"\n"<<temp->city; 
temp = temp->l ink;
}
}
void main()
{
int choice; 
queue QUEUE; 
char opt='Y'; 
do 
{
cout<<"\nMain Menu"; 
cout<<"\nl.Insertion in queue"; 
cout<<"\n2.Deletion from queue"; 
cout<<"\n3.Traversal of queue"; 
cout<<"\n4.Exit from queue"; 
cout<<"\nEnter your choice from above(1,2,3,4)"; 
cin<<choice; 
switch(choice)
{
case 1: 
do 
{
QUEUE.add_Q(); 
cout<<"\ndo you want to add more elements<Y/N>?"; 
cin>>opt;
}
while(toupper(opt)=='Y'); 
break; 
case 2: 
do 
{
QUEUE.del_Q(); 
cout<<"\ndo you want to delete more elements<Y/N>?";
cin>>opt;
}
whi1e(toupper(opt)== 'Y'); 
break; 
case 3:
QUEUE.show_Q(); 
break; 
case 4; 
exit(0);
}
}
while(choice!=4);
}

Question 12:
Write a function QUEINS( ) in C++ to insert an element in a dynamically allocated queue containing nodes of the following given structure: Delhi 2009

struct Node
{
int Pid;     //Product Id
char Pname[20];   //Product Name 
Node *Next; 
};

Аnswer:

void QUEINS(Node *rear, int val, char valid)
{
Node *temp=new Node; 
temp->Pid = val; 
strcpy(temp->Pname,val1); 
temp->Next = NULL; 
if(rear == NULL)
rear = front = temp; 
else
{
rear->Next = temp; 
rear = temp;
}
}

Question 13:
Write a function QUEDEL( ) in C++ to display and delete an element in a dynamically allocated queue containing nodes of the following given structure: All India 2009

struct Node 
{
int Itemno; 
char Itemname[30];
Node *Link;
};

Аnswer:

void QUEDEL(Node *front)
{
Node *temp; 
if(front == NULL)
cout<<"Queue is Empty"; 
else
{
temp = front; 
cout<<"deleted item="; 
cout<<front->Itemno; 
cout<<front->Itemname; 
front = front->Link; 
if(front == NULL) 
rear = NULL; 
delete temp;
}
}

0 comments:

Post a Comment

Thanks for leaving a comment. As soon as it's approved, it will appear.