10 = 1, 0
11 = 1, 1
12 = 1, 2
13 = 1, 3
14 = 1, 4
15 = 1, 5

 

이건 잘 알겠는데 문제가 뭐냐면...변수 i로만 하면 무한루프를 돌아버린다 이유를 모르겠다.

일단은 중첩반복문에 같은 변수를 사용하지말자...

 

->알아냈다 ㅎㅎ, 난 진짜 멍청이다. 당연히 while문에서  i가 나올때 0이되고 for문에 의해서 ++이되니깐 1이된다 그럼 다시 while문에 i = 11이 아니라 1이 들어가는 거다 윽 ㅠㅠ

 

 

다른 사람이 짠 코드

 

int box[] = new int[10];//각 숫자를 저장할 공간

for (int i = 1; i <= 1000; i++) { box[i%10]++;//일의 자리

if (i>=10) box[i/10%10]++;//십의 자리

if (i>=100) box[i/100%10]++;//백의 자리

if (i==1000) box[i/1000%10]++;//천의 자리

} System.out.println(Arrays.toString(box));

+ Recent posts