문제정의 :
1. 버스예약 프로그램을 Linked_list로 구현한다.
node값은 예약자 정보(아이디 비밀번호 전화번호 예약좌석의 수 예약좌석 등을 갖는다.)
예약좌석을 관리하는 List의 맴버 함수로는 모든 예약자 정보 출력, 현재 예약자의 정보를 모두 출력, 예약자의 아이 디와 비밀번호로 예약자 정보 출력, 예약자의 정보를 입력해 신규로 예약 등록, 예약자의 아이디와 비밀번호를 이용하여 예약추가, 예약자가 아이디와 비밀번호를 이용하여 예약 좌석을 삭제 한다. 단 삭제 할 때 Recusion을 이용하며 또 삭제 시 예약된 정보를 모두 삭제하면 node를 삭제한다.
문제해결 :
class Bus : 예약자 정보를 갖고 있는 node이다. 이름, 전화번호, 아이디, 비밀번호, 예약좌석 수 , 예약된 좌석의 번호, next 값을 갖는다. 예약좌석 번호 같은 경우 예약자가 총 25자리 까지 예약 할 수 있으므로 배열의 값 25개로 갖는다.
class BusList :
1) 멤버 변수 : 멤버 변수로는 Linked-list의 기준인 Bus * info를 갖는다. 또 현재 node의 값을 가르킬 수 있는 current와 또 node를 delete시 필요한 location2, 예약자의 수를 저장할 length, 또 버스의 좌석이 25좌석이고 좌석이 예약 됬는지 안 됬는지를 확인 해줄 변수 int Reserv[25]가 있다.
2)맴버 함수
2-1) 생성자 : 생성자에서 Reserv[25]값을 모두 0으로 만들어 준다. 이유는 처음에는 예약이 한 개도 안 되었기 때문에 예약이 안된 0으로 만들어 준다. 각 node의 정보는 NULL로 지정한다.
.... |