반응형
수식 표기법의 종류
1. 전위 (prefix) 표기법 : 연산자를 먼저 표시하고 연산에 필요한 피연산자를 나중에 표시하는 방법.
2. 후위 (postfix) 표기법 : 피연산자를 먼저 표시하고 연산자를 나중에 표시하는 방법.
3. 중위 (infix) 표기법 : 연산자를 두 피연산자 사이에 표기하는 방법으로 가장 일반적으로 사용되는 표현 방법. 이항 연산자 표현에 적합하며 산술 연산, 논리 연산, 비교 연산 등에 주로 사용함.
수식 표기법에는 위처럼 3가지가 있습니다.
위의 정의/개념을 먼저 읽어보시고 아래의 예시 4가지를 통해 이해하시면 좋을 듯 하여 예시 문제를 추가해두었습니다.
예시 4가지
1. ( A + B ) * ( C - D )를 후위 표기법으로
① 연산을 진행하는 순서(우선순위)에 맞게 괄호로 묶어줍니다.
(( A + B ) * ( C - D ))
② '후위' 표기법이므로 연산자를 해당 괄호 바로 뒤(우측)으로 옮겨줍니다.
(( A B ) + ( C D ) - ) *
③ 이제 불필요한 괄호들을 모두 제거해줍니다.
A B + C D - *
괄호를 적었다가 지우는 이유는, 괄호는 연산 우선순위를 구분하고 표기법에 따라 구분하기 쉽게하기 위해서 적용하는 것입니다. 그리고 위 3가지 표기법에서는 일반적으로 괄호는 표기하지 않습니다.
2. 후위 표기법으로 표기된 A B + C D - * (위 1번 결과)를 다시 중위 표기법으로
① 후위 표기법의 순서인 '피연산자, 피연산자, 연산자'를 보기 쉽게 괄호로 묶어봅니다. 가장 쉬워보이는 A B + 와 C D - 를 묶어주고 마지막으로 * 를 묶었습니다.
A B + C D - *
( A B ) + ( C D - ) *
(( A B ) + ( C D - ) * )
② 위처럼 표현한 것을 이제 중위 표기법으로 표기하기 위해서 연산자를 피연산자 '사이'로 옮겨줍니다.
(( A + B ) * ( C - D ))
③ 다시 괄호를 제거해줍니다. 이때, 가장 끝에 있는 괄호만 제거해주어야 합니다. ( A + B )와 ( C - D )의 괄호까지 제거하지 않도록 주의해야 합니다. 이 때의 괄호는 연산 우선순위를 정해주는 것이므로 꼭 필요합니다. 이 괄호를 제거하게 되면 곱하기 연산자(*)가 B와 C를 먼저 계산하기 때문입니다.
- 아래의 4번 예시를 비교해서 보시면 좋을 듯 합니다.
( A + B ) * ( C - D )
3. ( A + B ) * ( C - D ) 를 전위 표기법으로
① 연산을 진행하는 순서(우선순위)에 맞게 괄호로 묶어줍니다.
(( A + B ) * ( C - D ))
② '전위' 표기법이므로 연산자를 해당 괄호 바로 앞(좌측)으로 옮겨줍니다.
* (+( A B ) - ( C D ))
③ 이제 불필요한 괄호들을 모두 제거해줍니다.
* + A B - C D
4. A + B * C - D 를 후위 표기법으로
① 연산 순서에 따라 괄호로 묶어봅니다. 아래에 적은 것처럼 연산 우선순위에 따라서 괄호를 하나하나 추가해주면 실수하지 않을 수 있습니다.
A + B * C - D
A + ( B * C ) - D
( A + ( B * C ) ) - D
( ( A + ( B * C ) ) - D )
② 이제 위 식을 후위 표기법으로 표현하기 위해서 연산자를 괄호 바로 뒤(오측)으로 옮겨줍니다. 이해를 돕기 위해서 연산 순서에 따라서 하나하나 옮겨서 적었습니다.
( ( A + ( B * C ) ) - D )
( ( A + ( B C ) * ) - D )
( ( A ( B C ) * ) + - D )
( ( A ( B C ) * ) + D ) -
③ 필요 없어 보이는 괄호를 전부다 제거해줍니다. 이 문제에서는 전부다 제거하면 아래의 식처럼 괄호가 전혀 필요없습니다.
A B C * + D -
괄호가 필요없는 이유는, 맨처음 곱하기 연산자(*)가 먼저 시행되므로 B와 C의 곱이 가장 먼저 수행되고, 그 다음으로 앞에 있는 더하기 연산자(+)가 시행되고, 마지막으로 빼기 연산자(-)가 시행되기 때문입니다. 처음엔 다소 어색하지만 한번 두번 보다보면 표기법에 따른 수식 이해가 되신다면 충분히 가능한 수식입니다.
반응형
LIST
'프로그램 > 컴퓨터일반' 카테고리의 다른 글
사무자동화산업기사 2013~2015 필기 기출문제 해설 무료 강의 (0) | 2018.09.14 |
---|---|
PNG ↔ JPG 변환 한방에 클리어하기 (0) | 2018.09.08 |
두목넷! 사무자동화산업기사 필기 무료인강 추천! (1) | 2018.09.04 |