package exam;
import java.util.ArrayList;
public class lotto {
/*
숙제
pc가 1~46까지 숫자를 총 6개를 생성합니다.
해당 6개의 숫자를 클래스배열에 모두 저장시킵니다.
단,동일한 숫자가 입력되었을 경우 새로운 숫자로 다시 pc가 선택할수 있도록 코드를 작성합니다.
예시}
[2,6,8,22,6,27] (X) 중복 등장부터 다시 뽑기
[10,16,32,41,22,31] (O)
*/
public static void main(String[] args) {
new random().abc();
}
}
class random {
public void abc() {
int randnum =(int)Math.ceil(Math.random()*46);
ArrayList<Integer> numlist = new ArrayList<Integer>();
numlist.add(randnum); //하나를 미리 넣고 시작
int count = 0; //겹침여부
while(numlist.size() < 6) { //length 6 될때까지 돌아감
randnum =(int)Math.ceil(Math.random()*46);
for(Integer me : numlist) {
if(randnum == me) {
count++; //방금 생성된 랜덤 숫자가 기존수와 같은게 "있다면" count+1
}
}
if(count == 0) { //같은게 "없으면" 배열추가
numlist.add(randnum);
}else {
count = 0; //같은게 "있으면" 다시 초기화
}
}
System.out.println(numlist);
};
}
'STUDY > ㅡㅡ^' 카테고리의 다른 글
java 셤준비 1 (0) | 2024.06.05 |
---|---|
2024-05-24 숙제 (0) | 2024.05.24 |
아 진짜 짱나는 문제 scanner-중첩for (0) | 2024.05.03 |