class BoardingRandom(Boarding): def generate_boarding(self, plane_length): passengers = list() seatList = set() while len(seatList) is not 6 * plane_length: seatList.add((randint(1, plane_length), chr(randint(65, 70)))) for seat in seatList: passengers.append(Passenger(seat[0], seat[1], randint(0, 2))) self.plane = Plane(plane_length) passengers.reverse() self.plane.add_passengers(passengers) return passengers
class BoardingWTA(Boarding): def generate_boarding(self, plane_length): passengers = list() seatList = list() for count in range(1, 4): seats = set() while len(seats) < plane_length * 2: seats.add((randint(1, plane_length), chr(64 + count))) seats.add((randint(1, plane_length), chr(71 - count))) seatList.extend(list(seats)) for seat in seatList: passengers.append(Passenger(seat[0], seat[1], randint(0, 2))) self.plane = Plane(plane_length) self.plane.add_passengers(passengers) return passengers
class BoardingFTB(Boarding): def generate_boarding(self, plane_length): passengers = list() seatList = list() for number in range(1, plane_length, plane_length // 4): seats = set() while len(seats) < plane_length * 6 / 4: seats.add((randint(number, number + (plane_length // 4) - 1), chr(randint(65, 70)))) seatList.extend(list(seats)) for seat in seatList: passengers.append(Passenger(seat[0], seat[1], randint(0, 2))) self.plane = Plane(plane_length) self.plane.add_passengers(passengers) return passengers
class BoardingSteffen(Boarding): def generate_boarding(self, plane_length): passengers = list() seatList = list() for count in range(0, 3): for i in range(plane_length, 0, -2): seatList.append((i, chr(65 + count))) for i in range(plane_length, 0, -2): seatList.append((i, chr(70 - count))) for i in range(plane_length - 1, 0, -2): seatList.append((i, chr(65 + count))) for i in range(plane_length - 1, 0, -2): seatList.append((i, chr(70 - count))) for seat in seatList: passengers.append(Passenger(seat[0], seat[1], randint(0, 2))) self.plane = Plane(plane_length) self.plane.add_passengers(passengers) return passengers
from boarding import * from passenger import Passenger from plane import Plane if __name__ == "__main__": airbus = Plane(8) airbus.print_plane_scheme() psg1 = Passenger(1, 'A', 2) psg2 = Passenger(2, 'B', 3) psg3 = Passenger(1, 'B', 4) psgrs = list() psgrs.append(psg1) psgrs.append(psg2) psgrs.append(psg3) # print(psgrs) for psg in psgrs: print(psg) airbus.add_passengers(psgrs) airbus.print_plane()