for (i = 0; i<6; i++)
{
lotto[i] = rand() % 45 + 1 ;
for (j = 0; j < i; j++)
{
if (lotto[i] == lotto[j]) // 이부분;;
{
i--; // ?
break;
}
}
}
로또 코딩 일부분입니다..
만약 i=0 일때 5,
i=1 일때 21,
i=2 일때 5 나오면 어떻게되나요? (코딩해보면 중복숫자 안나옴)
if문에 i--; 이게 이해가안되네요.. 제발 이해좀시켜주세요 ㅠㅠ..
같으면 다시 뽑아야 댈거 아냐. 그래서 i값 하나 적게해서 다시 루프 돌리는거자나
중복되면 i에서 1을 빼서 다시 돌린다고
코드만 쭉 써서 이게 뭐지 하지 말고 상태도를 그려봐
i=2일때 5가 나온다면 1을 빼서 돌리는데요.. 그럼 lotto[0]과 lotto[2]를 어떻게 중복인지 아닌지 비교하죠? lotto[1] == lotto[2]같지않으면 break인데 그럼 5,21,5,21,5,21, 이렇게 나올수도있는 부분 아닌가요; 초보라 이해가안대여;;