답변 1
0
안녕하세요!
해당 코드는 2의 배수이거나 3의 배수인 경우에는 count를 올려야 하고,
5의 배수이거나 6의 배수인 경우에는 count를 하지 않아야 합니다.
그렇기 때문에 5의 배수이거나 (||) 6의 배수일 때는 둘 중에 하나가 true가 될 것이고,
우리의 목표는 둘 중에 하나라도 맞으면 전체를 false를 만드는 것이었습니다.
그래서 해당 true를 앞에서 !로 false로 만들어주는 것입니다.
예제2는 5의 배수도 함께 빼야하는 것이기 때문에 올바른 코드입니다.
if ((i % 2 == 0 || i % 3 == 0) && !(i % 5 == 0 || i % 6 == 0)) {
숫자 i
가 조건을 만족하는지 검사합니다.
i % 2 == 0 || i % 3 == 0
: i
가 2 또는 3으로 나누어 떨어지는지 확인합니다.
!(i % 5 == 0 || i % 6 == 0)
: i
가 5 또는 6으로 나누어 떨어지지 않는지 확인합니다.
전체 조건은 i
가 2 또는 3의 배수이면서 동시에 5 또는 6의 배수가 아니어야 합니다.