NAVER

질문 C 프로그래밍 로또 당첨번호에 대한 모의 실험
비공개 조회수 1,117 작성일2018.11.26
로또 당첨번호에 대한 모의 실험인데
time srand rand 함수를 넣어서 실행해야하는데
5000번 실행하는 방법을 도저히 모르겠네요
소스 있으신 분 있으신가요


프로필 사진

답변자님,

정보를 공유해 주세요.

1 개 답변
1번째 답변
프로필 사진
nana****
중수
본인 입력 포함 정보
제가 로또 어플만들때 썻던 소스인데 참고 해보세요. 참고로 아래 소스는 자바입니다.

<pre>public ArrayList arrayList;
public int box;
public int i;
public int j;
public int[] k;
public Boolean flag;
public Random random;
// 로또 번호 6개 만들기 위해 반복문 for사용
for (i = 0; i <= 5; i++) {
// 중복 번호 생성 안되도록 하기위해 flag 설정
flag = false;
// 로또번호 1~45까지 랜덤생성
box = random.nextInt(45) + 1;
// 번호 하나 생성후 배열에 넣기
k[i] = box;
// 이 반복문은 중복 번호가 있는지 확인하는 반복문
for (j = 0; j < i; j++) {
// 기존에 생성된 번호들 중 이번에 생성된 번호랑 같은게 있는지 확인
if (k[j] == box) {
// 있으면 flag true 설정
flag = true;
}
}
// 중복된 번호 유무로 어레이 리스트에 넣기
if (!flag) {
// 번호 중복이 없으면 리스트에 넣기
arrayList.add(box);
} else {
// 번호 중복된게 있으면 i 를 -1 함으로 반복문이 한번 더 돌게한다.
i = i - 1;
}
}
// 만들어진 6개의 번호를 가진 어레이리스트를 정렬시킨다. 숫자 순서대로 정렬
Collections.sort(arrayList);
이렇게 하면 로또번호 6개 오름차순으로 정리되서 나옵니다.
이걸 5000번 반복시키고 매번 반복 할때마다 리스트에 저장시킨뒤 마지막에 어느 숫자가 몇번 나왔는지 처리하면 되겠네요.
5000번 반복시킬러면 반복문 쓰시면 됩니다.
for문

2018.12.06.

  • 채택

    질문자가 채택한 답변입니다.

도움이 되었다면 UP 눌러주세요!
UP이 많은 답변일수록 사용자들에게 더 많이 노출됩니다.