[C언어]후위연산자 및 계산(중위,후위,스택)
- 최초 등록일
- 2006.10.29
- 최종 저작일
- 2006.06
- C언어
- 가격 1,000원
소개글
중위 에서 후위로 변경하고 나서 계산까지 하는 코드로
기본 사칙연산과 ( ) 연산이 되며, 결과값이 100이 넘어가면 오류가
있습니다. 간단한 연산은 잘 되는듯;;
중간중간 마다 레포트 제출용으로는 허접티가 많이나서 괜찮을꺼 같네요.
컴파일 실행환경
cpp// 비주얼 C++ 6.0 및 gcc 에서도 됩니다.
본문내용
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define MAX 20
int S_operator[MAX];
char S_calculation[MAX];
char poly[MAX];
int top = -1;
int top1 = -1;
void div(); //피연산자와 연산자를 구분
void push(char); //연산자를 스택에 삽입하면서 연산자를 비교
void pop(); //연산자 우선순위가 높으면 삭제 하면서 출력
void push_cal(char);
void pop_cal(char);
int PIS(char); //스택에서의 연산자 우선순위 함수
int PIE(char); //연산에서의 연산자 우선순위 함수
void main()
{
printf("Be positively necessary Question mark of polynomial end\n");
printf("Input polynomial---> ");
gets(poly);
div();
printf("\n%d" , S_calculation[0]);
}
void div()
{
char a, b;
int len, i;
len = strlen(poly); //문자열의 길이를 계산
for(i = 0 ; i <= len ; i++)
{
if(poly[i] >= `0` && poly[i] <= `9`) // 0부터 9까지 피연산자면 바로 출력
참고 자료
없음