Skip to main content

The Fundamentals of Digital Marketing Certification

The Fundamentals of Digital Marketing Certification
Trying to make use of some spare time during these endless lockdowns. I completed The Fundamentals of Digital Marketing course on Google Digital Garage and got certified. This is not a great victory, nevertheless, I celebrate every small step towards a greater goal. #googlegarage #fundamentalsofdigitalmarketing #digitalmarketing

FDS 7

 Practical No: -7

Experiment No. 7: The ticket booking system of Cinemax theatre has to be implemented using C++

program. There are 10 rows and 7 seats in each row. Doubly circular linked list has to be maintained

to keep track of free seats at rows. Assume some random booking to start with. Use array to store

pointers (Head pointer) to each row. On demand

a) The list of available seats is to be displayed

b) The seats are to be booked.

c) The booking can be cancelled.

Code:

#include<iostream>

using namespace std;

class mynode

{

 public:

 char book_stats;

 mynode *prev,*next;

};

class thetr_cinemax

{

 public:

 mynode *head,*last;

 //member functions

 void create();

 void show();

 void book_tkt();

 void cancel_tkt();

 thetr_cinemax()

 {

 head=NULL;

 }

};

void thetr_cinemax::create() //function to create arrangement.

 {

 mynode *n;


 for(int i=0;i<=7;i++)

 {

 n=new mynode;

 n->book_stats=NULL;

 n->prev=NULL;

 if(head==NULL)

 {

 head=n;

 n->next=head;

 }

 else

 {

 mynode *t1,*t2;

 t1=head;

 while(t1->next!=head)

 {

 t2=t1;

 t1=t1->next;

 }


 t1->next=n;

 n->prev=t1;

 n->next=head;

 t1->prev=t2;

 }

 }

 }


 void thetr_cinemax::show()

 {

 mynode *temp;

 temp=head;

 while(temp->next!=head)

 {

 cout<<"("<<temp->book_stats<<")"<<"\t";

 temp=temp->next;

 }

 }


 void thetr_cinemax::book_tkt()

 {

 mynode *temp;

 int row1,i;

 cout<<"Enter seat number you want to book:";

 cin>>row1;


 temp=head;

 for(i=1;i<row1;i++)

 {

 temp=temp->next;

 }


 if(temp->book_stats=='B')

 {

 cout<<"\n Selected seat is not available!!!\n";

 }


 else

 {

 temp->book_stats='B';

 }

 }


 void thetr_cinemax::cancel_tkt()

 {

 mynode *temp;

 int row1,i;

 cout<<"Enter seat number you want to cancel:";

 cin>>row1;


 temp=head;

 for(i=1;i<row1;i++)

 {

 temp=temp->next;

 }


 if(temp->book_stats==NULL)

 {

 cout<<"\n The selected seat is free.\n\n";

 }


 else

 {

 temp->book_stats=NULL;

 }

 }


 int main()

 {

 int row,j=1,choice;

 char ans;


 thetr_cinemax c[10];

 for(int i=1;i<10;i++)

 {

 c[i].create();

 }


 for(int a=0;a<7;a++)

 {

 cout<<"\t"<<j;

 ++j;

 }


 cout<<endl;

 j=1;


 for(int i=1;i<10;i++)

 {

 cout<<j<<"\t";

 c[i].show();

 cout<<endl;

 ++j;

 }


 do

 {

 cout<<" 1.Display Status \n 2.Book Seat\n 3. Cancel Seat\n";

 cout<<"Select your choice:";

 cin>>choice;

 switch(choice)

 {

 case 1:

 j=1;

 for(int i=1;i<10;i++)

 {

 cout<<j<<"\t";

 c[i].show();

 cout<<endl;

 ++j;

 }


 case 2:

 cout<<"Enter number of row in which you want to book a seat:";

 cin>>row;

 c[row].book_tkt();

 j=1;

 for(int k=0;k<7;k++)

 {

 cout<<"\t"<<j;

 ++j;

 }


 cout<<endl;

 j=1;

 for(int i=1;i<10;i++)

 {

 cout<<j<<"\t";

 c[i].show();

 cout<<endl;

 ++j;

 }

 break;


 case 3:

 cout<<"Enter number of row from which you want to cancel a seat:";

 cin>>row;

 c[row].cancel_tkt();

 j=1;

 for(int k=0;k<7;k++)

 {

 cout<<"\t"<<j;

 j++;

 }


 cout<<endl;

 j=1;

 for(int i=1;i<10;i++)

 {

 cout<<j<<"\t";

 c[i].show();

 cout<<endl;

 ++j;

 }

 break;


 default:

 cout<<"\n Invalid choice:";


 }

 cout<<"\n\n Do you want to continue? (y/n):";

 cin>>ans;

 }while(ans=='y');

 return 0;

 }



Output:

GALLERY

GALLERY
photos

ABOUT

HTML CSS, VB.net Developer and Java, C programming. With Loves Problem Solving and to Unreval the Mysteries behind the Magic of Computer Programming

Followers

MY PROJECTS

Popular posts from this blog

FDS 12

 Practical No: -12 Experiment No. 12: A double-ended queue(deque) is a linear list in which additions and deletions may be made at either end. Obtain a data representation mapping a deque into a one-dimensional array. Write C++ program to simulate deque with functions to add and delete elements from either end of the deque. Code: using namespace std; #include<iostream> #include<stdio.h> #include<process.h> #define MAX 30 typedef struct dequeue {  int data[MAX];  int rear,front; }dequeue; void initialize(dequeue *p); int isEmpty(dequeue *p); int isFull(dequeue *p); void enqueueRear(dequeue *p,int x); void enqueueFront(dequeue *p,int x); int dequeueFront(dequeue *p); int dequeueRear(dequeue *p); void display(dequeue *p); main() {  int i,x,choice,n;  dequeue q;  initialize(&q);  do  {  cout<<"\n 1.Create \n 2.Insert(rear) \n 3.Insert(front) \n 4.Delete(rear) \n 5.Delete(front)";  cout<<"\n 6.Display \n 7.Ex...

dsa

 https://drive.google.com/drive/folders/1xaWUPlioGjpK0WAmAD-mvlxAuA8eTK1c https://github.com/khan0003-py/SPPU-Computer-4th-Sem-Lab-Codes/tree/master/DSAL

FDS 11

 Practical No: -11 Experiment No. 11: Queues are frequently used in computer programming, and a typical example is the creation of a job queue by an operating system. If the operating system does not use priorities, then the jobs are processed in the order they enter the system. Write C++ program for simulating job queue. Write functions add job and delete job from queue. Code: using namespace std; #include<iostream> #include<stdio.h> #include<conio.h> #include<stdlib.h> #define SIZE 5 void enqueue(int x); void dequeue(); void display(); int FRONT=-1; int REAR=-1; int QUEUE[SIZE]; main() {  int x,ch;  while(1)  {  cout<<"\n 1:Add Job";  cout<<"\n 2:Delete Job";  cout<<"\n 3:Display";  cout<<"\n 4:Exit";  cout<<"\n Enter Your Choice:";  cin>>ch;  switch(ch)  {  case 1:  cout<<"Enter Job:";  cin>>x;  enqueue(x);  break;  case 2: ...

Contact us

Name

Email *

Message *