본문 바로가기
프로그래밍/Java

[자바] 구구단 게임(Math.random() 함수 활용)

by 청량리 물냉면 2019. 7. 11.
반응형

 

문제

구구단 게임을 만들어 보자

 

예시)

3*4 = 12 (사용자에게 입력받는 부분)

정답입니다.

5*6 = 70 (사용자에게 입력받는 부분)

오답입니다.

 

 

실행화면

 

코드
import java.util.Scanner;
public class gugugame {
	public static void main(String[] args) {
		Scanner sc = new Scanner (System.in);
		
		int num1 = (int)(Math.random()*9)+1;
		int num2 = (int)(Math.random()*9)+1;
		
		System.out.print(num1 + "*" + num2 + "= ");
		int user = Integer.parseInt(sc.nextLine());
		
		if (num1*num2 == user) {
			System.out.println("정답입니다.");
		} else {
			System.out.println("오답입니다.");
		}
	}
}

 

코드 설명
int num1 = (int)(Math.random()*9)+1;

Math.random()함수

난수를 발생시키는 함수로서 기본적으로 0부터 1 사이의 실수가 출력된다.

위 코드의 경우 1부터 9까지의 난수가 출력된다.

 

 

 

헷갈렸던 점(개인 기록용)

시스템 멘트 출력 이후에 nextLine()을 실행해야 한다. 시스템 멘트 출력 전에 미리 변수 지정해줘봐야 컴파일이 안됨.

즉,

	System.out.print(num1 + "*" + num2 + "= ");
int user = Integer.parseInt(sc.nextLine());

이렇게 안 하고

int user = Integer.parseInt(sc.nextLine());
	System.out.print(num1 + "*" + num2 + "= ");

이렇게 하면 컴파일이 안 된다.
 

반응형