먼저 1부터 100까지 순서대로 출력하는 코드를 짠다.
그 후 만약 일의 자리가 3의 배수이면 X를, 3의 배수가 아니면 그냥 숫자를 출력하는 조건문을 만들어준다.
하지만 이 문장을 실행해보면 10,20,30... 10의 배수까지도 X로 출력되는 것을 볼 수 있다. 이것은 (i%10)%3==0
즉, i를 10으로 나눈 나머지를 3으로 나누었을 때 나누어 떨어지는 수가 있을 때 X를 출력하라는 것인데,
10의 배수는 10으로 나누었을 때 나머지가 0이 되고, 0%3은 당연히 0이 되므로 10의 배수들도 X로 출력되는 것이다.
이 문제를 해결하기 위해서는 i가 10의 배수일 때 출력할 것을 조건문으로 만들어 주어야 한다.
기존의 코드 앞쪽에 i가 10의 배수이면 그냥 i를 출력하라는 코드를 추가했다. 하지만 이렇게 코드를 짠다면
이런식으로 10의 배수에는 X와 숫자가 모두 출력되게 된다.
이럴 때는, 두 번째 if문을 else if로 고쳐주면 된다.
이제 정상적으로 나오는 것을 확인할 수 있다.
10단위로 줄바꿈을 한다는 조건을 만족시키기 위해 첫 번째 if문에 줄바꿈을 하라는 출력문을 추가해준다.
프로그램 완성이다.