Dev.J
[JAVA] 문제 6-2 객체를 이용한 다형성 / 배열을 이용하여 극장 예약시스템을 작성 본문
배열을 이용하여 극장 예약시스템을 작성하세요.
좌석수가 5개이고 사용자가 예약을 하려면 먼저 좌석배치표를 보여준다.
예약이 끝난 좌석은 1로, 예약이 안된 좌석은 0으로 나타낸다.
예약되었는지를 출력해주고, 만석이면 예약을 종료하도록 한다.
public class Assignment6_2 {
// 첫 풀이때 문제점은 예약하는 if 문과 만석 판단하는 if 문이 분리되지 않았음
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num1 = 0; // 예약좌석번호
int[] seat = new int[5];
seat[0] = 0;
seat[1] = 0;
seat[2] = 0;
seat[3] = 0;
seat[4] = 0;
boolean start = true;
while (start) {
if (seat[0] == 1 && seat[1] == 1 && seat[2] == 1 && seat[3] == 1 && seat[4] == 1) {
System.out.println("만석입니다.");
start = false;
continue;
}
System.out.println("-------------------------");
System.out.println("1 2 3 4 5");
System.out.println("-------------------------");
System.out.println(seat[0] + " " + seat[1] + " " + seat[2] + " " + seat[3] + " " + seat[4]);
System.out.println("-------------------------");
System.out.printf("예약하려는 좌석번호를 입력하세요 : ");
num1 = sc.nextInt();
if (num1 == 1) {
if (seat[0] == 0) {
seat[0] = 1;
System.out.println("예약되었습니다.");
continue;
} else {
System.out.println("이미 예약된 자리입니다.");
continue;
}
} else if (num1 == 2) {
if (seat[1] == 0) {
seat[1] = 1;
System.out.println("예약되었습니다.");
continue;
} else {
System.out.println("이미 예약된 자리입니다.");
continue;
}
} else if (num1 == 3) {
if (seat[2] == 0) {
seat[2] = 1;
System.out.println("예약되었습니다.");
continue;
} else {
System.out.println("이미 예약된 자리입니다.");
continue;
}
} else if (num1 == 4) {
if (seat[3] == 0) {
seat[3] = 1;
System.out.println("예약되었습니다.");
continue;
} else {
System.out.println("이미 예약된 자리입니다.");
continue;
}
} else if (num1 == 5) {
if (seat[4] == 0) {
seat[4] = 1;
System.out.println("예약되었습니다.");
continue;
} else {
System.out.println("이미 예약된 자리입니다.");
continue;
}
}
}
}
}
실행결과 :
-------------------------
1 2 3 4 5
-------------------------
0 0 0 0 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 2
예약되었습니다.
-------------------------
1 2 3 4 5
-------------------------
0 1 0 0 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 2
이미 예약된 자리입니다.
-------------------------
1 2 3 4 5
-------------------------
0 1 0 0 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 3
예약되었습니다.
-------------------------
1 2 3 4 5
-------------------------
0 1 1 0 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 1
예약되었습니다.
-------------------------
1 2 3 4 5
-------------------------
1 1 1 0 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 4
예약되었습니다.
-------------------------
1 2 3 4 5
-------------------------
1 1 1 1 0
-------------------------
예약하려는 좌석번호를 입력하세요 : 5
예약되었습니다.
만석입니다.
'Solved' 카테고리의 다른 글
[JAVA] 문제 12-2 3개의 나라이름과 인구를 입력받아 HashMap에 저장 / 컬렉션(map) (0) | 2021.09.23 |
---|---|
[JAVA] 문제 12-1 다음 3개의 데이터를 입력받아 프로그램을 완성하시오. / 컬렉션(map) (0) | 2021.09.22 |
[JAVA] 문제 6-1 객체를 이용한 다형성 / 고객클래스 & VIP고객 클래스 (0) | 2021.09.06 |
[JAVA] 문제 4-3 다형성 / 인터페이스 구현(Printer, UsbMemory -> Device) (0) | 2021.09.06 |
[JAVA] 문제 4-5 Interface / 사용된 회사의 이름의 타이어를 출력 (0) | 2021.09.06 |