rockPaperScissors() 메소드를 호출하여 랜덤으로 "가위", "바위", "보"를 출력하시오.
string[] arr = {"가위", "바위", "보"};
double random = Math.random();
/* random으로 뽑을 수의 범위를 제한할 때
Math.random() 값에 제한 범위 값을 곱한다.
해당 문제에서는 배열 값의 수 만큼 범위를 제한해야 하므로
(배열의 길이 - 1) 값을 곱해준다. */
int index = (int) Math.round(random * (arr.length-1));
return arr[index];
public class RandomMaker() {
public static String rockPaperScissors() {
string[] arr = {"가위", "바위", "보"};
double random = Math.random();
int index = (int) Math.round(random * (arr.length-1));
return arr[index];
}
public static void main(String[] args) {
String str = rockPaperScissors();
System.out.println(str);
}
}
| Method | 설명 |
|---|---|
| Math.round([double d or float f]) | 파라미터로 입력받은 숫자의 소수점 이하의 값이 0.5보다 크면 절대값이 높은 정수를 리턴한다. 소수점 이하의 값이 0.5보다 작으면 절대값이 낮은 정수를 리턴한다. 소수점 이하의 값이 0.5이면 절대값이 높은 정수를 리턴한다. |
| Math.random() | 0 ~ 1 범위의 부동소수점의 난수를 생성한다. |
배열 배우기 전에 나온 실습문제라서 사용을 고려하지 않았는데, 배열을 쓰니까 유지보수성이 좋아지네요! 코드 잘 보고 갑니다~