자바로 로또프로그램을 짰는데..자꾸 오류가..ㅡㅡ
하림
public class exercise3
{
public static void main(String[] args)
{
int tempran = 0;
int[] array = new int[6];
int cnt = 1;
while(true)
{
tempran = (int)(Math.random() * 45 + 1);
for(int i = 0; i cnt; i++)
{
if(tempran == array[i])
{
break;
}
else if(i == cnt - 1)
{
array[cnt - 1] = tempran;
cnt++;
}
}
if(cnt == 7)
break;
}
for(int i = 0; i 6; i++)
{
System.out.println(array[i]);
}
}
}랜덤한 수 6개를 배열에 넣어서 출력하는 프로그램이구요.
실행해 보시면 알겠지만 에러는 없지만 실행하면 배열수를 초과했단 오류가 뜹니다.
제가 생각한 로직은 우선 처음에 랜덤한수를 저장하고 그 수가 첫번째 배열과 같은지
비교하고 같지 않으면 그수를 0번째 배열에 넣어줍니다.
두번째는 랜덤한 수를 발생시키고 배열 0,1번과 랜덤한 수가 같은지 비교하고 아니면
그값을 1번째 배열에 넣어주고..
세번째는 0,1,2번째 배열과 비교.
네번째는 0,1,2,3번째 배열과 비교.
.
.
.
마지막에 cnt값이 7이되면 와일문 종료하고 값을 출력..이건데..안되네요..
도움좀 주세욤..고수님들..ㅠ.ㅠ
-
큰꽃늘
이거 3일째 머리싸메고 고민중입니다. 정말 도움좀 부탁드립니다..ㅠ.ㅠ