From cd3f7681ab829c1f08fa17540eabbbad7cd7e945 Mon Sep 17 00:00:00 2001 From: Kshitij Date: Tue, 31 Oct 2023 11:11:22 +0530 Subject: [PATCH] added code and lab manual for assignment 20 and updated README link --- README.md | 2 + assignment-20.cpp | 240 ++++++++++++++++++++++++++++ lab-manuals/Lab Assignment C_20.pdf | Bin 0 -> 31623 bytes 3 files changed, 242 insertions(+) create mode 100755 assignment-20.cpp create mode 100644 lab-manuals/Lab Assignment C_20.pdf diff --git a/README.md b/README.md index 7002bb8..1e2e5e7 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,7 @@ In this repository, you'll find codes for Data Structure Lab. 14. [DSL - Assignment 14 (Selection, Bubble Sorting)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-14.py) 16. [DSL - Assignment 16 (Quick sort)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-16.py) 19. [DSL - Assignment 19 (Pinnacle Club)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-19.cpp) +20. [DSL - Assignment 20 (Cinemax theater)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-20.cpp) 29. [DSL - Assignment 29 (Queue job)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-29.cpp) 30. DSL - Assignment 30 (Priority queue) - _TO BE ADDED_ 31. [DSL - Assignment 31 (Double-ended queue)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/assignment-31.cpp) @@ -42,6 +43,7 @@ In this repository, you'll find codes for Data Structure Lab. 14. [Assignment 14 - Selection, Bubble Sorting](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20B_14.pdf) 16. [Assignment 16 - Quick sort](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20B_16.pdf) 19. [Assignment 19 - Pinnacle Club](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20C_19.pdf) +20. [DSL - Assignment 20 (Cinemax theater)](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20C_20.pdf) 29. [Assignment 29 - Queue job](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20E_29.pdf) 30. Assignment 30 - Priority queue - _TO BE ADDED_ 31. [Assignment 31 - Double-ended queue](https://git.kska.io/sppu-se-comp-codes/DSL/src/branch/main/lab-manuals/Lab%20Assignment%20E_31.pdf) diff --git a/assignment-20.cpp b/assignment-20.cpp new file mode 100755 index 0000000..013872f --- /dev/null +++ b/assignment-20.cpp @@ -0,0 +1,240 @@ +/* + + +The ticket booking system of Cinemax theater 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 +*/ + +#include +#include +using namespace std; +class node +{ public: +node* next; +node* prev; +int seat; +string id; +int status; +}; +class cinemax +{ +public: +node* head,* tail ,* temp; +cinemax() +{ +head=NULL; +} +void create_list(); +void display(); +void book(); +void cancel(); +void avail(); + +}; +void cinemax::create_list() +{ +int i=1; +temp=new node; +temp->seat=1; +temp->status=0; +temp->id="null"; +tail=head=temp; +for(int i=2;i<=70;i++) +{ +node *p; +p= new node; +p->seat=i; +p->status=0; +p->id="null"; +tail->next=p; +p->prev=tail; +tail=p; +tail->next=head; +head->prev=tail; + +} +} +void cinemax::display() +{ +{ int r=1; +node* temp; +temp=head; +int count=0; +cout<<"\n------------------------------------------------------------------------------------\n"; +cout<<" Screen this way \n"; +cout<<"------------------------------------------------------------------------------------\n"; +while(temp->next!=head) +{ +if(temp->seat/10==0) +cout<<"S0"<seat<<" :"; +else +cout<<"S"<seat<<" :"; + +if(temp->status==0) +cout<<"|___| "; +else +cout<<"|_B_| "; +count++; +if(count%7==0) +{ +cout<next; +} +cout<<"S"<seat<<" :"; +if(temp->status==0) +cout<<"|___| "; +else +cout<<"|_B_| "; +} +} +void cinemax::book() +{ int x; +string y; +label: +cout<<"\n\n\nEnter seat number to be booked\n"; +cin>>x; +cout<<"Enter your ID number\n"; +cin>>y; +if(x<1||x>70) +{ +cout<<"Enter correct seat number to book (1-70)\n"; +goto label; +} +node *temp; +//temp=new node; +temp=head; +while(temp->seat!=x) +{ +temp=temp->next; +} + +if(temp->status==1) +cout<<"Seat already booked!\n"; +else{ +temp->status=1; +temp->id=y; +cout<<"Seat "<>x; +cout<<"Enter you ID\n"; +cin>>y; +if(x<1||x>70) +{ +cout<<"Enter correct seat number to cancel (1-70)\n"; +goto label1; +} +node *temp; +//temp=new node; +temp=head; +while(temp->seat!=x) +{ +temp=temp->next; +} +if(temp->status==0) +{ +cout<<"Seat not booked yet!!\n"; +} +else +{ +if(temp->id==y) +{ +temp->status=0; +cout<<"Seat Cancelled!\n"; +} + +else +cout<<"Wrong User ID !!! Seat cannot be cancelled!!!\n"; +} +} +void cinemax::avail() +{ +int r=1; +node* temp; +temp=head; +int count=0; +cout<<"\n\n\n\n"; +cout<<"\n------------------------------------------------------------------------------------\n"; +cout<<" Screen this way \n"; +cout<<"------------------------------------------------------------------------------------\n"; +while(temp->next!=head) +{ +{ +if(temp->seat/10==0) +cout<<"S0"<seat<<" :"; +else +cout<<"S"<seat<<" :"; +if(temp->status==0) +cout<<"|___| "; +else if(temp->status==1) +cout<<" "; + +count++; +if(count%7==0) + +{ + +cout<next; +} +if(temp->status==0) +{ +cout<<"S"<seat<<" :"; + +if(temp->status==0) +cout<<"|___| "; +} + +} +int main() +{ cinemax obj; +obj.create_list(); +int ch; +char c='y'; +while(c=='y') +{ obj.display(); +cout<<"\n*********************************************\n"; +cout<<" CINEMAX MOVIE THEATRE\n"; +cout<<"*********************************************\n"; +cout<<"\nEnter Choice\n1.Current SeatStatus\n2.Book Seat \n3.Available Seat\n4.CancelSeat\n"; +cin>>ch; +switch(ch) +{ +case 1:obj.display(); +break; +case 2: obj.book(); +break; +case 3:obj.avail(); +break; +case 4: obj.cancel(); +break; +default: cout<<"Wrong choice input\n"; +} +cout<<"\nDo you want to perform any other operation : (y/n)\n"; +cin>>c; +} +return 0; +} + + diff --git a/lab-manuals/Lab Assignment C_20.pdf b/lab-manuals/Lab Assignment C_20.pdf new file mode 100644 index 0000000000000000000000000000000000000000..99a38eaad71d1a488aa9791d3ce1027dc2a39b43 GIT binary patch literal 31623 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 AQ~&?~ literal 0 HcmV?d00001