연산자 우선순위
이전 게시글에서는 단순하게 식을 코드로 적기만 하면 답을 맞출 수 있는 코드였습니다.
하지만 시각을 더 넓혀서 보면 이 문제는 결국 연산자 운선순위에 대해 더욱 깊게 스스로 찾아갈 수 있는 발판을 주는 문제라고 생각합니다.
연산자 우선순위의 예시는 사칙연산과 같습니다. 하지만 더 깊게 알다보면 iterator, slicing ,axis 표현식이 가장 우선이라는 것을 알 수 있으며 아직 그 수준까지는 백준 풀이 있어서 필요 없기 때문에 꼭 필요한 기초 연산자 우선순위를 소개하겠습니다.
다음은 연산자 우선순위의 중요성을 알려주는 예시 입니다.
# 연산자 우선순위를 고려하지 않은 경우
result1 = 5 + 3 * 2 # 곱셈이 덧셈보다 우선순위가 높음
print(result1) # 출력: 11 (3 * 2 = 6, 5 + 6 = 11)
# 연산자 우선순위를 고려한 경우
result2 = (5 + 3) * 2 # 괄호를 사용하여 덧셈을 먼저 계산
print(result2) # 출력: 16 (5 + 3 = 8, 8 * 2 = 16)
원하지 않는 결과들이 나올 수 있기 때문입니다.
위 그림을 외우지 않고 당연시 알아야 합니다. 다음에는 아마 비트 시프트에 대해 모르는 분들을 위해서 2진수, 10진수 ,16진수 부터 시작해서 비트 시프트에 대해 알아보겠습니다
'BaekJoon Reivew' 카테고리의 다른 글
단계별로 풀어보기 백준_11382번 (1) | 2025.02.03 |
---|---|
단계별로 풀어보기 백준_2588번 (0) | 2025.02.03 |
단계별로 풀어보기 백준_10430번 (0) | 2025.02.02 |
단계별로 풀어보기 백준_18108 (0) | 2025.02.02 |
단계별로 풀어보기 백준_10926번 (1) | 2025.02.01 |