[자료구조] post&prefix

등록일 2003.05.28 한글 (hwp) | 7페이지 | 가격 900원

소개글

자료구조 수업시간에 했던 프로젝트입니다.
일반책에는 postfix만 나와있는데 prefix기능을 막강 구현했습니다.
일반자료구조에 나와있는 postfix에 prefix기능을 첨부한 프로그램 스택과 큐를 이용하여 완벽한 프로그램 구현

precedence get_token(char *symbol, int *n){
*symbol = expr[(*n)++];

/* error code : (a-z)이외의 수를 잡아낸다. */
if(*symbol=='(' || *symbol==')' || *symbol=='+' || *symbol=='-' || *symbol=='/' || *symbol=='*' \
|| *symbol=='%' || ('a'<=*symbol && *symbol<='z') || ('0'<=*symbol && *symbol<='9') || *symbol=='\0');

else{
printf("\nillegal String input, reInput please!\n");
exit(1);
}

switch(*symbol){
case '(' : return lparen;
case ')' : return rparen;
case '+' : return plus;
case '-' : return minus;
case '/' : return divide;
case '*' : return times;
case '%' : return mode;
case '\0' : return eos;
default : return operand;
}
}

목차

프로그램 설명
source code

본문내용

▶ 프로그램 설명
이 프로그램은 infix수식을 입력받아서 만약 모든 operand가 숫자이면 연산을 행하고 아니면 postfix와 prefix 수식을 출력하는 것이다. 간과하지 말아야 할 점은 에러코드다. 입력 operand중 알파벳 (a∼z), 숫자 0∼9999 값이다. 이 범위를 벗어나면 에러메시지를 출력케 하였다. 사용된 stack는 우선 infix를 postfix수식과 prefix수식으로 고쳐주는 stack 1개와 고쳐진 수식을 계산(eval)하는 stack_1 두 개를 사용하였다. 데이터 입력방식은 expr이라는 문자열을 입력받아 operand와 operator을 구분하여 2차원배열 expr_1에 저장하였다.
다음은 123+456이 입력됐을 때 expr_1의 상태를 보여준다.

참고 자료

자료구조
      최근 구매한 회원 학교정보 보기
      1. 최근 2주간 다운받은 회원수와 학교정보이며
         구매한 본인의 구매정보도 함께 표시됩니다.
      2. 매시 정각마다 업데이트 됩니다. (02:00 ~ 21:00)
      3. 구매자의 학교정보가 없는 경우 기타로 표시됩니다.
      최근 본 자료더보기
      추천도서