CEP
CEP
Objective:
Imagine you are tasked with developing a Flight Route Control System for a busy international
airport. The system needs to efficiently manage and optimize flight routes, considering various
factors such as aircraft types, passenger loads, and fuel efficiency. Your task is to design and
implement this system using Python, incorporating fundamental programming concepts and
advanced data structures.
1. Analyze the core functionality of the Flight Route Control System using basic
programming concepts in Python.
2. Allow users to input and view information related to flights, such as flight numbers,
departure times, and destinations.
3. Utilize linear arrays to store basic information about each flight, such as flight number,
departure time, and destination.
4. Implement multi-dimensional arrays to represent the seating arrangement of each
flight, considering different classes (economy, business, first class).
5. Create functions to add new flights, update flight information, and display the flight
schedule.
6. Explore additional functions that enhance the user experience or provide valuable
insights into the flight data.
7. Create a class named Flight to encapsulate the properties and behaviors of a flight.
8. Implement methods to get and set information about the flight, such as updating
departure times or checking seat availability.
9. Extend the Flight class to create specialized classes for different types of flights, such as
international flights, domestic flights, and cargo flights.
10. Utilize inheritance to share common functionality among these classes.
11. Implement abstract base classes for the flight categories, ensuring that specific methods
are implemented in each subclass.
12. For example, define an abstract method to calculate fuel efficiency, which must be
implemented in each type of flight.
13. Apply encapsulation principles to hide internal details of the Flight class.
14. Implement polymorphic behavior by allowing different flight types to be handled
uniformly in certain aspects of the system.
15. Implement sorting algorithms to efficiently arrange flights based on various criteria,
such as departure time or passenger load.
16. Experiment with different sorting algorithms and analyze their performance in the
context of flight scheduling.
17. Use linked lists to manage a queue of flights waiting for departure.
18. Implement a two-way linked list to efficiently navigate through the list of flights.
19. Utilize stacks to manage emergency situations, such as sudden changes in weather
conditions.
20. Implement queues to handle the boarding process, ensuring a first-come, first-served
approach.
21. Implement a binary search tree to optimize the search for available gates or runways
based on specific criteria, such as the size of the aircraft.
22. Model the relationships between different airport facilities (terminals, runways, gates)
using a graph.
23. Implement graph algorithms to optimize the routing of flights within the airport.
Deliverables:
Constraints:
Attributes of CEP: