보고서#4 (due 5/10)
제출 방법:
대학 학습플랫폼(Lms)에 명시된 기간내 제출해야 한다.
설정된 제출 기간 5/10이며, 기한이 지나면 제출할 수 없음에 유의하 기 바랍니다.
1
문제 (1)
사용자로부터 수식을 입력받고, 이를 후위 식으로 변환하고, 후위 식을 평가하여 그 결과 값을 출력하는 계산기 프로그램을 작성하 고 테스트하라.
계산기 특징
입력: 3*(2+8)/5
출력: 3*(2+8)/5 = 6
수식의 특징
다양한 괄호 포함 가능
공백 포함 가능
사칙 연산자 포함
2
3*(2+8)/5 = 6
문제 (2)
프로그램 작성 지침: 다음 함수들을 작성하고, 이용하라.
get_exp(exp) // 사용자로부터 식을 읽어들여서 반환
postfix(iexp, pexp) // 중위식 iexp를 후위식 pexp로 변환하여 반환
eval(pexp) // 후위식 pexp를 평가하고, 그 결과값을 반환
get_token(exp) // 호출시마다 수식 exp로부터 다음번째 토큰(피연 산자 또는 연산자)을 식별하여 반환
추가 사항 고려 (5점 추가)
피연산자 수치를 2자리 이상 허용
거듭제곱 연산자 ‘^’ 추가 (2^3 = 8)
GUI(graphical user interface) 기능 제공
오류 검사 기능 (잘못 표현된 수식에 대한 오류 메시지 출력)
3