class CB 
{
public static void main(String[] args)
{
   int num =0;
   int count = 0;
   
   while(num++<100)
    {
      if(num%5!=0 || num%7!=0)
          continue;

      count++;
      System.out.println(num);
    }
   System.out.println("count : " +count);
}
}

여기서 제 생각엔 결과가

5
10
15
17
20
21
25
.
.
.

이렇게 나오는데 돌려보면 
35
70
2 이렇더라구여

||연산자는 둘중에 하나만 트루면 트루니까
num이 5가 되면 num=5 = true로 continue문을 빠져나오고 count++을 실행시킨다 생각햇는데

질문쓰다보니까 이해했어요

if(num%5!=0 || num%7!=0) 소스에선 이 상태가 트루니까
계속해서 continue를 실행
num이 5가 되서 false가 되도 num%7!=0으로 true가 되니까 || = true로 continue가 실행

결국엔 ||로 둘중 하나만 true라도가 아니라 둘다 false를 만들어야 하는거군요

정말 간단한거지만 이해가 안되는 소스 스스로 풀어냈을 때 너무 좋아요

혼자 막 &&로 해서 결과보고 ==으로도 해보고 그랬거든요

|| 둘중 하나라도 true 고정관념땜에 한시간정도 해맨것 같네요

프갤 형아들 화이팅