Salangdung_i의 기록

JAVA 09 :: Array 예제 본문

BACKEND/JAVA

JAVA 09 :: Array 예제

Salangdung_i 2019. 8. 28. 01:01
728x90

 

array 게임

public void motel() {
		boolean bool = true;
		Scanner sc = new Scanner(System.in);

		String[] room = new String[10];
		for (int i = 0; i < room.length; i++) {
			room[i] = "비어";
		}
		while (bool) {
			System.out.println("= = = = = 모텔 관리 프로그램 = = = = =");
			System.out.println("1.입실\t\t2.퇴실\t\t3.방보기\t\t4.종료");
			System.out.printf("선택 >");
			int sel = sc.nextInt();
			switch (sel) {
			case 1:
				System.out.print("몇번방에 입실하시겠습니까?");
				int rSel = sc.nextInt() - 1;

				if (room[rSel].equals("비어")) {
					room[rSel] = "손님이";
				} else if (room[rSel].equals("손님이")) {
					System.out.println((rSel + 1) + "번방이 현재 " + room[rSel] + "있습니다.");
				}
				break;

			case 2:
				System.out.print("몇번방에서 퇴실하시겠습니까?");
				rSel = sc.nextInt() - 1;
				if (room[rSel].equals("비어")) {
					System.out.println((rSel + 1) + "번방이 현재 " + room[rSel] + "있습니다.");
				} else if (room[rSel].equals("손님이")) {
					room[rSel] = "비어";
				}
				break;
			case 3:
				for (int i = 0; i < 10; i++) {
					System.out.println((i + 1) + "번방이 현재 " + room[i] + "있습니다.");
				}
				break;
			case 4:
				bool = false;
				break;
			}

		}
}

 

public void motel() {
boolean bool = true; //while문을 빠져나가기위해 쓸 boolean형 변수 
Scanner sc = new Scanner(System.in);

String[] room = new String[10];  //String형 room배열 선언
for (int i = 0; i < room.length; i++) { //room[0]~[9]까지의 값 초기화 

 //room.length의 의미는 room의 배열의 길이를 나타낸다
room[i] = "비어";  //초기의 room배열에 "비어"로 초기화 시켜준다.
}
while (bool) {
System.out.println("= = = = = 모텔 관리 프로그램 = = = = =");
System.out.println("1.입실\t\t2.퇴실\t\t3.방보기\t\t4.종료");
System.out.printf("선택 >");
int sel = sc.nextInt(); //sel로 숫자를 입력받고, 입력받은sel로 switch문을 돌린다. 
switch (sel) {
case 1:
System.out.print("몇번방에 입실하시겠습니까?");
int rSel = sc.nextInt() - 1;
//입력받은 rSel에서 -1을 하는 이유는 배열은 '0'부터시작하기 때문이다.
if (room[rSel].equals("비어")) { //문자열을 비교할때는' == '기호가 아닌 room[rSel].equals("비어") 을 이용해야한다.  
room[rSel] = "손님이";  // sel에 1을 입력해 입실을 선택했을때 "비어" 값이 있었다면 입력받은 rSel에의 값을 "손님이"이로 바꿔준다. 
} else if (room[rSel].equals("손님이")) { //입실하고자했던 방의 값이 "비어"라면 이미 손님이 있다는 문을 출력해준다.
System.out.println((rSel + 1) + "번방이 현재 " + room[rSel] + "있습니다.");
}
break;

case 2:
System.out.print("몇번방에서 퇴실하시겠습니까?");
rSel = sc.nextInt() - 1;
if (room[rSel].equals("비어")) { //퇴실하고자했던 방이 이버있다면 비어있읍니다를 출력하고 
System.out.println((rSel + 1) + "번방이 현재 " + room[rSel] + "있습니다.");
} else if (room[rSel].equals("손님이")) { //"손님이" 라는 값이 있었다면 비어로 바꿔준다. 
room[rSel] = "비어";
}
break;
case 3:
for (int i = 0; i < 10; i++) { //sel에 3을 입력하여 방보기를 선택했을때는 for문을 돌려 전체 room배열을 출력해준다.  
System.out.println((i + 1) + "번방이 현재 " + room[i] + "있습니다.");
}
break;
case 4:
bool = false;

//sel=4이면 프로그램을 종료시키기위해 bool변수를 false값으로 바꾸고 while문을 빠져나온다.
break;
}

}
}

 

"Icon made by Pixel perfect from www.flaticon.com"

728x90

'BACKEND > JAVA' 카테고리의 다른 글

JAVA :: Array(배열) 배열의 길이 변경하기  (0) 2019.12.08
JAVA 10 :: Array 게임  (0) 2019.08.30
JAVA 08 :: Array배열  (0) 2019.08.26
JAVA 07 :: Random 난수  (0) 2019.08.25
JAVA 06 :: For문 연습문제  (0) 2019.08.24