day08_LottoEx

육희영·2021년 9월 28일
0

랜덤으로 로또번호 뽑기

package day08;

import java.util.Arrays;

public class LottoEx {
	public static void main(String[] args) {
		final int COUNT = 6; // 로또 당첨 숫자 6 자리..
		int[] ball = new int[45];
		// 배열의 각 요소에 1~45의 값을 저장한다.

		for (int i = 0; i < ball.length; i++) {
			ball[i] = i + 1; // 0 ~ 44가 아닌 1~45까지 의 숫자를 저장 하기 위해 +1을 해주었다.
		}

		int temp = 0; // 두 값을 바꾸는데 사용할 임시변수
		// 배열의 i번째 요소와 임의의 요소에 저장된 값을 서로 바꿔서 값을 섞는다.
		// 0번째 부터 5번째 요소까지 모두 6개만 바꾼다.
		for (int i = 0; i < COUNT; i++) {	
			int j = (int) (Math.random() * 45); // 0~44 범위의 값을 얻는다.
			
			temp = ball[i];
			ball[i] = ball[j]; // ball[i]와 ball[j]의 값을 서로 바꾼다.
			ball[j] = temp;
		}

		int[] lotto = Arrays.copyOf(ball, COUNT);
		// ball 배열의 0번째부터 6개의 요소를 복사해서 lotto 배열에 붙여넣기.
		Arrays.sort(lotto); // 작은수 ~ 큰수 순으로 정렬을 한다.
		// 배열 ball의 앞에서부터 6개의 요소를 출력한다.
		for (int i = 0; i < lotto.length; i++) {
			System.out.printf("ball[%d] = %d%n", i, lotto[i]);
		}
	}
}

출력결과

ball[0] = 4
ball[1] = 5
ball[2] = 10
ball[3] = 21
ball[4] = 24
ball[5] = 33

이런식으로 랜덤으로 숫자를 뽑는다.

0개의 댓글

관련 채용 정보