로또번호를 생성하기 위한 단계를 3가지로 나눴다.
1. int형 배열 6개 생성
2. 1~45까지의 랜덤 값을 반환
3. 중복 값 제거
3번의 중복 값 제거는 for문의 내용을 조금 수정해서 2가지 방법을 사용해보았다.
방법1
public class Lotto1 {
public static void main(String[] args) {
int Lotto[] = new int[6];
// 배열 생성
System.out.print("Lotto 선택 숫자는 ");
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;
} // 중복 값 제거1
}
}
for(int i=0; i<Lotto.length; i++){
System.out.print(Lotto[i] + " ");
}
System.out.print(" 입니다.");
}
}
방법 2
public class Lotto2 {
public static void main(String[] args) {
int Lotto[] = new int[6];
System.out.print("Lotto 선택 숫자는 ");
for(int i=0;i<Lotto.length;i++){
Lotto[i] = (int)(Math.random()*45)+1;
for(int j=i-1;j>=0;j--){
if(Lotto[i]==Lotto[j]){
i--;
break;
}
}
}// 중복 값 제거2
for(int i=0; i<Lotto.length; i++){
System.out.print(Lotto[i] + " ");
}
System.out.print(" 입니다.");
}
}
'문돌이의 IT > 자바(Java)' 카테고리의 다른 글
자바(Java) 다차원배열의 기본 (0) | 2016.03.02 |
---|---|
자바(Java) System.arraycopy 배열 복사하기 (1) | 2016.03.01 |
자바(Java) 배열(Array) 활용하기 (0) | 2016.02.28 |
자바(Java) Math클래스 활용하기 (0) | 2016.02.27 |
[문돌이의IT] 자바(Java) 소수점 값을 계산하려면 정수연산으로! (0) | 2016.02.20 |