숫자 맞추기 게임 만들기
1) 난수 생성
임의의 숫자를 생성하는 방법
Random random = new Random();
int randomNumber = random.nextInt(256); //임의의 숫자 범위
2) 지연 시간 추가하기
지연 시간을 추가하는 코드
Thread.sleep(1000); // 지연 시간(1/1000초 단위)
1/1000초 단위의 시간으로 1000을 입력하면 1초를 쉬게 되는 것임.
예제
이렇게 Thread.sleep 코드를 입력하면 sleep에 빨간 줄이 뜨는 것을 볼 수 있다.
alt + enter를 누르면 어떻게 해결할 것인지에 대해 팝업으로 보여준다.
두 번째의 "Surround with try/catch"를 누르면 try-catch블록이 자동으로 만들어지게 된다.
* e.printStackTrace : 에러를 출력. try-catch를 사용해서 예외 처리를 할 때에는 catch 블록에서 적절한 처리를 해주어야한다.
최종 예제 코드
public class ThreadSleep {
public static void main(String[] args) {
System.out.println("지금 무슨 생각을 하고 있는지 맞춰볼게요.");
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("커피");
}
}
3) 숫자 맞추기 게임
< 게임의 룰 >
- 임의의 숫자를 생성한다.
- 다음 과정을 8회 반복한다.
- 플레이어로부터 숫자를 입력받는다.
- 입력 받은 숫자가 임의의 숫자와 일치한다면 축하 메시지를 출력하고 반복문 탈출
- 입력 받은 숫자가 임의의 숫자보다 작다면 작다는 메시지 출력
- 입력 받은 숫자가 임의의 숫자보다 크다면 크다는 메시지 출력
3. 숫자를 맞추거나 반복문이 끝난 후에는 게임을 종료한다는 메시지와 함께 프로그램 종료
import java.util.Random;
import java.util.Scanner;
public class UpAndDownGame {
public static void main(String[] args) {
System.out.println("지금부터 0~300 사이에서 숫자를 하나 뽑겠습니다.");
System.out.println("여러분은 제가 뽑은 숫자를 맞춰야 합니다.");
// 랜덤 숫자
Random random = new Random();
int randomNumber = random.nextInt(301);
// 사용자로부터 숫자를 입력받아야 하므로 scanner 사용
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < 8; i = i + 1) {
System.out.println(8 - i + "번의 기회가 있습니다.");
System.out.println("추측한 숫자를 입력하세요.");
// 사용자로부터 숫자를 입력받아 정수로 변환
String input = scanner.nextLine();
int guess = Integer.parseInt(input);
if (randomNumber == guess) {
System.out.println("와 정답입니다~~~!");
break;
}
else if (randomNumber < guess) {
System.out.println("깔깔 더 작은 숫자입니다~!");
}
else if (randomNumber > guess) {
System.out.println("깔깔 더 큰 숫자입니다~!");
}
if (i == 7 ) {
System.out.println("더이상 기회가 없습니다.ㅠㅠ");
}
}
System.out.println("게임을 종료합니다.");
}
}
유투브 "초간단 자바"님 영상을 통해 공부한 내용입니다 !
www.youtube.com/watch?v=1Y9bijpqSug