책 내용 질문하기
51p 2번 문제 해설 질문입니다.
도서
2026 시나공 프로그래밍기능사 필기 기본서
페이지
51
조회수
11
작성일
2026-07-12
작성자
이*훈
첨부파일

문제2의 연산에 대해

연산을 진행하는 순서가 (1) --a, (2) c--, (3) ++a라고 해설되어 있는데


or 및 and의 연산공식을 따른다면

좌항 먼저 계산 후, 좌항의 결과가 T/F인지에 따라 우항이 무시되지 않습니까?


해설의 의도가 앞선 연산자 우선순위의 '결합 규칙'을 지킨다는 것 같은데

그럼에도 왜 증감 연산자가 식 전체 기준 우측부터 계산되는지에 대한 명확한 이해가 어렵습니다.


결합규칙이란

우선순위가 같은 연산자가 연속되어 있을 때 (이항의 경우에는 1+1+1, 단항의 경우엔 !!0처럼)

어느 연산자부터 먼저 계산되는가에 관한 규칙으로 알고 있는데


문제의 ++a, c--, --a의 연산 순서에 관해서는

결합규칙에 의거해 우->좌가 아닌

식 계산 방향에 따른 (1)++a, (2) c--, (3) --a가 올바른 계산 순서라고 생각합니다.


JAVA의 문법에는 문외한이라, 혹 잘못 알고 있는게 아닌가 싶어 질문 남깁니다.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.