|
력하시오 : ");
scanf("%s",expr);
strcat(expr," "); /* 수식에 eos 연결 (공백 삽입) */
printf("[중위표기] %s\n",expr);
postfix( );
printf("[후위표기] %s\n",expr);
printf("계산결과 = %d\n",eval( ));
}
void push(int *top, int item)
{
if(*top >= MAX_STACK_SIZE-1)
{
fprintf(stderr,"\n스택이
|
- 페이지 20페이지
- 가격 2,000원
- 등록일 2010.03.03
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
스택의 연산자들과 비교할 연산자의 우선순위
switch(x) {
case '+' : case '-' : return 4;
case '*' : case '/' : case '%' : return 3;
case '^' : return 2;
case '(' : return 0;
default : return 10;
}
}
void Postfix_cal::calPostfix() {
// 후위표기식을 계산하는 함수
Stack<float> temp;
flo
|
- 페이지 8페이지
- 가격 1,000원
- 등록일 2005.11.12
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
입력하세요 : `);
scanf(`%s`,in_exp);
/* 수식입력*/
error_check(in_exp);
/*입력 에러 체크*/
postfix(in_exp, post_exp);
printf(`
Postfix : %s`, post_exp);
/*후위법으로의 변환*/
result = calculate(post_exp);
printf(`
연산 결과 : %d`, result);
/*수식의 연산*/
}
|
- 페이지 4페이지
- 가격 1,000원
- 등록일 2003.11.24
- 파일종류 압축파일
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
POSTFIX:
[1, 2, 3, 4, -, *, +]
**************************************************
**************************************************
==================================================
# Tokens: <FRONT>[1, 2, 3, 4, -, *, +]<REAR>
# Stack: <BOTTOM>[]<TOP>
# Token [
|
- 페이지 1페이지
- 가격 800원
- 등록일 2006.02.28
- 파일종류 기타
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
Stack에 저장되어 있는 다른 연산자와 비교하여
우선순위가 큰 연산이 나올 때 까지 스택을 Pop()하여 Postfix 표현식에 저장한다.
③ 연산의 우선순위는 중괄호가 가장 크고, * % / 는 다음으로 크고(각각의 연산은 우선 순위 동일) + - 가 그 뒤다.
|
- 페이지 7페이지
- 가격 2,500원
- 등록일 2015.07.21
- 파일종류 압축파일
- 참고문헌 있음
- 최근 2주 판매 이력 없음
|