중복을 제거해서 랜덤함수를 6번만 수행하고 로또 숫자 6개를 뽑아라
int[] numbers = new int[45];
int[] lotto = new int[6]; // 6개의 번호를 저장할 배열 생성
for (int i=0;i<numbers.length;i++) {
numbers[i] = i+1;
}
for (int i = 0; i < lotto.length; i++) { // 6번 반복하여 번호 선택
int randomNumber = (int) (Math.random() * (45 - i)); // 1부터 45까지의 숫자 중 하나를 랜덤하게 선택
lotto[i] = numbers[randomNumber];
numbers[randomNumber] = numbers[numbers.length - 1 - i];
}
// 선택된 숫자 출력
for (int number : lotto) { // numbers배열의 값들을 하나씩 number에 입력
System.out.print(number + " ");
}
'코딩테스트' 카테고리의 다른 글
은행계좌(생성,삭제,입금,출금,종료) (0) | 2023.05.30 |
---|