java 논리연산 헷갈려서 질문드립니다.

java 논리연산 헷갈려서 질문드립니다.

작성일 2023.05.08댓글 2건
    게시물 수정 , 삭제는 로그인 필요

문제가 "1부터 20까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오." 인데

2의 배수가 아닐 때 (또는) 3의 배수가 아닐 때 라고 해석해서
for(int i=1; i<=20; i++) {
if (i % 2 != 0 || i % 3 != 0)
sum += i;
}
이렇게 코드를 짰는데요.

왜 정답 코드는 
for(int i=1; i<=20; i++) {
if (i % 2 != 0 && i % 3 != 0)
sum += i;
}
이거 일까요?
.
.
.
이건 2와 3의 배수가 아닐 때 아닌가요?


#java 논리연산자 #java 논리연산자 우선순위

profile_image 익명 작성일 -

네, 맞습니다. 문제에서 요구하는 것은 2와 3의 배수가 아닌 수의 총합을 구하는 것입니다. 이를 위해서는 if문 안에 && 연산자를 사용해야 합니다. && 연산자는 두 조건이 모두 참일 때만 참을 반환합니다. 따라서 i % 2 != 0 && i % 3 != 0은 i가 2의 배수가 아니고 3의 배수도 아닐 때만 참을 반환합니다.

반면에 || 연산자는 두 조건 중 하나라도 참이면 참을 반환합니다. 따라서 i % 2 != 0 || i % 3 != 0은 i가 2의 배수가 아니거나 3의 배수가 아닐 때 참을 반환합니다. 이 경우에는 문제에서 요구하는 것과 다른 결과가 나올 수 있습니다.

profile_image 익명 작성일 -

|| : or 연산자 입니다.

&& : and 연산자 입니다.

2 또는 3의 배수가 아닌 수의 총합 은

2의 배수도 아니고 3의 배수도 아닌 수의 총합의 의미 입니다.

그러니까 and 연산자가 맞습니다.

Java 논리 연산 질문

... 연산 순서가 따로있나요? 설명좀 부탁드립니다. x=4,y=3,z=5 입니다. 안녕하세요. 1== x^y !=z 우선순위에 따라 1==x 가 수행되고, y!=z가 수행된후에, 두 결과에...

java에서 논리연산자의 우선순위에...

java를 공부중에 논리연산자에 관한 우선순위에 대한 개념이 헷갈려서 질문 드려요. 아래 코드 좀 봐주세요. int a = 10; int b = 20; int c = 30; boolean d = a < c || ++b > 30...

자바(JAVA) 질문드립니다

논리연산자 출력값을 0 또는 1로 출력하려면 어떻게 해야되나요? 예를들어 1< 2 를 True 가 아닌 1로 출력하고싶습니다 안녕하세요. 자바에서는 논리값을 true 나...

c언어 비트연산 간단 계산 질문, 바로...

... 풀이 어디가 틀렸는지 수정 부탁드립니다. 00000011 && ( 00000011 | 00000011) 이렇게 하면 and 논리 연산자를... 결국 논리값 true를 반환하는데 java라면 boolean 변수가...

활용한 Java 언어에 대한 질문입니다.

... 추천부탁드립니다!! "초보자를 위한 Java 200제"를 추천할께요. 제목이... =, <=, >=) 028 논리 연산자(||, &&, !) 029 삼항 연산자(? :) 030 단축 대입 연산자...

자바프로그래밍질문

... 와OR의 논리연산을 입력받아 결과를... 올려드립니다. Colored By Color Scripter™ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 import java....

어떤걸 공부를 해야할지 질문드립니다.

... 들으니 헷갈려서 질문드립니다. 안녕하세요.... 배워라 JAVA를 배워라고 합니다. 다른글 찾아보셔도 비슷할... 인터넷에서 말하는 논리가 C언어를 알아야 프로그램을 만들 수...

ic 칩 안에다가 프로그램을 넣는건가요???

... 이건지 헷갈려서 질문드립니다.. 그런것은 보통 MCU 라고 부릅니다. 모든 IC칩이 그런걱은 아닙니다. 논리회로... FF 때문에...), 연산까지 가능하게 만든것이 8051 같은...

ctrl + z 로 끝내는 것 질문이요

... 아직 헷갈려서 이렇게 질문하게 되었습니다. 우선 코드를 보여드리면 import java.util.... 코드 드립니다. 보시고 모르는건...