본문 바로가기

JAVA/국비 공부

3월9일 수업(로또03)

로또 게임 3번

 1부터 45의 랜덤한 숫자를 크기가 6인 배열에 넣어주고 출력해주는 프로그램
+ 중복 제거 알고리즘 추가

 중복이 되지않게 하려면
index가 다름.
저장된 값은 같음.

 

package day0309;
import java.util.Random;

public class LottoGame03 {
    static final int size = 6;
    static final int NUMBER_MAX = 45;

    public static void main(String[] args) {

        Random random = new Random();
        System.out.println("로또게임 ver 1.0");

        int[] lottoNum = new int[size];

        int idx = 0;
        while (idx < lottoNum.length) {

            int randomNumber = random.nextInt(NUMBER_MAX) + 1;

            boolean numberCheck = true;

            for (int i = 0; i < lottoNum.length; i++) {
                if (randomNumber == lottoNum[i]) {
                    numberCheck = false;
                    break;
                }
            }
            if (numberCheck) {
                lottoNum[idx] = randomNumber;
                idx++;
            }

        }
        System.out.println();
        System.out.println("정렬 전");
        System.out.println();
        for (int i = 0; i < lottoNum.length; i++) {

            System.out.printf("lottoNum[%d]: [%2d]\n", i, lottoNum[i]);

        }

        // lottoNumbers 의  숫자를 정렬해주는  i for문
        for(int i = 0; i < lottoNum.length -1; i++) {
            
            if(lottoNum[i] > lottoNum[i+1]) {
                
                int temp = lottoNum[i];
                
                lottoNum[i] = lottoNum[i+1];
                
                lottoNum[i+1] = temp;
                
                i = -1;
            }
        }
               
        System.out.println();
        System.out.println("정렬 후");
        System.out.println();
        for (int i = 0; i < lottoNum.length; i++) {

            System.out.printf("lottoNum[%d]: [%2d]\n", i, lottoNum[i]);

        }

    }

}

'JAVA > 국비 공부' 카테고리의 다른 글

3월10일수업(로또04)  (0) 2021.03.11
3월9일(로또 02 해설)  (0) 2021.03.09
3월9일수업(로또2번)  (0) 2021.03.09
3월9일 수업(로또01)  (0) 2021.03.09
3월9일수업(배열)  (0) 2021.03.09