본문 바로가기

JAVA/Practice Q

Q5. 1부터 200까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오

// 방법01 - 짝수, 3의배수 제외해서 sum

System.out.println("============ 방법01 ===========");

sum = 0;

for (int x = 1; x <= 10; x++) {
    if (x % 2 != 0 && x % 3 != 0) {
        sum += x;
    }
}
System.out.println(sum);

// 이것도 똑같아. 좌우가 모두 참일때 출력되는건데,
// x = 7이라고 했을 때 좌항도 true, 우항도 true니까 출력되겠지?
// 만약에 ||로 쓰면 --> x = 6 일때 우항은 false지만 ,좌항은 true니까 전체가 참이되어 sum에 더하게 되는거지!!!!

 

 

// 방법02 - continue를 써봐도 될것같은데?

System.out.println("============ 방법02 ===========");

sum = 0;

for (int x = 1; x <= 10; x++) {

    if (x % 2 == 0 || x % 3 == 0) {
        continue;
    }
    sum += x;
}
System.out.println(sum);