본문 바로가기
JAVA

로또 번호 생성 후 중복값 없이 오름차순 정렬

by 선우진우 2023. 12. 28.
728x90
반응형

토요일이 다가오기도 하고 한 해가 마무리 되어 가니, 재미삼아 로또 번호를 자동 생성하는 코드를 만들어 봅시다 :-)

 

public void lotto645() {
	/*
		로또 번호 자동 생성기 프로그램을 작성하는데 중복 값 없이 오름차순으로 정렬하여 출력하세요.
		ex.
		3 4 15 17 28 40
	*/
		// 1. 크기가 6인 정수형 배열 선언 및 할당
		int[] lotto = new int[6];
		
		// 2. 배열에 중복값없이 1부터 45사이의 난수 초기화
		for(int i=0; i<lotto.length; i++) {
			lotto[i] = (int)(Math.random() * 45 + 1);
			
			for(int j=0; j<i; j++) {
				if(lotto[i] == lotto[j]) {
					i--;
					break;
				}
			}
		}
		
		// 3. 오름차순 정렬
		for(int i=0; i<lotto.length; i++) { // 비교 주체
			for(int j=i+1; j<lotto.length; j++) { // 비교 대상
				if(lotto[i] > lotto[j]) { // 비교 주체가 비교 대상보다 큰 경우 값을 바꿔줘야됨
					
					int temp = lotto[i];
					lotto[i] = lotto[j];
					lotto[j] = temp;
				}
			}
		}
		
		// 4. 출력
		for(int i=0; i<lotto.length; i++) {
			System.out.print(lotto[i] + " ");
		}
	}
 
 

 

728x90
반응형