public void doGame() {
while (true) {
System.out.println();
String selection = selectMenu();
if (selection.equals("1")) {
doMiniGame();
} else if (selection.equals("2")) {
System.out.println("프로그램을 종료합니다.");
break;
} else if (selection.equals("3")) {
} else {
System.out.println("잘못 입력하셨습니다.");
}
}
}
private void doMiniGame() {
int computerNum = random.nextInt(10000) % 100 + 1;
boolean win = false;
for (int i = 1; i <= 10; i++) {
System.out.println("예측한 번호 : ");
int userN = scanner.nextInt();
if (userN > computerNum) {
System.out.println("Down");
} else if (userN < computerNum) {
System.out.println("Up");
}
if (userN == computerNum) {
win = true;
break;
}
}
if (win) {
System.out.println("CONGRATULATIONS !!! YOU WIN!!");
System.out.printf("THE NUMBER IS : %d ", computerNum);
} else {
System.out.println("YOU LOSE !!! TRY AGAIN!!!");
System.out.printf("THE NUMBER IS : %d", computerNum);
}
}
private String selectMenu() {
System.out.println("************************");
System.out.println("* 1. 게임 시작. *");
System.out.println("* 2. 게임 종료. *");
System.out.println("* 3. 게임 결과. *");
System.out.println("************************");
System.out.print("선택 : ");
String selection = scanner.next();
return selection;
}
public static void main(String[] args) {
UpDownGame game = new UpDownGame();
game.doGame();
}
ArrayList를 사용해서 게임 결과 저장 및 출력 이기면 Win 지면 Lose 이런식으로 저장 및 출력을 해보려는데 어떻게 해야할 지 감이 안잡힙니다.
sehongpark님의 답변
## 어느 부분에서
무엇이 잘 안되는지,
또 어떤 시도를 했는지
좀 더 상세한 설명 부탁드려요🙏
bini72aa님의 답변
ArrayList를 사용해서 게임 결과 Win 이면 Win으로 출력
Lose면 Lose 출력을 해볼려고하는데 어떤 식으로 써야하는지를 모르겠어서
add("win");
for문
사용도 해보고했는데 안되가지구 질문드립니다.
sehongpark님의 답변
## 조건문에서
이겼을 경우 "Win"을
졌을 경우 "Lose"를
ArrayList에 담아보세요.
```
// 이겼을 경우
if (win) {
list.add("Win");
...
} else {
list.add("Lose");
...
}
```
승패 결과 보기는
반복문으로 돌려서
ArrayList를 하나씩 출력해보시구요
```
for (int i = 0; i < list.size(); i++) {
System.out.printf("%s", list.get(i));
}
```
bini72aa님의 답변
감사합니다!!