CS Project Class XII
CS Project Class XII
RESERVATION
SYSTEM
Roll No : 31
Ramjas Public school (Day Boarding), Anand Parbat,
DELHI
Rashi Rajput
XII-A (Computer Science)
Roll No. : 31
Ramjas Public School (Day Boarding)
Anand Parbat, New Delhi
import pickle
def main_menu():
while True:
print('\n')
print("5. Exit")
if choice==1:
global s
global d
global date1
user_menu()
elif choice==2:
elif choice==3:
cancel_ticket(pnr)
elif choice == 4:
while True:
admin=input("Username:")
if admin=='Rashi':
while True:
password=input("Password:")
if password=='RR@2509':
print("-----------------------------------------------------------------------")
while True:
print('\n')
print("2. to exit")
if c==1:
display_all_tickets()
elif c==2:
break
else:
break
break
elif choice == 5:
exit()
else:
main_menu()
def user_menu():
print('----------------------------------------------')
print('----------------------------------------------')
trains = generate_trains()
display_trains(trains)
user_menu()
else:
train = trains[choice-1]
def generate_trains():
trains = []
for i in range(5):
train = {}
train["name"] = random.choice(train_names)
train['source']=s
train['destination']=d
train['date']=date1
trains.append(train)
a=open('initial.dat','wb')
pickle.dump(trains,a)
a.close()
return trains
def display_trains(trains):
print("-----------------------------------------------------------------------------------------------------------------")
print(str(i+1),'\t\t', train["name"],'\t\t',train['source'],'\t\t',train
def get_details():
details = {}
return details
ticket = {}
ticket["pnr"] = pnr
ticket["train"] = train
ticket['source']=s
ticket['destination']=d
ticket['date']=date1
ticket["details"] = details
pickle.dump(ticket, f)
def display_ticket(pnr):
f=open("tickets.dat", "rb")
while True:
try:
ticket = pickle.load(f)
if ticket["pnr"] == pnr:
print('Source:',ticket['source'])
print('Destination:',ticket['destination'])
print('Date:',ticket['date'])
print("Time:", ticket["train"]["time"])
print("Name:", ticket["details"]["name"])
print("Age:", ticket["details"]["age"])
print("Gender:", ticket["details"]["gender"])
print("Phone:", ticket["details"]["phone"])
break
except EOFError:
break
f.close()
##sd
def display_all_tickets():
f=open("tickets.dat", "rb")
print("----------------------------------------------------------------------------------------------------------------------------")
while True:
try:
ticket = pickle.load(f)
print(str(ticket["pnr"]),'\t',ticket["train"]["name"]
,'\t',ticket['train']['source'],'\t\t',ticket['train']['destination']
,'\t\t',ticket["details"]["name"],'\t\t',ticket["details"]["age"]
except EOFError:
break
f.close()
print('\n')
def cancel_ticket(pnr):
f=open("tickets.dat", "rb")
tickets = []
while True:
try:
ticket = pickle.load(f)
if ticket["pnr"] == pnr:
else:
tickets.append(ticket)
except EOFError:
break
f.close()
pickle.dump(ticket, f)
main_menu()