"boolean"을 활용한 배열안의 중복값 방지...
(사진출처) http://leeside.tistory.com/m/31?category=385532
제가 java를 처음 배우고 얼마 지나지 않아
배열과 랜덤함수를 익히던 과정에 과제로 받았던 프로그램이
"로또프로그램"이였습니다.
[1~45 사이의 수 중 랜덤으로 6개의 숫자를 뽑아 배열에 넣고 이를 출력한다.]
간결하면서도 비교적 쉽다 느껴질 수 있지만
다른 조건들도 생각해 주어야했는데
..
..
1. 로또의 번호는 중복되지 않는다.
2. 작은 수 부터 나열된다.(sorting)
우선 필자는 이번 포스팅에서는 boolean을 사용하여 중복된 값을 얻지 못 하게
코드를 제어하는 방법을 기록하겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | public class booleanTest { public static void main(String[] args) { // 변수선언 int RandomNums[] = new int[6]; boolean swit[] = new boolean[45]; // 0~44 // 초기화 for (int i = 0; i < swit.length; i++) { swit[i]=false; } // 랜덤 값 추출 int i=0; while(i < RandomNums.length) { int temp = (int)(Math.random()*45); // 0~44 if(swit[temp]==false) { swit[temp]=true; RandomNums[i]=temp+1; //1~45 i++; } } // 출력 for(int j=0;j<RandomNums.length;j++) { System.out.println("RandomNums["+j+"] = "+RandomNums[j]); } } } |
..
..
미흡한 글을 읽어주신 모든 분들께 감사드립니다.
'오랜된 포스팅 > Java' 카테고리의 다른 글
ArrayList를 이용한 동적배열(Dynamic Array) (0) | 2018.05.23 |
---|---|
알고리즘을 이용한 동적배열(Dynamic Array) (0) | 2018.05.23 |
정렬(sorting) - Bubble sort (0) | 2018.05.22 |
피보나치수열(fibonacci numbers) 정리 (0) | 2018.05.21 |
Number Baseball Game ver_01 (0) | 2018.05.19 |